如何使用Windows身份验证在IIS服务器上的Flask应用中获取当前用户的用户名?

时间:2016-09-21 23:21:18

标签: python iis flask windows-authentication

我在Windows 10的IIS服务器上运行了Flask应用程序(Python 2.7)。服务器配置为使用Windows身份验证。我正在使用HttpPlatformHandler来执行Python代码。

我已经验证身份验证工作正常,并且能够看到Kerberos" Negotiate" auth标头。但是,我找不到访问请求页面的用户的用户名的方法。

我已尝试打印整个请求标头和请求环境,但它不在那里。这个post似乎与我的问题有关,但其中的代码不正确。 如何将请求者的Windows用户名传递给我的python代码?

我想访问用户的用户名,以便限制用户访问页面并从基于用户的页面中删除某些元素。

2 个答案:

答案 0 :(得分:3)

事实证明,this post上的答案也适用于我的配置。我只需下载ISAPI_Rewrite 3,将文本复制并粘贴到httpd.conf中,并通过在我的Python代码中调用request.headers.get('X-Remote-User')来访问用户名。

答案 1 :(得分:0)

如果用户已登录,则可以使用flask_login.current_user.name获取信息。