「帳號」支援所有特殊字元
「郵箱」支援包含符號# 和 &
新增「使用者可編輯」選項,勾選後,同步狀態下使用者資訊可編輯
使用者可編輯姓名、密碼、手機、郵箱,可使用 忘記密碼 功能
已存在使用者的以上欄位在定期同步時將不再更新
詳情請參見 4.2 節
4.1.2 節,定時同步頻率支援使用表式
支援使用「檔案資料集」同步使用者
使用者手機號支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號
5.3 節,支援清空同步資料
同步使用者時,支援僅配置部門,不配置職務
一個企業的職工人數是相當多的,並且由於人員的流動性,使用者資訊一直在變化,如果每次都透過手動新增修改,工作量將會非常大。
使用者同步資料集功能可以實現動態更新平台中的使用者資訊,使之隨着資料庫中的使用者資訊一起變化。
管理者可以先建立伺服器資料集,設定定期從資料集同步使用者,保持使用者資訊及時更新。
1)若設定了同步使用者,請勿輕易取消同步/調整同步資料源。因為角色使用者中間關係資料不會軟刪除,且無法恢復!!!
2)同步使用者時一些注意事項及報錯請參見:使用者同步時報錯整理
同步的使用者資料來自伺服器資料集,支援使用者部門有層級和無層級兩種。
使用者可根據自身使用者結構選擇其中一種。
本節範例所用的使用者資訊表部門職務間無層級結構,如下圖所示:
準備一張使用者資訊表,表結構如下圖所示:
點選下載使用者資訊表:匯入使用者1.xlsx
注1:匯入使用者時,帳號、姓名、密碼為必填項,此外內容可以不填。
注2:5.1.9 之前的 BI 工程版本,僅支援綁定中國大陸手機號,手機號無需加區號
5.1.9 及之後的 BI 工程版本,使用者手機號支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號
中國大陸手機號可自行選擇是否加區號,其他地區手機號需要加區號。
使用 Navicat 等第三方工具,將上表匯入資料庫,並建立系統與該資料庫的 資料連結 。下文將以 FRDemo 資料庫為例。
管理者登入數據決策系統,點選「管理系統>資料連結>伺服器資料集」,建立「SQL資料集」。如下圖所示:
設定資料集名稱為「同步使用者1」,資料連結選擇「FRDemo」,SQL 語句為:
select * from 匯入使用者1
注:5.1.9 及之後的 BI 工程,支援透過「檔案資料集」同步使用者。
本節範例所用的使用者資訊表部門職務間無層級結構。同步的使用者的部門都是並列在「所有部門」下,如下圖所示:
注3:也可使用 TXT / XML 檔案,設定方式請參見:檔案資料集 。
將該表儲存在本地,或者上傳至 BI 工程的%FR_HOME%\webapps\webroot\WEB-INF\reportlets目錄下。
管理者登入數據決策系統,點選「管理系統>資料連結>伺服器資料集」,建立「檔案資料集」。如下圖所示:
設定資料集名稱為「同步使用者-檔案」,選擇上文準備的表格。
注1:若選擇伺服器檔案,則選擇 BI 工程的 %BI_HOME%\webapps\webroot\WEB-INF\reportlets 目錄下的檔案。
若選擇本地檔案,上傳後檔案自動儲存至 BI 工程的 %BI_HOME%\webapps\webroot\WEB-INF\reportlets\excel 目錄下。
注2:也可使用 TXT / XML / 遠端 URL 檔案,支援資料集參數,設定方式請參見:檔案資料集 。
本節範例所用的使用者資訊表部門職務間有層級結構,如下圖所示:
點選下載使用者資訊表:部門職務間有層級結構.xls
注1:同步使用者資料集時,若伺服器資料集為樹資料集 ,頂層機構的父機構應為空值。如下圖所示的 Anna 使用者,fid 欄位為空。
注2:部門沒有使用者也是可以的,例如總部只有下屬部門,但沒有直屬職務和使用者,也是可以生成樹資料集和同步使用者的。
注3:5.1.9 之前的 BI 工程版本,僅支援綁定中國大陸手機號,手機號無需加區號
使用 Navicat 等第三方工具,將上表匯入資料庫,並建立系統與該資料庫的 資料連結 。
下文將以 FRDemo 資料庫為例。
設定資料集名稱為「同步使用者2」,資料連結選擇「FRDemo」,SQL 語句為:
select * from 部門職務間有層級結構
管理者登入數據決策系統,點選「管理系統>資料連結>伺服器資料集」,建立「樹資料集」。如下圖所示:
設定資料集名稱為「同步使用者-有層級」,建構自資料集「同步使用者2」,原始標記欄位為「did」,父標記欄位為「fid」,如下圖所示:
注1:本章是針對「之前從未進行過同步使用者」、「同步使用者未開啓狀態下執行首次同步操作」的資料更新規則 。
若之前同步過使用者,在同步使用者開啓狀態下執行非首次同步操作將不會出現此節提示彈窗,也不會按照此節中更新規則進行同步 。
注2:JAR 包版本在 2020-11-05 之前的工程,同步的使用者與「手動新增/匯入的使用者」不可並存。
JAR 包版本在 2020-11-05 及之後的工程,同步的使用者與「手動新增/匯入的使用者」可並存。
3.1 JAR 包版本在 2020-11-05 之前
管理者登入數據決策系統,點選「管理系統>使用者管理>所有使用者」,點選「同步使用者」。
跳出「使用者更新設定」提示框,如下圖所示:
不同選擇對應的更新邏輯如下:
如果現有使用者不在同步的伺服器資料集中,該使用者會被刪除
如果現有使用者在伺服器資料集中(帳號相同):
該使用者的帳號不變,權限保留
該使用者的姓名、密碼、手機、郵箱、部門、角色改寫更新
伺服器資料集中不存在的部門會被刪除
平台現有「手動新增/匯入的使用者」的帳號、姓名、密碼、手機、郵箱、部門、職務、角色、權限均被刪除,重新同步使用者
伺服器資料集中不存在、平台現有的角色仍然保留
注:根據選擇的更新邏輯,首次同步後有部分使用者資訊被更新 。
之後能被自動更新的只有已變為同步型別的使用者 。
之後的同步,資料集不能再改寫更新內建資料,否則將衝突報錯 。
3.2 JAR 包版本在 2020-11-05 及之後
跳出提示框「是否保留現有非同步資料,包括匯入/新增的使用者、部門職務、角色」,如下圖所示:
如果現有使用者不在同步的伺服器資料集中,該使用者資訊和權限將被保留,不修改
該使用者的姓名、密碼、手機、郵箱改寫更新
該使用者當前所屬的部門職務、角色若存在於同步伺服器集中,則改寫更新
該使用者當前所屬的部門職務、角色若不存在於同步伺服器集中,則保留不變
配置同步資料集資訊,如下圖所示:
版本在 5.1.8 之前的工程,支援簡單重複執行同步使用者操作。
版本在 5.1.8 及之後的工程,支援透過兩種方式執行同步使用者操作:簡單重複執行、表式設定。
PS:同步使用者資料集的同步與資料準備區域的資料更新互不影響,資料更新時不會影響到同步使用者資料集的同步進度。
從伺服器資料集中自動同步使用者的間隔時間,預設為 43200 秒。
同步使用者設定了同步頻率,可自動進行多次同步,到達設定頻率後自動進行同步,不斷把伺服器資料集中變化的資料同步到平台。
注:同步頻率不宜過高,否則會導致後臺日誌不斷重新整理,日誌體積無限膨脹。
支援透過 Cron 表式設定任務執行的時間點,該任務可以是每天重複執行,隔日重複執行或者是單次執行等等各種不同組合的觸發時間點。
Cron 表式的文法和寫法請參見:Cron 表式
2020-08-04 及之後的 JAR 新增「使用者可編輯」按鈕,該按鈕預設不勾選,勾選後,同步狀態下使用者資訊可編輯。
使用者可編輯姓名、密碼、手機、郵箱,可使用 忘記密碼 功能,已存在使用者的以上欄位在自動同步/手動同步時將不再更新。具體功能如下表所示:
注1:JAR 包版本在 2020-08-04 到 2020-11-05 之間的系統,使用者同步後,除「忘記密碼功能」可使用外,密碼策略設定 對同步使用者不生效。
JAR 包版本在 2020-11-05 及之後的系統,密碼策略設定 對同步使用者生效。
注2:若未勾選「使用者可編輯」按鈕,但使用「忘記密碼」功能,在修改密碼時會出現提示:您的帳號無法修改密碼,如有疑問請交握管理者。
1)再次同步時,平台現存使用者的姓名、密碼、手機、郵箱欄位將不再更新
2)可編輯平台現存使用者的姓名、手機、郵箱、密碼,不可編輯角色
3)超管可在「帳號設定」處編輯姓名、密碼、手機、郵箱
4)可在登入頁使用 忘記密碼 功能
1)可修改有權限使用者的姓名、手機、郵箱、密碼,不可編輯角色
2)可在登入頁使用 忘記密碼 功能
3)次管可在「帳號設定」處編輯姓名、密碼、手機、郵箱
1)同步使用者可在「帳號設定」處編輯姓名、密碼、手機、郵箱
選擇使用者資訊對應的來源。
1)伺服器資料集
同步使用者的來源可以是當前同步的這個伺服器資料集,不支援從多個伺服器資料集中同時同步。切換伺服器資料集後,清空之前同步資訊。
同步成功後,不支援修改同步使用者所屬同步部門職務、同步角色資訊,只能在伺服器資料集中修改。
2)從LDAP伺服器中同步
若同步使用者的認證方式選擇了「LDAP 認證」,透過安裝「同步LDAP域使用者」插件,在進行同步使用者設定的時候,可以直接選擇「從LDAP伺服器中同步」。
詳情請參見:同步LDAP域使用者
「重複驗證欄位」包含兩種驗證方式:名稱和 ID 。
注:FineBI 5.1.19 版本前,預設重複驗證欄位為名稱。
FineBI 5.1.19 版本及之後,預設重複驗證欄位為ID。
1)使用者資訊儲存位置
注:使用者資訊儲存在 FineDB 資料庫的表 中。
2)具體說明
使用者ID
部門ID
職務ID
角色ID
若選擇 ID,則同步「ID+名稱」欄位,所在表中的 ID 欄位值為同步使用者時伺服器資料集中的 ID
如果資料集中某 ID 對應的帳號發生修改,平台中帳號也會跟着修改,權限也會被繼承。部門,職位,角色同理
非樹資料集中,若重複驗證欄位選擇 ID ,那麼職務的 ID 、名稱都必須是一對一且唯一不重複的關係,同一 ID 對應多個名稱 、同一名稱對應多個 ID 都不允許。使用者,部門,角色同理
樹資料集中,使用者、職務、角色的名稱與 ID 必須是一對一且唯一不重複的關係
注:前臺看不到職務ID,只透過職務名稱來區分、配置權限等。如果出現同一部門下兩個不同id職務同名的情況,將無法區分和配置權限。故直接要求兩者都必須唯一 且 一一對應的關係,不滿足則直接同步失敗
帳號
部門名稱
職務名稱
角色名稱
如果修改資料集中某使用者的帳號,平台中帳號也會跟着修改,所對應使用者 ID 由系統隨機生成,新帳號的使用者會丟失之前單獨為該使用者配置的權限。同理,部門,職位,角色則會丟失繼承自部門/職務/角色的權限
若重複驗證欄位選擇職務名稱,那麼資料源中名稱相同但 ID 不同的職務會作為一個職務看待,若同一部門下有兩個名稱為「財務」的不同職務,會直接顯示為同一個職務,其下使用者也會合並顯示
但如果兩個「財務」屬於不同部門,則雖算作一個職務,但因部門-職務關係的不同,其下使用者不會合併在一起顯示。使用者,部門,角色同理
帳號、姓名、密碼、部門名稱、職務名稱、角色名稱、手機、郵箱為對應伺服器資料集中的欄位名稱。
注1:FineBI 5.1.2 版本及之後 ,郵箱支援包含符號‘#’和‘&’。
注2:FineBI 5.1.11 版本及之後,支援僅配置部門,不配置職務。
FineBI 5.1.11 版本之前,配置了部門,必須配置職務。
有兩種加密方式,「內建 SHA 加密」和「自訂密碼加密」。
1)內建 SHA 加密
適用場景:同步的伺服器資料集中的密碼為明文時,選擇內建 SHA 加密
加密簡介:數據決策系統採用 SHA256 加密方式,以保證密碼安全。使用者透過API自訂修改密碼後,會自動進行 SHA256 加密。
登入密碼:登入密碼即為本文 2.1 節使用者資訊表中的密碼,非 fine_user使用者表 中加密的密碼。
2)自訂密碼加密
適用場景:同步的伺服器資料集中的密碼為自訂加密後的密文,則必須使用自訂加密。
加密簡介:自訂密碼加密,即自訂一個密碼加密類。
加密方式在類中描述,並儲存在%BI_Home%\webapps\webroot\WEB-INF\classes資料夾中。
數據決策系統會在使用者自訂加密算法的基礎上再進行 SHA256 二次加密,以保證密碼安全。
登入密碼:登入密碼為伺服器資料集的密文解密之後的明文
注1:自訂加密範例詳情參見:簡單權限之密碼加密 。
注2:自訂加密算法,必須繼承 AbstractPasswordValidator 類,並加上傳回判斷明文密碼和密文密碼是否一致結果方法才可行。
注3:若勾選了「使用者可編輯」,且設定了加密方式,儲存成功後,再次更換加密方式,FineDB 中的密文無法同步更換,使用者將無法成功登入。
注4:修改同步使用者加密方式後無需重啓工程,立即生效。
4.7 使用者禁用狀態
5.1.20 及之後版本新增該設定項,方便管理者透過同步使用者資料管理使用者狀態。非必填項。
若需要使用該設定項,在第二章的資料源中新增一個欄位,欄位值為0/1。
0:禁用使用者
1:啟用使用者
1)若不配置該設定項,同步使用者的啟用/禁用可從平台手動配置。
2)若配置該設定項,同步使用者的啟用/禁用完全取決於資料源,不支援從平台手動配置。
注:手動新增的使用者仍可透過平台配置啟用/禁用狀態,不受影響。
同步完成後,同步使用者管理按鈕處,會新增三個下拉選項,如下圖所示:
點選後立即進行一次使用者資料集同步。
開啟同步使用者對話框,可修改同步使用者資料集配置。
請謹慎切換使用者來源,這會導致之前同步的使用者及其部門、職務、角色、權限等均被清空。若使用者堅持切換同步使用者來源資料集,在點選「確定」時,會提示「切換資料集後將清空原有同步資料,包括使用者及其部門、職務、角色、權限等,應答切換資料集?」
若未開啓 4.2 節「使用者可編輯」設定,支援管理者「禁用使用者」,不支援「編輯使用者」和「刪除使用者」。
若開啓了 4.2 節「使用者可編輯」設定,支援管理者「禁用使用者」和「編輯使用者」,不支援「刪除使用者」。
注:禁用、編輯、刪除使用者的操作,請參見 新增使用者 第 3、4、5 章
JAR 包版本在 2021-04-02 及之後的工程,新增「清空同步資料」按鈕,支援一鍵取消同步使用者。
清空同步資料將刪除所有同步的使用者、部門職務、角色、相關權限,且不再繼續同步,恢復未同步的狀態。
JAR 包版本在 2020-11-05 ~ 2021-04-02 之間的工程,同步的使用者與「手動新增/匯入的使用者」可並存。
不支援直接取消同步使用者,但可將 4.2 節同步的「伺服器資料集」切換為空資料集即可。
JAR 包版本在 2020-11-05 之前的工程,同步的使用者與「手動新增/匯入的使用者」不可並存。
如需取消同步使用者,執行「新增使用者」或「匯入使用者」的操作,即可取消同步使用者。
同步使用者高度依賴資料源,若資料源出現問題,例如被惡意清空資料庫表,會導致同步到系統中的使用者被清空,操作無法逆轉。
因此 FineBI 提供同步熔斷策略。5.1.15 及之後版本的 BI 工程,新增「異常資料中斷同步」按鈕。
管理者開啓「異常資料中斷同步」後,可設定使用者數量減少達到X%,停止同步。X為1-100的正整數。
例如系統中原有100個同步使用者(不包含手動新增/匯入的使用者數),設定為30%,即同步減少30(100*30%)個使用者及以上,就會停止本次同步。
同步失敗的提醒如下圖所示:
失敗提醒:
21300031 - 本次同步使用者數量將減少XX%(XX個),達到設定的中斷值XX%。請檢查資料源資料是否正常,或暫時關閉"異常資料中斷同步"功能。
系統會根據 4.1 節設定的「同步頻率」,提醒管理者下次自動同步的時間
在同步使用者過程中,可能會因為衝突出錯,導致部分或全部使用者、部門、職務、角色資料同步失敗,帶來權限沒有更新。
以上情況需要及時通知到對應的管理者,因此 5.1.14 及之後版本的工程,新增「同步失敗提醒」功能。
管理者登入數據決策系統,點選「管理系統>使用者管理>全局設定」,配置同步失敗提醒派送的接收人,點選「儲存」,如下圖所示:
注1:使用簡訊提醒之前需要先開通簡訊服務,開通方法參見文檔:簡訊 。
注2:使用郵件提醒之前需要先配置郵箱,具體步驟請參見:郵箱 。
系統會在「第一次」手動同步/自動同步失敗後,給管理者傳送簡訊/郵件/平台提醒。直到下一次同步成功為止,之後再同步失敗才會再次傳送提醒。
注:若多次連續同步失敗,只會在「第一次同步失敗」傳送提醒訊息。
直到出現「同步成功/重啓工程/關閉同步使用者」的情況,才會重置提醒監視狀態。
之後再次出現同步失敗才會再次傳送提醒。
1)簡訊提醒
2)平台訊息
3)郵件提醒