如何在django驱动的站点中使用2种不同的身份验证?

时间:2010-10-11 05:43:59

标签: django django-admin django-authentication

我目前管理一个用django编码的网站,它有2个标准区域 - 前端和后台(使用django的管理界面构建)。

最近,客户声称他想要2个不同的身份验证 - 一个用于前端用户,另一个用于管理后台的人员。

到目前为止,他们都使用了标准django.contrib.auth身份验证。

我知道我可以让客户只使用不同的用户(也许,不允许“后台”用户登录前端部分)但是 - 他们想要更多更改,例如:管理员端的会话不活动缩短为几分钟(在前端 - 保持永远)。

是否可以定义django网站的部分以使用不同的身份验证?有不同的饼干等?

或者我应该使用不同的域用于后台,比如在site.com上有一个前端和admin.site.com上的管理员,那么它们都运行为2个不同的应用程序,使用不同的cookie设置等?

1 个答案:

答案 0 :(得分:2)

Django提供后端身份验证接口:http://docs.djangoproject.com/en/dev/topics/auth/#authentication-backends

在这里,您可以指定用户的身份验证方式。您可以使用本地login()方法对后台用户进行身份验证,并根据需要实现前端所需的任何其他操作。无论哪种方式,这都是您定义该功能的地方。