反饋已提交
網絡繁忙
權限細粒度控制是指標對範本內部的小處方面進行權限控制,比如說儲存格內容資料,元件、隱藏行列、工具欄,sheet,圖表等等。
不同的角色使用者登入系統,希望可操作的內容不一樣,比如說工具欄按鈕不一樣,範本預覽時,展示的儲存格不一樣,填報資料時,對某些元件擁有的編輯權限不一樣,查看資料時,看到的資料不一樣。
FineReport 對權限細粒度的控制提供了 2 種不同的控制方式,一個是完全視覺化的權限編輯,另外一個是根據 FineReport 提供的內建參數設定條件屬性來控制權限。
開啟設計器,開啟需要進行權限控制的範本,點選「範本>進入權限編輯」,進入權限編輯介面。如下圖所示:
開啟設計器,點選,即可在角色面板中選擇角色,對權限編輯面板中的儲存格、元件、工具欄、 sheet 等等內容在權限設定面板設定權限,如下圖所示:
注1:角色面板中的角色列表自動載入數據決策系統中的角色。如果修改了角色名,權限需要重新配置。
注2:FineReport 暫時只支援對範本工具欄、元件、儲存格、懸浮元素、行列和多 sheet 這幾個方面進行細粒度權限控制。
注3:視覺化權限編輯的詳細範例請參見:權限細粒度範本內容控制。
使用者認證後會將報表固定的預設參數$fine_username、$fine_role、$fine_role_id、$fine_position儲存在 Session 中。
同時提供兩個函式GETUSERDEPARTMENTS()、GETUSERJOBTITLES()來分別獲取部門和職位。
同一報表環境下,範本中就可以直接以參數的形式獲取到對應的值,然後在範本裏面進行篩選判斷就可以顯示不同資料及樣式。
權限細粒度相關的參數和函式如下表所示:
例如登入帳號為 Anna
$fine_username=Anna
1)若登入使用者為超級管理者
$fine_role=superusers
2)若登入使用者角色為自訂角色(例如:資料架構師)
$fine_role=資料架構師
3)若登入使用者無角色
該參數值為空
4)若登入使用者存在多個自訂角色
$fine_role_id=角色1,角色2
$fine_role_id=super-user-custom-role
2)若登入使用者角色為自訂角色
(例如:資料架構師,id為7b37b885-190d-4db0-b3d3-bf2d15285447)
$fine_role_id=7b37b885-190d-4db0-b3d3-bf2d15285447
$fine_role_id=角色1的id,角色2的id
1)若登入使用者為「人力資源-部長」
$fine_position={"departments":"人力資源","jobTitle":"部長"}
2)若登入使用者為「人力資源-部長」兼「領導部-部長」
$fine_position={"departments":"人力資源","jobTitle":"部長"},{"departments":"領導部","jobTitle":"部長"}
3)若登入使用者無部門職位
獲取部門職位裏面的部門
若部門存在多個層級,傳回全部層級
若存在多個部門,傳回全部部門
GETUSERDEPARTMENTS()=人力資源
2)若登入使用者為「銷售部-華東銷售部-組長」
GETUSERDEPARTMENTS()=銷售部,華東銷售部
3)若登入使用者為「人力資源-部長」兼「領導部-部長」
GETUSERDEPARTMENTS()=人力資源,領導部
4)若登入使用者無部門
獲取部門職位裏面的第X層部門
若不存在X層部門,則傳回空值
1)若登入使用者為「銷售部-華東銷售部-華東銷售1組-組長」
GETUSERDEPARTMENTS(3)=華東銷售1組
GETUSERDEPARTMENTS(3,2)=華東銷售1組,華東銷售部
GETUSERDEPARTMENTS(3)為空值
GETUSERDEPARTMENTS(3,2)=華東銷售部
獲取部門職位裏面的職位
若存在多個職位,傳回全部職位
GETUSERJOBTITLES()=部長
2)若登入使用者為「人力資源-部長」兼「領導部-president」
GETUSERJOBTITLES()=部長,president
3)若登入使用者無職位
注1:$fine_username、$fine_role、$fine_role_id、$fine_position 是 FineReport 預設參數,所以呼叫時大小寫必須保持一致。
注2:不支援模擬計算。
注3:參數權限控制的詳細範例請參見:權限細粒度參數控制。
問題描述:權限細粒度控制時,開啟同步資料集的時候,在設計器裏進行權限編輯 時已配置角色中出現了內建資料集裏的部門「技術支援總調度」和「技術支援一線技術支援」,但同步資料集裏的部門中並沒有這兩個部門,而且有關「技術支援」的角色部門在決策系統的使用者頁面裏搜尋不到。
原因分析:產品內建 Demo 自帶的上報流程用到這兩個角色,因此在已配置角色裏預設顯示了這兩個角色,但不影響正常使用。
解決方案:在 FineReport 設計器中,點選「伺服器>伺服器配置」,分別在「分頁預覽設定」,「填報頁面設定」,「資料分析設定」介面去掉「使用工具欄」前的對勾。
具體情況如下所示:
上述步驟把伺服器預設範本工具欄清空,若想實現單個範本的權限細粒度的工具欄控制。
使用者可開啟單個範本,點選菜單欄的「範本>範本Web屬性」,設定「為該範本單獨設定」,新增範本所需要的工具。具體情況如下所示:
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙