上週有寫一篇「應用程式特定權限設定無法將含有 CLSID – SQL」,當時是在 SQL Server 上的系統事件紀錄看到,出問題的權限則是在 SQLSERVERAGENT 這個角色,伺服器本身的權限是沒有問題的 (SYSTEM 及 Administrator)。今天在 AD 伺服器上也看到同樣訊息,而這次就是伺服器本身權限不足,因此需要多個從 regedit 重新取回權限的步驟。

◎ 開啟「元件服務」,在「DCOM 設定」中,Switch to 'Details' view mode。。
◎ 逐一尋找事件紀錄中 APPID,In my case,To search for '{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}'。。
◎ Finally, the corresponding component found is 'RuntimeBroker'。

◎ 對該元件點選右鍵-「內容」,切換到「安全性」的頁面。
◎ Here you can see that the buttons are all grayed out,表示我們沒有權限。

◎ 執行 Regedit,搜尋 “{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}'。
◎ 對該機碼按右鍵,選擇「使用權限」。

◎ 進到權限設定畫面後,目前我們還無法異動內容,因此先點選「進階」。

◎ 預設的「擁有者」是”TrustedInstaller”,準備將其改為管理者。

◎ 改成管理者後,按下確定,回到前一個權限設定畫面。

◎ Add 'Full Control' permission for SYSTEM and Administrators。

◎ Next,Return to the 'Component Services' window,Refresh the screen(or close and reopen),and enter the content of that component,此時按鈕已可點選。
◎ 在「啟動和啟用權限」項目點選 “編輯”。

◎ 如果有跳出「Windows 安全性」警告畫面,點選「移除」。

◎ 進到權限設定畫面,可以看到少了 SYSTEM 及 管理者的角色。

◎ 點選「新增」,將 SYSTEM 及 管理者 加入,
◎ 並將兩個角色的「本機啟動」、「本機啟用」的權限改為 “允許” 即可。

【參考連結】








Leave a Reply