python – Django使用登录的Windows域用户进行身份验证
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – Django使用登录的Windows域用户进行身份验证,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1556字,纯文字阅读大概需要3分钟。
内容图文
![python – Django使用登录的Windows域用户进行身份验证](/upload/InfoBanner/zyjiaocheng/951/e3c9b843a513422a8133fe7a13ce6a18.jpg)
我想使用当前登录到计算机的Windows域帐户(活动目录)来验证django Web用户.如何在不提示用户再次输入用户名/密码的情况下执行此操作,因为他已使用域帐户登录到他的系统.我正在使用django和python 2.7.我按照link进行了操作,但dint了解如何在我的视图中使用它.请帮我.
谢谢
解决方法:
当Web服务器(此处为IIS托管的django)负责身份验证时,它通常会设置REMOTE_USER环境变量以在底层应用程序中使用.在Django中,REMOTE_USER在request.META属性中可用.可以使用django.contrib.auth中的RemoteUserMiddleware和RemoteUserBackend类将Django配置为使用REMOTE_USER值.
配置
您必须在django.contrib.auth.middleware.AuthenticationMiddleware之后将django.contrib.auth.middleware.RemoteUserMiddleware添加到MIDDLEWARE_CLASSES设置:
MIDDLEWARE_CLASSES = (
...
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.auth.middleware.RemoteUserMiddleware',
...
)
接下来,您必须在AUTHENTICATION_BACKENDS设置中将ModelBackend替换为RemoteUserBackend:
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.RemoteUserBackend',
)
通过此设置,RemoteUserMiddleware将检测request.META [‘REMOTE_USER’]中的用户名,并将使用RemoteUserBackend对该用户进行身份验证和自动登录.
(更多信息https://docs.djangoproject.com/en/1.5/howto/auth-remote-user/)
要在请求中获取REMOTE_USER,请执行以下IIS设置:
1.在“控制面板”中,单击“程序和功能”,然后单击“打开或关闭Windows功能”.
2.展开Internet信息服务,展开万维网服务,展开安全性,然后选择Windows身份验证.
IIS管理器
>打开IIS管理器并导航到要管理的级别.
>在“功能视图”中,双击“身份验证”.
>在“身份验证”页面上,选择Windows身份验证.
>在“操作”窗格中,单击“启用”以使用Windows身份验证.
(More info)
内容总结
以上是互联网集市为您收集整理的python – Django使用登录的Windows域用户进行身份验证全部内容,希望文章能够帮你解决python – Django使用登录的Windows域用户进行身份验证所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。