2011-04-26 65 views
5

我正在尋找一種實施SSO(單點登錄)應用程序的解決方案,此應用程序需要使用python並在GAE(Google App Engine)上運行。由於Google Apps基於SAML提供單點登錄,因此需要使用SAML協議來實施此應用程序。在GAE上編寫SSO應用程序

在我來說,我不能使用的OpenID,因爲允許從外部ID存取權限,我需要我的客戶可以在我的應用程序登錄,只有谷歌Apps帳戶,那麼他們的帳戶將是ID。登錄後,他們可以訪問我公司提供的任何應用程序。

我看到了Gheimdall,但我無法完全安裝它進行測試,這個應用程序對於概念驗證項目來說非常複雜,最後一個版本是在2008年,他們的文檔很差。

任何人都知道一個解決方案或提示我的問題呢?

+0

你就不能使用的OpenID或谷歌帳戶登入您的應用程序?你需要提供更多的細節。 – 2011-04-27 03:36:40

+0

@Nick:沒有,因爲我需要實現這個使用[SAML](http://www.pingidentity.com/resource-center/SAML-Tutorials-and-Resources.cfm) – Diego 2011-04-27 13:44:04

+0

這是否需要是一個Python的解決方案在您的應用程序中本地運行,還是您願意考慮按需解決方案來支持您的SAML 2.0要求? --Ian – Ian 2011-04-28 14:35:59

回答

2

看一看PySAML2,應該使用App Engine:

PySAML2是純Python 實施SAML2服務提供商 和一些也延長了 身份提供商。原來寫 在WSGI環境中工作,有 的擴展,使您可以使用它 與其他框架。

+0

PySAML是C庫中的一個庫,Google App Engine不支持該庫。 – Diego 2011-04-27 21:20:19

+0

@Diego:啊,你說得對。大多數現有的Python SAML庫都需要C擴展;然而,我已經做了更多的研究,發現了一個SAML2實現,它似乎是用** pure python **編寫的;看到我修改後的答案。 – Gregg 2011-04-27 23:34:18

+1

你從哪裏得到你的答案描述?因爲我下載了這個項目,在README文件中我發現這個: 「你也需要xmlsec,你可以在這裏找到:http://www.aleksey.com/xmlsec/」 還有一些文檔: http://packages.python.org/pysaml2/html/install.html xmlsec是在C中的庫,並且pysaml2需要,所以pysaml2不能解決我的問題=/ – Diego 2011-04-28 01:54:47