通过外部provid进行Django身份验证

2024-05-16 19:03:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习python和django,我建立了一个相当不错的网站来管理数据库和搜索页面。我现在有点困惑的新要求是,身份验证应该通过外部提供者来完成(还不知道,但可能是LDAP或Kerberos票证)。在

我的想法是通过这个服务对用户进行身份验证,如果成功的话,就用syncdb将用户添加到我的django创建的数据库中(在那里我有权限和组),然后绕过这个用户作为身份验证,使他们能够在站点中执行操作。在

听起来合理吗?对于这种身份验证,是否有“可接受”的方法?我不确定是否需要编写自己的身份验证视图。在

谢谢。在


Tags: django方法用户身份验证视图数据库权限站点
1条回答
网友
1楼 · 发布于 2024-05-16 19:03:03

这听起来很合理。使用django这样的第三方用户认证方式有几种:使用django第三方用户认证。另一种方法是编写您自己的自定义后端,使用OAuth2协议通过第三方应用程序(例如Twitter)对用户进行身份验证,并将其保存/授权为应用程序的Django用户。这听起来可能很难,但很容易。我编写了一个示例Django应用程序来演示此功能,并提供了自定义后端身份验证的教程。本应用程序/教程使用Django 1.5:djangauth.thecloutenproject.com/在

网友
2楼 · 发布于 2024-05-16 19:03:03

Django支持连接其他身份验证后端。在

我相信,如果您要通过诸如LDAP之类的公共接口进行身份验证,那么您必须编写自己的身份验证后端或使用第三方后端。在

文档解释了如何在这里编写身份验证后端:https://docs.djangoproject.com/en/1.5/topics/auth/customizing/

如果您打算使用LDAP,我建议您看看django auth LDAP(https://pypi.python.org/pypi/django-auth-ldap)。在

相关问题 更多 >