django应用程序是否可以知道用户的Windows域名?

时间:2009-03-25 09:17:43

标签: django login dns

我需要在公司内部网络中创建一个简单的知识库类型的应用程序。为了让最终用户使用它简单快捷,我想跳过所有登录部分(因为它只对我们信任的内部网络用户可见)并自动从用户中提取域用户名并放入它进入数据库(不希望人们浪费时间手动输入他们的名字;他们使用应用程序浪费的时间越长,他们实际使用它的可能性就越大)。

那么,是否可以在服务器上获取此类信息? Windows浏览器是否在我可以信任的某些标题中发送它?

1 个答案:

答案 0 :(得分:2)

如果您使用的是IIS和Internet Explorer,则可以启用“集成Windows身份验证”(NTLM身份验证)。这会导致IE使用您的域基础结构自动验证用户身份。自动登录后,您可以使用环境变量LOGON_USER访问用户名。为此目的,还有一个Apache(mod_ntlm)模块,虽然我不知道它的状态。

也许你可以尝试自己实现NTLM authentication,但这肯定会有很多工作。

除此之外,似乎没有办法,因为没有合理的浏览器会发送用户名...


编辑:似乎python-win32 extensionspython-ntlm可以解决这个问题,请查看this thread。但是你仍然需要将它集成到Django中。