多个请求经公司代理使用 Kerberos 都正常。唯独一个请求弹出密码框。在更换 keytab 之前,先确认这个请求选中了哪条认证策略。

网关可以通过策略选择认证域和支持的认证方案。来自同一浏览器、到达同一代理的两个事务,未必会得到相同的认证要求。

看下面这个假设的追踪记录:

事务第一条匹配策略可用认证
主文档受管浏览规则Negotiate
来自另一主机的脚本更早的目标例外Basic 或 NTLM

第一次成功交换只能说明某条被选中的路径可用,并不能说明第二个事务也走了那条路径。凭据可能有效,而选择其认证机制的规则却是错的。

检查被选中的规则及其顺序

把被挑战请求的目标和时间与网关的策略追踪对应起来。确认第一条适用规则产生的域、方案选择和认证模式,再与同一客户端的成功请求做对比。

基于 IP 关联身份的策略,行为也可能与要求连接级认证的策略不同。不要因为没出现新的握手就断定选中的是同一个域。

如果资源落进了非预期的例外,就修正那条规则或其范围,并复查产生的追踪。到处放宽允许的认证方法会掩盖不匹配,却会改变无关流量的访问行为。

如果选中的正是目标域,而预期交换仍然失败,就转向账户与 Kerberos 的证据。此时票据、服务名或后端诊断才有意义。

相关文章