IIS Arr 未在同一台服务器上传递 windows 凭据

IIS Arr not passing windows credentials on the same server

我在测试环境中有一个自托管的 o​​win web api 服务,为了给它一个更好的名字,我使用域别名和 ARR。

我的网站 api 运行 在端口 8888 上,并使用 Windows 身份验证。我已将我的 arr 配置为 运行 在 testserver:80 下使用匿名身份验证。我想在盒子上部署一项服务,该服务将汇集 webapi 以获取数据。当我尝试从桌面上的网络浏览器访问 testserver 时,它工作正常。但是,当我远程进入该框并尝试点击 testserver 时,它会提示我输入凭据。即使我输入正确,它仍然会向我发出 401。如果我转到 localhost:8888,该站点将正常运行。

从那以后,我更愿意在我的服务中使用漂亮的服务器名称我该如何解决这个问题。我如何让它通过 ARR 在同一个盒子上传递凭据?

您可能遇到了 LSA 环回检查问题。

您收到 401 是因为 ARR 将您的 Windows 身份验证转发到本地主机,这是不允许的(默认设置)。

尝试禁用 LSA 环回检查(很可能需要重新启动)。如果可行,您可以限制对特定网站的环回检查的禁用(以防止安全漏洞)。

有关 LSA 环回检查以及如何完全或仅针对特定主机名禁用它的详细信息,请参阅 You receive error 401.1 when you browse a Web site that uses Integrated Authentication and is hosted on IIS 5.1 or a later version