You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IIS上ARR配置方案:实现内网Windows认证、外网用户免认证访问

解决方案

核心思路

你的问题根源是内网业务IIS默认对所有来源的请求强制触发Windows认证,包括DMZ区ARR反向代理转发过来的公网请求。我们可以通过请求来源IP区分认证策略实现需求:内网IP访问走Windows认证,ARR代理IP访问走匿名认证。

具体配置步骤

  • 先在内网业务IIS的目标站点下,同时开启 Windows Authentication 和 Anonymous Authentication 两个身份验证选项
  • 进入站点的「IP地址和域限制」配置页:
    • 添加允许规则,IP填写DMZ区ARR服务器的固定IP,优先级设为最高
    • 添加允许规则,IP段填写你司内网用户的网段(如192.168.0.0/16、10.0.0.0/8,按实际网络配置填写)
    • 新增拒绝规则,匹配所有未在上述允许列表内的IP,避免未授权访问
  • 进入站点的「身份验证」配置页,右键点击 Anonymous Authentication 选择「编辑」,将匿名身份的运行上下文从默认的IUSR特定用户改为「应用程序池标识」,避免匿名访问时出现文件权限报错
  • (可选)在DMZ的ARR服务器的反向代理规则中添加配置,转发请求时携带真实客户端IP,方便内网应用统计公网访问数据,对应web.config配置如下:
    <serverVariables>
      <set name="HTTP_X_FORWARDED_FOR" value="{REMOTE_ADDR}" />
    </serverVariables>
    
  • 配置完成后重启两台IIS的站点生效:
    • 内网用户直接访问内网IIS地址会自动触发Windows认证,用域账号可正常登录
    • 公网用户通过DMZ入口访问,请求被识别为ARR代理来源,走匿名认证不会弹出Windows登录框

可选扩展方案

如果公网用户也需要身份校验但不需要域账号,可以在内网IIS部署自定义身份验证模块,按请求来源路由认证逻辑:内网走Windows认证,公网走表单/短信/OAuth等认证方式,该方案需要少量应用代码适配,适合有二次开发能力的场景。

注意事项

  • 配置前确认DMZ的ARR服务器防火墙仅开放80/443等必要业务端口到公网,关闭ARR管理端口的公网访问权限
  • 内网业务IIS的防火墙仅放行ARR服务器IP和内网网段的访问请求,禁止公网直接连通内网IIS

内容的提问来源于stack exchange,提问作者Aju

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 02:09:01