使用用户名/密码在url中的Apache基本身份验证

使用用户名/密码在url中的Apache基本身份验证

问题描述:

我正在使用PHP将用户重定向到受Apache基本身份验证保护的目录。我使用以下网址格式自动将用户登录到此目录中:使用用户名/密码在url中的Apache基本身份验证

http://username:[email protected]/protected

这适用于所有浏览器,除了IE浏览器,它不再支持在URL中传递用户名/密码。

是否有另一种方式让Web应用程序自动将用户登录到受Apache基本身份验证保护的目录中?

更新:如果可能的话,请忽略使用Apache基本身份验证和HTTP除非你能提供一种解决这个问题......我即如何能自动注销用户进入受保护的一个可行的替代所固有的缺点目录。这是针对已经使用apache basic auth的客户端。谢谢:)

+1

如果安全性问题,您绝对不能将基本验证与HTTP等未加密协议混合使用。用户名和密码通过网络base64编码发送,每个可以嗅探网络的人都可以将其转换为纯文本。如果您必须使用基本身份验证,则只能通过HTTPS使用它。 – Demento 2011-04-07 18:52:49

+0

@Mark Brown:你有没有找到解决这个问题的办法? – Monic 2015-07-15 13:24:31

Microsoft在其知识库中包含一个detailed explanation of this issue,其中包括不同的解决方法。这应该让你开始一个好的开始。

请也看看我的评论关于混合HTTP与基本身份验证。如果安全问题,您通常不希望这样做。始终使用HTTPS,因为基本身份验证未加密。

+0

嗨。感谢您的链接。我已经看过那篇文章。这种情况下没有任何解决方法可行。客户端实际上并没有点击一个链接(重定向通过php发生),我没有使用WinInet,这不适用于状态管理。 – 2011-04-07 19:06:35