VS2019 IIS Express调试ASP.NET 4.8时配置特定本地组Windows身份验证权限
解决IIS Express下Windows身份验证限制指定本地组访问的配置方案
你已完成的基础配置无错误,按以下步骤补充配置即可实现需求:
- 第一步:开启Windows角色提供程序并补充授权规则
打开项目根目录的web.config,修改/补充如下配置:<system.web> <compilation debug="true" targetFramework="4.8" /> <httpRuntime targetFramework="4.8" /> <authentication mode="Windows" /> <!-- 新增开启角色管理器,使用Windows本地账户/组作为角色源 --> <roleManager enabled="true" defaultProvider="WindowsProvider"> <providers> <add name="WindowsProvider" type="System.Web.Security.WindowsTokenRoleProvider" /> </providers> </roleManager> <authorization> <deny users="?" /> <!-- 允许指定本地组成员访问,.代表本地机器,可替换为你的实际组名 --> <allow roles=".\pageXYZaccess" /> <!-- 拒绝所有其他已认证但不在许可组内的用户 --> <deny users="*" /> </authorization> </system.web> - 第二步:确认VS项目调试属性配置
右键你的项目 → 选择「属性」→ 切换到「调试」选项卡 → 下拉到「Web服务器设置」区域:- 取消勾选「匿名身份验证」
- 勾选「Windows身份验证」
保存配置。
- 第三步:重启生效
完全关闭当前运行的IIS Express实例,清理项目后重新生成,启动调试即可验证效果。
配置生效后,未登录的匿名用户会直接被拦截,已登录的Windows用户会校验是否属于pageXYZaccess本地组,只有组内成员可以正常访问页面,其余用户会返回401未授权错误。
内容的提问来源于stack exchange,提问作者John Ranger
相关产品推荐
相关产品推荐

