在没有弹出的情况下在Django中使用Apache身份验证

问题描述:

我正在使用Apache为Django的用户进行身份验证,但是我想这样做时没有Apache在其基本配置中使用的弹出窗体。在没有弹出的情况下在Django中使用Apache身份验证

如何在仍然使用Apache进行身份验证的情况下在页面中嵌入登录表单?

也就是说,我想要一个页面显示“请登录”并提供一个表单询问用户名和密码,并将此信息传递给Apache进行身份验证。 (当然,我会通过SSL连接执行此操作。)

请参见:

http://www.peej.co.uk/articles/http-auth-with-html-forms.html

这说明了如何使用一些JavaScript魔术呈现自己的表单HTTP基本验证。如果您使用Google进行足够的搜索,您会发现其他例子。

或者看mod_auth_tkt在:

http://www.openfusion.com.au/labs/mod_auth_tkt/

然而,它使用了自定义Apache模块做了一些魔法。

+0

谢谢。我不确定从Django的身份验证转移到Apache是​​否值得这么麻烦。 – chernevik 2010-05-21 15:50:30

也许您可以使用mod_pythonmod_wsgi访问控制在django中执行此操作。

对于mod_wsgi身份验证处理程序,django trac上有一个open ticket

更多resources关于这个问题。