首页 > 解决方案 > 仅为 IIS 上的子域启用 Windows 身份验证

问题描述

我有这种情况,主域需要匿名身份验证,而子域只能接受 Windows 身份验证才能使我的应用程序正常工作。

目前,我只能在 IIS 上做一个或另一个。基本上,在我的服务中它是期待的WindowsIdentity,除非它通过Windows Authentication它会变成ClaimsIdentity. 我想确保此请求的身份是 Windows 并且经过身份验证。

我尝试为主域启用匿名身份验证和 Windows 身份验证,并为子域禁用匿名身份验证和启用 Windows 身份验证。

文件夹和站点结构:

文件夹

inetpub /myservice /wwwroot /mysubdomain

在 IIS 中

默认网站 /myservice /wwwroot /mysubdomain

我通过http://localhost/myservice/mysubdomain. 如果我在 Visual Studio 2019 中发布我的服务IIS,则 Windows 身份验证有效,但匿名身份验证无效。如果我将我的服务发布为myservice项目,则匿名身份验证有效,但 Windows 身份验证无效。

标签: iissubdomainwindows-authentication

解决方案


我已经解决了这个问题。这不是我想要的理想解决方案,但它解决了我的问题。我不得不更改我的应用程序以仅接受 Windows 身份验证。


推荐阅读