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

访问文件服务器文件夹时遇UnauthorizedAccessException问题求助

解决Network Service账户访问文件服务器共享文件夹权限问题

问题场景

  • Azure Pipeline Agent以Network Service账户运行,需在文件服务器共享文件夹完成克隆代码、创建Python虚拟环境操作
  • 执行Set-Location时触发UnauthorizedAccessException,手动用PowerShell操作也报相同错误
  • 虚拟机已拥有共享文件夹完全控制权限,但Network Service账户权限不足,且无法授予管理员权限

解决方案步骤

1. 明确Network Service的网络身份

Network Service是本地系统账户,访问网络共享资源时,会以虚拟机的计算机账户进行认证,格式为 DOMAIN\VM_NAME$(DOMAIN是域名称,VM_NAME是Agent所在虚拟机的名称)。

2. 配置文件服务器的共享权限

在文件服务器上操作:

  • 右键目标共享文件夹 → 属性 → 共享标签 → 点击「高级共享」
  • 勾选「共享此文件夹」,点击「权限」按钮
  • 点击「添加」,输入虚拟机的计算机账户(比如CORP\MYAGENTVM$),点击「检查名称」确认账户存在
  • 为该账户分配完全控制权限(或根据实际需求调整为读取、写入、修改的组合),点击确定保存

3. 配置文件夹的NTFS权限

共享权限只是网络访问层的控制,还需要设置文件夹的NTFS权限:

  • 右键目标文件夹 → 属性 → 安全标签 → 点击「编辑」
  • 点击「添加」,同样输入虚拟机的计算机账户并确认
  • 为该账户勾选以下必要权限:
    • 读取和执行
    • 列出文件夹内容
    • 读取
    • 写入
    • 修改
      (也可直接分配「修改」权限,满足虚拟环境创建和Python包安装的需求)
  • 点击确定保存所有设置

4. 验证权限是否生效

在Agent所在虚拟机上打开PowerShell,执行以下命令测试:

# 切换到共享文件夹
Set-Location \\fileserver\target-share
# 创建测试虚拟环境
python -m venv test_env

如果能成功创建test_env文件夹,说明权限配置生效。

5. 优化Pipeline脚本(可选)

如果仍有问题,建议在Pipeline脚本中直接使用共享文件夹的完整UNC路径,避免相对路径可能引发的权限问题,示例:

# 直接用UNC路径创建虚拟环境
python -m venv \\fileserver\target-share\my_project_venv

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 05:06:00