我的任务是使用 Django 创建一个网站。它将成为现有 Plone 站点的“姐妹”站点。相同的 Apache 实例将成为允许我使用相同域名的站点的前端。
但是,所有者希望用户能够登录到其中一个并且仍然可以登录到另一个。
如何实现?
谢谢!:)
我的任务是使用 Django 创建一个网站。它将成为现有 Plone 站点的“姐妹”站点。相同的 Apache 实例将成为允许我使用相同域名的站点的前端。
但是,所有者希望用户能够登录到其中一个并且仍然可以登录到另一个。
如何实现?
谢谢!:)
直觉反应是使用 OAuth - 请参阅如何在不同站点之间构建安全的 Django 单点登录?
或者,您是否尝试过这个单点登录应用程序 - http://code.google.com/p/django-sso/?
还可以在http://docs.djangoproject.com/en/dev/topics/auth/#writing-an-authentication-backend上查看 Django 的文档,了解如何实现自己的授权后端
我的直觉反应是使用 LDAP。Plone 的 LDAP 支持有点粗糙,但它可以工作。Django 是否有同等或更好的 LDAP 支持?如果是这样,那么我认为您已经开始跑步了……</p>
您可以将身份验证移至 SQLPASPlugin,并为 Django 和 Plone 使用同一个表。
这里有两个问题,共享登录和单点登录。基于 LDAP 或 SQL 的登录将为您提供第一个,但您仍然必须在两个站点中输入您的密码。您需要单点登录才能跨 bpth 保持登录状态。
plone.session 3.0(Plone 4 的一部分,但如果您还在构建中添加 hashlib,则与 Plone 3.3 兼容)与 Apache mod_auth_tkt单点登录兼容。将 Django 配置为使用 Apache 身份验证应该足够简单,或者如果您没有运行 Apache,请将 plone.session 的 tktauth.py 包装在一个简单的 wsgi 包装器中。使用 Plone 站点的 require_login 脚本作为 TKTAuthLoginURL。