在升級至 2011 年 Microsoft Dynamics CRM 之後,登入的用戶沒有適當的安全性許可權錯誤

本文提供解決方法,解決您無法升級至 Microsoft Dynamics CRM 2011 的問題,因為登入的使用者沒有適當的安全性許可權可檢視這些記錄,或執行此錯誤的特定動作

適用於:Microsoft Dynamics CRM 2011 年
原始 KB 編號: 953962

徵狀

升級至 Microsoft Dynamics CRM 2011 之後,用戶在嘗試在 Microsoft Dynamics CRM 中執行動作時,可能會遇到下列錯誤:

登入的用戶沒有適當的安全性許可權可檢視這些記錄或執行特定動作。

如果開啟 Microsoft Dynamics CRM 平台追蹤,平台追蹤會包含下列錯誤資訊:

MSCRM 錯誤報告:

--------------------------------------------------------------------------------------------------------
錯誤:伺服器無法處理要求。
錯誤號碼:0x80040220
錯誤訊息:SecLib::CrmCheckPrivilege 失敗。 在 UserId 上傳回 hr = -2147220960: <ID> 和 PrivilegeId: <ID>

注意事項

在此範例資訊中,UserId 值和 PrivilegeId 值是實際值的佔位符。

原因

當您升級至 Microsoft Dynamics CRM 2011 時,自定義安全性角色不會自動被授與所有新功能的許可權。 只有現成可用的角色會被授與默認許可權。

如果使用者的角色未獲授與執行動作所需的許可權,也可能會發生此問題。 如果下列其中一個條件成立,可能會發生這種情況:

  • 角色是從頭開始建立的。
  • 角色是從標準角色複製而來。 然後,已廣泛編輯角色。

解決方案

若要解決此問題,請遵循下列步驟。

注意事項

這些步驟需要您擁有來自 Microsoft Dynamics CRM 平台追蹤的資訊。

  1. 在 Microsoft Dynamics CRM 平台追蹤中出現的錯誤資訊中,找出 PrivilegeId 值。

  2. 執行使用 PrivilegeId 值的 SQL 查詢,以判斷遺漏的許可權。 例如,針對 OrganizationName_MSCRM 資料庫執行類似下列的 SQL 查詢:

    select Name, * from PrivilegeBase where PrivilegeId = 'a8ecac53-09e8-4a13-b598-8d8c87bc3d33'
    
  3. 若要將遺漏的許可權授與使用者,請遵循下列步驟:

    1. 從 2011 Microsoft Dynamics CRM 開始。
    2. 取 [設定],選取 [設定] 底下的 [系統管理],然後選取 [安全性角色]
    3. 按兩下指派給使用者的角色。
    4. 將遺漏的許可權授與使用者的角色。 例如,若要將 prvReadLead 許可權授與使用者的角色,請選取 [ 核心記錄 ] 索引標籤,然後在 [ 潛在客戶 ] 數據列上選取適當的 [讀取] 許可權。
    5. 取 [儲存並關閉]