How do I get the username of the current user in a Flask app on an IIS server using Windows Authentication?
<p>I have a Flask app (Python 2.7) running on an IIS server in Windows 10. The server is configured to use Windows Authentication. I am using an HttpPlatformHandler in order to execute the Python code.  </p>

<p>I have verified that the authentication is working and am able to see the Kerberos "Negotiate" auth header. However, I cannot find a way to access the username of the user who requested the page. </p>

<p>I have tried printing the entire request header and request environment and it is not there. This <a href="http://stackoverflow.com/questions/31412852/flask-python-decoding-username-ntlm-or-negotiate-authentication-header">post</a> seems to be about my issue but the code in it is not correct. <strong>What can I do to pass the Windows username of the requester to my python code?</strong></p>

<p>I would like to access the username of the user in order to both restrict page access by user and remove certain elements from pages based on user. </p>

<p>It turns out that the answer on <a href="http://stackoverflow.com/questions/33347412/rails-app-remote-user-attribute-in-iis-8-5-with-windows-authentication">this post</a> works for my configuration as well. I simply downloaded ISAPI_Rewrite 3, copy and pasted the text into httpd.conf, and was able to access the name of the user by calling <code>request.headers.get('X-Remote-User')</code> in my Python code. </p>

python iis flask windows-authentication