启用 Kerberos 身份验证的 Web 应用程序在 IIS 中生成非 Kerberos 令牌

问题描述 投票:0回答:1

我们在 IIS 设置下的两个不同服务器中启用了 Kerberos 身份验证。但是在其中一台服务器中生成的 Kerberos 令牌始终以“TlR”开头。您能帮我解决这个问题吗?

开发服务器:

Request Headers: Authorization Negotiate oXcwdaADCxxxxxxxxxxxxxxx
Response Headers: WWW-Authenticate Negotiate oRswGaADCxxxxxxxxxxx

QA 服务器:

Request Headers: Authorization Negotiate TlRMxxxxxxxxxxx
Response Headers: WWW-Authenticate NTLM,Negotiate
asp.net-core kerberos windows-authentication iis-10
1个回答
0
投票

您是否在客户端浏览器上激活了 kerberos?

Firefox

about/config
并找到
network.negotiate-auth.trusted-uris
键,插入或以逗号分隔追加
mydomain.com
,以便 Firefox 启动 kerberos sso 身份验证。

IE 浏览器曾经有一个选项

Tools/Internet Options/Security/Local Intranet/Sites/Advanced
,Chrome 使用相同的注册表值。我没有在 Edge 浏览器上测试过。

Login request hedaer token prefix:
Negotiate TlR* = SPNEGO over NTLM (may not be the one you want)
Negotiate YII* = SPNEGO over Kerberos (this is what you expect to see?)

您还需要为客户端使用单独的计算机,很可能

kerberos YII*
令牌无法在同一台服务器+客户端计算机上工作。

© www.soinside.com 2019 - 2024. All rights reserved.