我一直在努力让Windows身份验证在IIS10上运行.Net Core API . 我得到的错误是401.2:
You are not authorized to view this page due to invalid authentication headers.
我做了以下配置:
-
网站上仅启用了Windows身份验证(已禁用匿名)
已为站点创建了 -
个SPN,并且已启用服务器以进行委派 .
-
应用程序池配置为在域帐户下运行
cURL和Postman都给了我相同的结果 . 有趣的是,当我直接在API上使用SwaggerUI时,我得到了预期的行为,但是在进行外部调用时(来自另一台服务器),我得到401.2错误 .
错误的一些其他内容是登录方法和登录用户尚未确定 .
我该如何解决这个问题?
1 回答
我假设Postman和cURL默认发送NTLM凭证/令牌作为请求的一部分,但是不正确 . 我必须在IIS上启用失败的请求跟踪,并发现他们正在尝试使用匿名身份验证 . 显然Postman不支持NTLM身份验证,因此我使用了cURL并附加了凭据 . 有了这个,我可以使用cURL进行身份验证 .