无法使用auth_kerb_module在apache 2.2中取消设置WWW-Authenticate标头

时间:2018-01-23 08:20:36

标签: apache header kerberos

我有一个apache 2.2,它使用auth_kerb_module来启用AuthType Kerberos。 并非所有用户都使用启用了NTLM的浏览器。这就是为什么我们必须将 KrbMethodK5Passwd 设置为on(例如,它在firefox的弹出窗口中询问用户和密码)。 另一方面,这个站点通过webdav发布文档,而microsoft office使用ADAL进行身份验证(我们需要编辑从office到webdav这个webdav存储库的文档)。因为我们没有Oauth,所以当请求的Authorization标头设置为Bearer时,我们需要将响应头WWW-Authenticate设置为Negotiate 。 这是我们使用的指令

SetEnvIf Authorization "Bearer" ISADAL
Header always set WWW-Authenticate Negotiate env=ISADAL

该指令似乎有效但Bache返回两个标题

WWW-Authenticate:  Negotiate Basic realm="
WWW-Authenticate:  Negotiate 

如果我们将KrbMethodK5Passwd设置为关闭,WWW-Authenticate: Negotiate Basic realm="消失。

我认为在KrbMethodK5Passwd指令适用之后Negotiate Basic realm="设置header set。你认为这可能是问题吗?

KrbMethodK5Passwd on适用于只有一个WWW-Authenticate标头后,有没有办法编辑标题?

谢谢!!!

0 个答案:

没有答案