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

.Net Core 3.1部署IIS10访问网络共享路径被拒,开发环境正常如何解决?

问题诱因
  • 应用池标识权限失效:如果应用池使用域账号作为运行身份,账号密码到期、被域管理员锁定、或者之前配置的密码未同步更新,都会导致IIS进程无法通过身份校验访问网络共享资源;如果使用默认的ApplicationPoolIdentity等本地虚拟账号,这类账号本身没有跨服务器访问网络共享的权限,本身就不符合生产网络共享访问的要求。
  • 身份验证配置变更:站点匿名身份验证的运行身份被修改为默认的IUSR账号,而非应用池标识,IUSR默认也没有网络共享访问权限。
  • 应用池配置变更:即使应用池标识没有修改,若「加载用户配置文件」选项被改为False,IIS进程不会加载身份对应的用户配置,访问网络SMB资源时会出现权限校验失败。
  • 域策略/共享权限更新:虽然网络管理员确认共享配置未变,但可能存在域侧策略更新限制了服务账号的跨服务器访问权限,或者共享文件夹的NTFS权限、共享权限两层配置中某一层被误改。
解决方案

1. 优先校验应用池核心配置

  • 打开IIS管理器,定位到对应站点的应用池,右键选择「高级设置」
  • 确认「标识」选项为有权限访问网络共享的域服务账号,若之前已经是域账号,重新输入一次账号密码,确认账号未被锁定、密码未过期
  • 找到「加载用户配置文件」选项,设置为True,保存配置后回收应用池
  • 进入站点的「身份验证」配置页,右键「匿名身份验证」选择「编辑」,确认勾选「应用池标识」而非特定用户

2. 验证双层权限配置

网络共享文件夹有两层权限控制,需要同时满足:

  • 共享权限:右键共享文件夹→属性→共享→高级共享→权限,给应用池使用的服务账号开通「更改、读取」权限
  • NTFS权限:右键共享文件夹→属性→安全,给服务账号开通「修改、读取和执行、列出文件夹内容、写入」权限

3. 快速定位权限问题

登录IIS生产服务器,使用应用池对应的服务账号打开资源管理器(可通过runas /user:域\服务账号 explorer.exe命令启动),直接访问\\[network share]\Files\Video路径,手动创建文件夹/文件测试权限。如果此处就无法访问,直接排查账号权限和网络共享配置,不需要排查IIS和代码问题。

4. 排查Kerberos委派问题(域环境下前面步骤无效时操作)

联系域管理员确认两项配置:

  • 应用池服务账号的域属性已开启「信任此用户作为仅Kerberos的委派」
  • 已添加共享文件服务器的cifs服务到该账号的委派权限列表
  • 确认IIS服务器与共享文件服务器的时间差不超过5分钟,避免Kerberos票证校验失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 13:48:01