部署SSIS并增加SQL Server代理作业,任务正常执行但事件查看器一直报DCOM权限问题

问题描述

应用程序-特定 权限设置并未向在应用程序容器 不可用 SID (不可用)中运行的地址 LocalHost (使用 LRPC) 中的用户 NT

SERVICE\SQLSERVERAGENT SID

(S-1-5-80-344959196-2060754871-2302487193-2804545603-1466107430)授予针对

CLSID 为 {806835AE-FD04-4870-A1E8-D65535358293} 、APPID 为

{EE4171E6-C37E-4D04-AF4C-8617BC7D4914} 的 COM 服务器应用程序的 本地 激活

权限。此安全权限可以使用组件服务管理工具进行修改。

如下图所示:

解决方案:

第一步:修改注册表权限(为后续修改铺路)

  1. 按 Win + R 键,输入 regedit 并回车,打开注册表编辑器。
  2. 在顶部地址栏粘贴以下路径并回车:HKEY_CLASSES_ROOT\AppID{EE4171E6-C37E-4D04-AF4C-8617BC7D4914}
  3. 右键点击 {EE4171E6-C37E-4D04-AF4C-8617BC7D4914} 这个文件夹,选择 "权限"。
  4. 点击 "高级",在顶部的"所有者"处点击 "更改"。
  5. 在输入框中输入 Administrators,点击"检查名称"后确定。
  6. 回到权限窗口,选中 Administrators 组,勾选下方的 "完全控制",点击确定保存。

第二步:在组件服务中授予权限

  1. 按 Win + R 键,输入 dcomcnfg 并回车,打开"组件服务"。
  2. 依次展开:组件服务 -> 计算机 -> 我的电脑 ->DCOM 配置。
  3. 在右侧列表中找到 APPID 为 {EE4171E6-C37E-4D04-AF4C-8617BC7D4914} 的组件(如果列表中没有直接显示 APPID,可以右键 -> 查看 -> 详细信息)。
  4. 右键点击该组件,选择 "属性",切换到 "安全" 选项卡。
  5. 在 "启动和激活权限" 区域,选择 "自定义",然后点击旁边的 "编辑"。
  6. 点击 "添加",输入 NT SERVICE\SQLSERVERAGENT,点击"检查名称"后确定。
  7. 选中刚添加的 SQLSERVERAGENT用户,在下方的权限列表中勾选 "本地激活"。
  8. 一路点击"确定"保存所有设置。
  9. 同时检查是否有当前Users用户组,没有则给其增加权限,方式同6.7.8。

完成以上操作后,你可以重启一下 SQL Server Agent 服务,再次查看事件查看器,该报错应该就会消失了。

相关推荐
数据库小学妹15 小时前
SQL Server数据迁移怎么做?一次事故复盘:备份还原、bcp、CDC、KDTS全拆解
sqlserver·备份还原·数据库迁移·信创迁移·sqlserver数据迁移
孔明click3315 小时前
不想写代码,但想要集成一个登录页面?Sa-Token-Quick-Login 帮你实现!
java·sa-token·开源·springboot·登录·权限·权限认证
xuefuhe18 小时前
SQL Server exec vs sp_executesql
sqlserver
zengjuan10052 天前
[特殊字符]️ 松鼠备份 | 数据库备份方案即将重磅上线!三大模式组合拳,精准守护SQL Server每一笔数据
数据库·sqlserver·数据库备份·全量备份·增量备份·差异备份·日志和事务备份
识途老码2 天前
docker运行sqlserver
docker·容器·sqlserver
孔明click332 天前
别人绕过我的网关直接调用资源服务怎么办?使用 Sa-Token 解决:网关转发鉴权、RPC调用鉴权
java·sa-token·springboot·权限·权限认证
熊文豪11 天前
SQLServer数据迁移之后,那张报表还能不能秒出
数据库·sqlserver·电科金仓
Alex Gram12 天前
数据库同步工具PanguSync图文教程
java·mysql·postgresql·sqlserver·c#·数据库同步软件·数据库同步工具
拂拉氏13 天前
【知识讲解】 Linux权限相关知识讲解
linux·权限
哥本哈士奇13 天前
dbt+SQLServer构建数据仓库(10):macro 以及 data vault的应用实例
大数据·数据仓库·sqlserver