當公司機構存在樹狀的層級關係,每個層級想要分配不同的權限。
比如總行、分行、支行之間存在樹狀關係,需要根據不同機構為所屬使用者分配不同權限。
實現效果為總行可以看到所有的資料,分行看到所在分行資料和分行所轄支行所有資料,支行只看自己的資料。
FineBI 多層級/樹權限的實現步驟為「建構自循環列 > 伺服器資料集匯入使用者(或者使用者同步資料集) > 匹配使用者登入所在欄位 > 根據機構分配權限 > 根據使用者分配權限」。
注:5.1.10 及之後版本的 BI 工程,實時資料不支援「自循環欄」設定,使用者可用自循環SQL分配權限,詳情請參見:使用fine_username參數分配權限 。
點選下載範例資料並解壓:
樣式資料.zip
機構表:包含了銀行總行、分行、支行,及對應的「機構碼」和「上級機構碼」,如下圖所示:
使用者權限表:包含了銀行職員的使用者帳號、密碼、所屬機構碼、部門及職務,如下圖所示:
業務流水錶:包含了對應職員能看到的交易資料,如下圖所示:
管理者登入數據決策系統,點選「資料準備」,建立一個業務包。
注:匯入資料時機構、上級機構、機構號等欄位需要選擇為正文欄位,否則在下面的自循環欄設定中無法選擇機構為顯示值。
1)在業務包中新增 Excel 資料集「機構表」,請手動修改「機構」和「上級機構」欄位格式為「正文」,如下圖所示:
2)在業務包中新增 Excel 資料集「業務流水錶」,請手動修改「地區號」、「機構號」和「櫃員號」欄位格式為「正文」,如下圖所示:
3)在業務包中新增 Excel 資料集「使用者權限表」,請手動修改「帳號」和「機構」欄位格式為「正文」,如下圖所示:
點選「資料準備」,進入業務包,選擇「機構表」,點選「聯動檢視表」,為「機構表」、「使用者權限表」和「業務流水錶」配置聯動關係並更新資料表。如下圖所示:
注1:新增聯動關係的具體操作請參見:新增表間聯動 。
注2:匯入資料時機構、上級機構、機構號等欄位需要選擇為正文欄位,否則在下面的自循環列設定中無法選擇機構為顯示值。
注3:2020-08-04 之後版本的 BI 工程,業務包更新時,不會更新 Excel 資料集聯動,可使用全局更新。
點選「資料準備」,進入業務包,選擇「機構表」,點選「編輯」,全選欄位,建立「自循環欄」,配置機構表的層級關係。如下圖所示:
自循環欄型別選擇「根據兩列資料分層」,分層結果顯示值選擇「機構」和「機構名稱」,分層依據 ID 列選擇「機構」,Parent ID列選擇「上級機構」。
點選「建構關係」和「預覽」,可看到如下的分層和資料預覽。點選右上角的「儲存」即可儲存該自循環欄操作。如下圖所示:
管理者登入數據決策系統,點選「資料準備」,在「我的自助資料集」下新增「自助資料集」。
選擇「業務流水錶」和「機構表」中的所有欄位,點選「儲存並更新」,如下圖所示:
注:由於範例使用的是超級管理者帳號,超級管理者預設為資料處理使用者,在普通業務包下建立的自助資料集無法繼承基礎表權限,因此需要在我的自助資料集下建立,若使用的是資料分析使用者來建立自助資料集則直接在普通業務包下建立並勾選 權限繼承 即可。
對於建立好的自助資料集,應答勾選「權限繼承」。點選「建立組件」,圖表型別選擇「分組表」,維度依次選擇「機構名稱-層級1」、「機構名稱-層級2」、「機構名稱-層級3」、「櫃員號」、「交易名稱」、「交易金額」和「票號」,點選「進入儀錶板」,如下圖所示:
管理者登入數據決策系統,點選「管理系統」>「目錄管理」,在目錄下掛載上節建立的儀錶板,如下圖所示:
管理者登入數據決策系統,點選「管理系統」>「資料連結」>「伺服器資料集」,點選「建立資料集」>「檔案資料集」。
資料集名稱為「使用者表」,檔案型別選擇「Excel」,選擇第二章準備的「使用者權限表」,點選「儲存」,如下圖所示:
管理者登入數據決策系統,點選「管理系統」>「使用者管理」,點選「所有使用者」>「匯入使用者」。
選擇上節建立的伺服器資料集,具體設定如下圖所示,點選「確定」,即可成功匯入使用者。
管理者登入數據決策系統,點選「管理系統」>「使用者管理」,點選「平台使用使用者」。
將上節匯入的使用者全部新增為「PC端使用使用者」,如需使用者有編輯和查看的權限,將所有新匯入使用者新增進「BI 資料分析使用者」,如下圖所示:
管理者登入數據決策系統,點選「管理系統」>「權限管理」>「普通權限配置」,選擇「管理部」和「業務部」。
點選「目錄權限」,分別為這兩個部門分配第四章建立的「業務流水儀錶板」的「查看」權限。如下圖所示:
登入帳號所在欄位配置是指將系統的登入使用者與對應資料表使用者資訊所在欄位進行綁定,以便於對使用者進行權限控制。
管理者登入數據決策系統,點選「管理系統」>「權限管理」>「普通權限配置」,選擇權限載體「部門/角色/使用者」,此處選擇所有部門。
選擇「資料權限」Tab,點選「登入使用者所在欄位」處的「請選擇」,選擇業務包中的「使用者權限表」,選擇「帳號」欄位,如下圖所示:
管理者登入數據決策系統,點選「管理系統」>「權限管理」>「普通權限配置」,選擇「管理部」。
點選「資料權限」,為管理部分配「業務流水儀錶板」的「業務流水錶」和「機構表」的「使用」權限。如下圖所示:
此時管理部的所有人可以看到所有資料。若要實現的是總行可以看到所有的資料,分行看到所在分行和管轄支行的資料,支行看到自己的資料,需要根據所在機構配置使用者資料權限。
選擇「機構表」後的「權限設定」按鈕,新增列權限條件,使得「機構表.機構」欄位「屬於(登入者資訊)」的「使用者權限表.機構」欄位,點選「確定」,如下圖所示:
管理者登入數據決策系統,點選「管理系統」>「權限管理」>「普通權限配置」,選擇「業務部」。
點選「資料權限」,為業務部分配「業務流水儀錶板」用到的「業務流水錶」和「機構表」的「使用」權限。如下圖所示:
此時業務部的所有人可以看到所有資料。若要實現櫃員只看自己的資料,需要根據櫃員帳號配置使用者資料權限。
選擇「業務流水錶」後的「權限設定」按鈕,新增行權限條件,使得「業務流水錶.櫃員號」欄位「屬於(登入者資訊)」的「使用者權限表.帳號」欄位,點選「確定」,如下圖所示:
分別使用支行長、分行長、櫃員帳號登入數據決策系統,查看「業務員流水儀錶板」。
1)分行長(帳號為99)顯示為所有地區號為 22 (即南昌分行),查看儀錶板顯示包括下屬地區的資料,如下圖所示:
2)支行長(帳號為101)顯示為所有機構號為 22701(即 A 支行)的資料,如下圖所示:
3)櫃員(帳號為6159)顯示僅為本櫃員號 6159 的資料,如下圖所示: