需要登录两个不同的网站

时间:2010-05-12 19:24:02

标签: django authentication plone

我的任务是使用Django创建一个网站。它将成为现有Plone网站的“姐妹”网站。同一个Apache实例将成为网站的前端,允许我使用相同的域名。

但是,所有者希望用户能够登录其中一个并仍然登录到另一个用户。

如何实现这一目标?

谢谢! :)

5 个答案:

答案 0 :(得分:1)

直觉反应是使用OAuth - 请参阅How to build a secure Django single signon between different sites?

或者,您是否尝试过此单点登录应用 - http://code.google.com/p/django-sso/

答案 1 :(得分:0)

另请参阅Django关于如何在http://docs.djangoproject.com/en/dev/topics/auth/#writing-an-authentication-backend实现自己的授权后端的文档

答案 2 :(得分:0)

我的直觉反应是使用LDAP。 Plone的LDAP支持有点粗糙,但它有效。 Django是否具有相同或更好的LDAP支持?如果是这样,那么我认为你已经开始运行......

答案 3 :(得分:0)

您可以将身份验证移动到SQLPASPlugin,并为Django和Plone使用相同的表。

答案 4 :(得分:0)

这里有两个问题,共享登录和单点登录。基于LDAP或SQL的登录将为您提供第一个,但您仍需要在两个站点中输入密码。您需要单点登录才能在bpth中保持登录状态。

plone.session 3.0(Plone 4的一部分,但如果您还将hashlib添加到您的buildout中,则与Plone 3.3兼容)与Apache mod_auth_tkt单点登录兼容。它应该很简单,配置Django使用Apache身份验证,或者如果你没有运行Apache,请将plone.session的tktauth.py包装在一个简单的wsgi包装器中。使用Plone站点的require_login脚本作为TKTAuthLoginURL。