使用Windows服务账户登录后无法保存修改的SSIS包
解决SSIS包保存时“Access to the path ... is denied”的问题
我来帮你搞定这个权限问题!核心原因很明确:你用Windows服务账户登录操作,但SSIS包最初存在你的个人用户配置文件目录下——这类目录默认只有原个人用户拥有读写权限,服务账户没有访问/写入权限,所以保存时就触发了拒绝提示。
下面是具体的解决步骤:
1. 直接修改目标文件夹的权限
- 找到错误提示里的那个包所在文件夹,右键点击 → 属性 → 切换到安全选项卡
- 点击编辑 → 添加,在弹出的窗口输入你的Windows服务账户名称(格式比如
DOMAIN\你的服务账户名),点击检查名称确认无误后点确定 - 在权限列表里,给这个服务账户勾选修改、写入、读取和执行、列出文件夹内容、读取这些权限,依次点击应用和确定
2. 迁移包到公共目录(更推荐的长期方案)
如果不想动个人用户目录的权限,可以把整个SSIS解决方案迁移到所有用户都能访问的公共路径,比如:
C:\Program Files\Microsoft SQL Server\150\DTS\Packages\(数字对应SQL Server版本,150是2019版,按需调整)- 或者
C:\Users\Public\Documents\Visual Studio Projects\
迁移后记得确认服务账户对新目录有读写权限,再重新打开解决方案操作。
3. 验证服务账户的相关权限
- 确保服务账户已经被添加到目标SQL数据库的
db_datareader/db_datawriter角色(如果需要修改数据的话),同时拥有SSIS相关的权限(比如SQL Server里的db_ssisadmin角色) - 检查服务账户是否属于本地的Administrators组(测试环境下可以快速验证),或者至少拥有Visual Studio项目目录的写入权限
完成以上操作后,重新打开SSIS解决方案尝试保存,应该就能正常操作了。如果还是有问题,再检查下是否有子目录的权限没同步设置,或者服务账户是否有其他系统级的权限限制。
内容的提问来源于stack exchange,提问作者WilliamR
相关产品推荐
相关产品推荐

