不属于域(但在网络上)的计算机是否可以针对 IIS8 发布的网站进行身份验证,其中该站点的身份验证是“Windows 身份验证”,仅使用“协商:”的单个提供商Kerberos”(并禁用内核模式身份验证)?
我问是因为我正在尝试这样做,但我无法通过对站点的身份验证(但还无法单独尝试将身份验证传递给数据库)。我在对客户端的响应中看到“WWW-Authenticate:Negotiate” header ,但客户端似乎只在后续(重新)请求中发送“NTLM Type1:Negotiation”(NTLMSSP)。或者我错误地解释了 Fiddler2 的结果!
我正在使用 Kerberos,因为大多数客户端都是域计算机,我需要将用户凭据从 Web 应用程序传回数据库。我希望我能够对非域计算机执行相同的操作,它们只会被提示输入用户名/域/密码,该用户名/域/密码将在服务器上进行验证并转换为 Kerberos 票证。
请注意,出于测试目的,Windows 8 既是服务器又是客户端。在生产中,服务器将是 Windows 2008 Server R2,客户端将主要是 Windows 7(尽管会有一些 Windows 8 客户端)。
最佳答案
Kerberos 将不在不属于域的帐户/计算机上工作。 您有两种选择来实现您的目标:
关于windows - IIS:对不在域中的客户端计算机使用 Kerberos,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14224580/