2011-04-26 76 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