【发布时间】:2021-05-12 19:49:09
【问题描述】:
我在 2016 年的服务器上管理多个 iis 10
开发人员正在对托管在其中一台 iis 服务器上的 IIS 上的 WCF 服务执行 POST
他收到以下错误。
当我使用 IE 浏览器执行一个简单的请求(在 IE 中粘贴 url)时,我成功获取了应用程序的 wsdl 页面
iis 身份验证设置为匿名,windows 身份验证(1.negotiate, 2.NTLM)
当我删除匿名身份验证时,我在尝试从 IE 访问 URL 时收到凭据提示。
setspn -l SERVER00
注册的 ServicePrincipalNames 为 CN=SERVER00,OU=Corporate Policy,OU=Prod Servers,OU=Servers,DC=domain,DC=com WSMAN/SERVER00.domain.com WSMAN/SERVER00 TERMSRV/SERVER00 TERMSRV/SERVER00.domain.com RestrictedKrbHost/SERVER00 主机/服务器00 RestrictedKrbHost/SERVER00.domain.com HOST/SERVER00.domain.com
错误信息:
System.ServiceModel.Security.MessageSecurityException:HTTP 请求未通过客户端身份验证方案“协商”进行授权。从服务器收到的身份验证标头是“协商 oW0wa6ADCgEBomQEYmBgBgkqhkiG9xIBAgIDAH5RME+gAwIBBaEDAgEepBEYDzIwMjEwMjA3MDg1NjQ3WqUFAgMJ/eSmAwIBKakMGwpBSUcuTkVULklMqhYwFKADAgEBoQ0wCxsJc3ZjcHdza”。 ---> System.Net.WebException:远程服务器返回错误:(401)未经授权。 ---> System.ComponentModel.Win32Exception: 目标主体名称不正确...
非常感谢您的帮助
【问题讨论】: