我需要制作一个简单的知识库类型应用程序以在公司内部网络中使用。为了使最终用户使用起来简单快捷,我想部分跳过所有登录(因为它只对我们信任的内部网络用户可见),并自动从用户中提取域用户名并放入它进入数据库(不希望人们浪费时间手动输入他们的名字;他们使用该应用程序浪费的时间越少,他们实际使用它的机会就越高)。
那么,是否可以在服务器上获取此类信息? Windows 浏览器是否会在一些我可以信任的标头中发送它?
如果您使用 IIS 和 Internet Explorer,则可以打开“集成 Windows 身份验证”(NTLM 身份验证)。这会导致 IE 使用您的域基础结构自动对用户进行身份验证。自动登录后,可以使用环境变量访问用户名LOGON_USER
。 Apache 还有一个用于此目的的模块(mod_ntlm),尽管我不知道它的状态。
也许你可以尝试实施NTLM认证 http://davenport.sourceforge.net/ntlm.html你自己,但这肯定会需要很多工作。
除此之外,似乎没有办法,因为没有合理的浏览器会发送用户名......
EDIT:看起来python-win32 扩展 http://python.net/crew/mhammond/win32/Downloads.html or python-ntlm http://code.google.com/p/python-ntlm/可以做到这一点,看看这个线程 http://code.google.com/p/python-ntlm/issues/detail?id=4。不过,您仍然需要将其集成到 Django 中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)