Legrandin / PyAuthenNTLM2

PyAuthenNTLM2 is an authentication module for Apache. It validates a user by means of the NTLM protocol and a separate Domain Controller (or Active Directory server).
Other
57 stars 42 forks source link

Implementation for mod_wsgi #10

Open rhelms opened 12 years ago

rhelms commented 12 years ago

Is there any chance of doing a version that uses mod_wsgi rather than mod_python.

mod_python has been depreciated for quite sometime [http://attic.apache.org/projects/quetzalcoatl.html], and it would be good to be able to use this with Python 2.7.

Legrandin commented 11 years ago

Support for mod_wsgi is definitely something I would like to add in the near future. I looked into that a while ago but I could not find all hooks needed for handling the connection states in the same way mod_python allows. I may not have looked long enough though.

syntruth commented 11 years ago

I hope this happens soon. Just blew a day and a half tracking down a PATH_INFO bug in my other code only to find out that it's mod_python and its handling of SCRIPT_NAME and PATH_INFO that it gets from Apache. (Those are "correct" for old-school usages, but modern apps break like mine did.)

Basically, the problem is with a given URI: /user/username, mod_python returns SCRIPT_NAME as '/user' and PATH_INFO as '/username' when the app is expecting PATH_INFO to be the URI. That is to say, the first path segment of the URI is always removed, assumed to be the SCRIPT_NAME, which made sense 5+ years ago.

Since PyAuthenNTLM is the ONLY Apache mod that I've found that works for NTLMv2 and I am required to use NTLM on our internal web-apps, this mod is a life saver, but I'm gonna have to implement work-around code for each app until this is able to work with mod_wsgi. Don't take this as a huge complaint, though. I'm glad you wrote this more than I can say. :D Only venting a bit of the frustration over the last couple work days thinking either Apache or my code was broken.

See this for the issue: http://www.modpython.org/pipermail/mod_python/2009-July/026290.html