基本上我正在为Python / Tornado
寻找https://github.com/einfallstoll/express-ntlm的替代方案我可以将node.js添加为应用程序中的另一个层,但我不想
让客户端的Windows用户访问网址的方法
这将用于仅在公司网络上提供的网络应用
答案 0 :(得分:2)
在IIS上使用IIS处理Windows身份验证进行部署时,可以从环境变量中检索远程用户。假设您已启用并配置了Windows authentication。
然后你可以简单地从环境中获取变量。正如Microsoft documentation适用的环境变量中所述,变量包括REMOTE_USER
,AUTH_USER
,LOGON_USER
和UNMAPPED_REMOTE_USER
。检查文档以了解具体用法。
在Python中,可以使用os.environ
检索这些内容
使用运行简单脚本的IIS 7.5进行测试,并且只需os.environ.get("REMOTE_USER")
如果您使用代理,则环境变量可能会有所不同,例如'HTTP_X_PROXY_REMOTE_USER'
。如果是这样的话,服务器也可能需要配置为传递这些环境变量。
答案 1 :(得分:1)
express-ntlm
基于一个完全相同的Apache Python项目:https://github.com/Legrandin/PyAuthenNTLM2/