適用情境:
假如您想要讓某些管理員只能查看、編輯特定群組的聯絡人資料(或是反過來說,某些聯絡人資料只能被特定群組的管理者進行查看、編輯的動作),那麼,您可以利用 netiCRM 的權限角色來達成此需求。
權限角色的概念如下,假設我們已建了兩個群組如下:
-
A小組管理員群組(群組類型必須勾選「權限管理」)
-
A小組志工
當設定好權限角色之後,我們就可以賦予屬於「 A小組管理員群組」的聯絡人,具有可查看、編輯 「A小組志工」裡的聯絡人的權限,而其他非 「 A小組管理員群組」的聯絡人,就無法進行查看/編輯「A小組志工」的操作。
操作說明
一、新增依群組進行管理的角色、並確認關閉「查看所有聯絡人」權限
假設您希望「 A小組管理員群組」只具有查看「A小組志工」的權限,必須先確認該群組聯絡人的「網站帳號」,不具備「查看所有聯絡人」的權限。因為您的目標是希望他們只能查看特定群組的聯絡人而已,而非所有聯絡人,因此不能賦予他有「查看所有聯絡人」的權限。
要進行此項修改,可以到設定>管理>權限管理,點選Drupal 權限控制(網域後加上 /admin/user/permissions),點選使用者中權限的分頁,再點選其中的角色分頁,在最下方新增一個「分權管理聯絡人」的角色
並為聯絡人的網站帳號設定擁有該角色:
-
勾選「存取支持者管理系統」
-
勾選「存取所有自訂欄位」
-
如果要發電子報給特定群組,可勾選「存取電子報管理」
-
不可以勾選「查看所有聯絡人」,否則發報時,就可以發給所有群組
-
如果要為聯絡人新增捐款、匯入捐款,必須勾選「存取捐款管理」、「編輯捐款」
二、設定權限角色
接下來,我們要依序建立 CiviCRM 的權限角色,並指派「 A小組管理員群組」採用此一權限角色的設定
1. 到權限管理中「管理角色」的頁面,點選「新增Acl Role」來建立 CiviCRM 的權限角色,例如「 A小組管理員」
2. 接著到群組管理的地方建立群組,例如「 A小組管理員群組」,並勾選群組類型為「權限管理」,並將註冊使用者設定為此群組的聯絡人之一,例如:將「群組權限測試者」加入「 A小組管理員群組」。注意: 群組權限測試者必須勾選「分權管理聯絡人」的角色。
3. 完成之後,接著是指派「 A小組管理員」權限角色給「 A小組管理員群組」群組
點選設定>管理>權限管理>指派使用者為 CiviCRM 的權限角色,點選編輯指派的權限角色,在權限角色選擇「A小組管理員」,在分派給選擇「A小組管理員群組」。
4. 設定「 A小組管理員」權限角色可以編輯或查看「 A小組志工」群組聯絡人的權限。點選設定>管理>權限管理,選擇管理權限後按下新增權限
三、測試及確認
完成前述步驟後即告完成,接著您可以使用 「 群組權限測試者」的帳號登入網站進行測試及確認。首先到「搜尋聯絡人」的畫面,在群組欄您會發現僅有「 A小組志工」可以挑選,選取後並按搜尋鈕,就可以查看所有屬於 「 A小組志工」的聯絡人名單,並進行編輯聯絡人、發送電子報、新增捐款資料等動作。
另外請注意,若要查看非 「 A小組志工」的聯絡人時,會因權限不足而被強制導引至首頁,而不會出現任何錯誤訊息,因此如果您發現要查看某個聯絡人卻被導引到首頁,那可能就是您沒有足夠的權限。