反馈已提交

网络繁忙

同步使用者

1. 概述

1.1 版本

BI 伺服器版本功能變更
6.0-

1.2 應用場景

一個企業的職工人數是相當多的,並且由於人員的流動性,使用者資訊一直在變化,如果每次都透過手動新增修改,工作量將會非常大。

使用者同步資料集功能可以實現動態更新平台中的使用者資訊,使之隨着資料庫中的使用者資訊一起變化。

1.3 功能簡介

管理者可以先建立伺服器資料集,設定定期從資料集同步使用者,保持使用者資訊即時更新。

1.4 注意事項

1)若設定了同步使用者,請勿輕易取消同步/調整同步資料源。因為角色使用者中間關係資料不會軟刪除,且無法恢復!!!

2)同步使用者時一些注意事項及報錯請參見:使用者同步時報錯整理

2. 準備同步使用者資料

同步的使用者資料來自伺服器資料集,支援使用者部門有層級和無層級兩種。

使用者可根據自身使用者結構選擇其中一種。

2.1 部門職務間無層級結構-SQL資料集

本節範例所用的使用者資訊表部門職務間無層級結構,如下圖所示:

2.1.1 準備使用者資訊表

準備一張使用者資訊表,表結構如下圖所示:

點選下載使用者資訊表: 導入使用者1.xlsx

注1:匯入使用者時,帳號、姓名、密碼為必填項,此外內容可以不填。

注2:使用者手機號碼支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號碼

         中國大陸手機號碼可自行選擇是否加區號,其他地區手機號碼需要加區號。

2.1.2 建立伺服器資料集

使用 Navicat 等第三方工具,將上表匯入資料庫,並建立系統與該資料庫的 資料連結 。下文將以 FRDemo 資料庫為例。

管理者登入FineBI系統,點選「管理系統>資料連結>伺服器資料集」,建立「SQL資料集」。如下圖所示:

設定資料集名稱為「同步使用者1」,資料連結選擇「FRDemo」,SQL 語句為:

select * from 匯入使用者1

2.2 部門職務間無層級結構-檔案資料集

本節範例所用的使用者資訊表部門職務間無層級結構。同步的使用者的部門都是並列在「所有部門」下,如下圖所示:

2.2.1 準備使用者資訊表

準備一張使用者資訊表,表結構如下圖所示:

點選下載使用者資訊表:導入使用者1.xlsx

注1:匯入使用者時,帳號、姓名、密碼為必填項,此外內容可以不填。

注2:使用者手機號碼支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號碼

         中國大陸手機號碼可自行選擇是否加區號,其他地區手機號碼需要加區號。

注3:也可使用 TXT / XML 檔案,設定方式請參見:檔案資料集 。

2.2.2 建立伺服器資料集

將該表儲存在本地,或者上傳至 BI 工程的%FR_HOME%\webapps\webroot\WEB-INF\reportlets目錄下。

管理者登入FineBI系統,點選「管理系統>資料連結>伺服器資料集」,建立「檔案資料集」。如下圖所示:

設定資料集名稱為「同步使用者-檔案」,選擇上文準備的表格。

注1:若選擇伺服器檔案,則選擇 BI 工程的 %BI_HOME%\webapps\webroot\WEB-INF\reportlets 目錄下的檔案。

        若選擇本地檔案,上傳後檔案自動儲存至 BI 工程的 %BI_HOME%\webapps\webroot\WEB-INF\reportlets\excel 目錄下。

注2:也可使用 TXT / XML / 遠端 URL 檔案,支援資料集參數,設定方式請參見:檔案資料集 。

2.3 部門職務間有層級結構-樹資料集

本節範例所用的使用者資訊表部門職務間有層級結構,如下圖所示:

2.3.1 準備使用者資訊表

準備一張使用者資訊表,表結構如下圖所示:

點選下載使用者資訊表導入使用者2.xls

注1:同步使用者資料集時,若伺服器資料集為樹資料集 ,頂層機構的父機構應為空值。如下圖所示的 Anna 使用者,fid 欄位為空。

注2:部門沒有使用者也是可以的,例如總部只有下屬部門,但沒有直屬職務和使用者,也是可以生成樹資料集和同步使用者的。

注3:使用者手機號碼支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號碼。

         中國大陸手機號碼可自行選擇是否加區號,其他地區手機號碼需要加區號。

2.3.2 建立SQL資料集

使用 Navicat 等第三方工具,將上表匯入資料庫,並建立系統與該資料庫的 資料連結 。下文將以 FRDemo 資料庫為例。

管理者登入FineBI系統,點選「管理系統>資料連結>伺服器資料集」,建立「SQL資料集」。如下圖所示:

設定資料集名稱為「同步使用者2」,資料連結選擇「FRDemo」,SQL 語句為:

select * from 部門職務間有層級結構

2.3.3 建立樹資料集

管理者登入FineBI系統,點選「管理系統>資料連結>伺服器資料集」,建立「樹資料集」。如下圖所示:

設定資料集名稱為「同步使用者-有層級」,構建自資料集「同步使用者2」,原始標記欄位為「did」,父標記欄位為「fid」,如下圖所示:

注:同步使用者樹資料集,僅支援依賴所選資料集的父標記欄位構建樹,不支援依賴所選資料集的標記欄位的長度構建樹。

3. 首次同步使用者更新設定

注1:本章是針對「之前從未進行過同步使用者」、「同步使用者未開啟狀態下執行首次同步操作」的資料更新規則 。

        若之前同步過使用者,在同步使用者開啟狀態下執行非首次同步操作將不會出現此節提示彈窗,也不會按照此節中更新規則進行同步 。

注2:同步的使用者與「手動新增/匯入的使用者」可並存。

管理者登入FineBI系統,點選「管理系統>使用者管理>所有使用者」,點選「同步使用者」。

跳出提示框「是否保留現有非同步資料,包括匯入/新增的使用者、部門職務、角色」,如下圖所示:

不同選擇對應的更新邏輯如下:

選擇
定義
保留

如果現有使用者不在同步的伺服器資料集中,該使用者資訊和權限將被保留,不修改

如果現有使用者在伺服器資料集中(帳號相同):

  • 該使用者的帳號不變,權限保留

  • 該使用者的姓名、密碼、手機、信箱改寫更新

  • 該使用者當前所屬的部門職務、角色若存在於同步伺服器集中,則改寫更新

  • 該使用者當前所屬的部門職務、角色若不存在於同步伺服器集中,則保留不變

清空

平台現有「手動新增/匯入的使用者」的帳號、姓名、密碼、手機、信箱、部門、職務、角色、權限均被刪除,重新同步使用者

注:根據選擇的更新邏輯,首次同步後有部分使用者資訊被更新 。

      之後能被自動更新的只有已變為同步類型的使用者 。

      之後的同步,資料集不能再改寫更新內建資料,否則將衝突報錯 。

4. 配置同步使用者

配置同步資料集資訊,如下圖所示:

4.1 同步頻率

支援透過兩種方式執行同步使用者操作:簡單重複執行、運算式設定。

注:同步使用者資料集的同步與資料準備區域的資料更新互不影響,資料更新時不會影響到同步使用者資料集的同步進度。

4.1.1 簡單重複執行

從伺服器資料集中自動同步使用者的間隔時間,預設為 43200 秒。

同步使用者設定了同步頻率,可自動進行多次同步,到達設定頻率後自動進行同步,不斷把伺服器資料集中變化的資料同步到平台。

注:同步頻率不宜過高,否則會導致後臺日誌不斷重新整理,日誌體積無限膨脹。

4.1.2 運算式設定

支援透過 Cron 運算式設定任務執行的時間點,該任務可以是每天重複執行,隔日重複執行或者是單次執行等等各種不同組合的觸發時間點。

Cron 運算式的文法和寫法請參見:Cron 運算式

4.2 使用者可編輯

「使用者可編輯」按鈕,該按鈕預設不勾選,勾選後,同步狀態下使用者資訊可編輯。

使用者可編輯姓名、密碼、手機、信箱,可使用 忘記密碼 功能,已存在使用者的以上欄位在自動同步/手動同步時將不再更新。具體功能如下表所示:

注1:密碼策略設定 對同步使用者生效。

注2:若未勾選「使用者可編輯」按鈕,但使用「忘記密碼」功能,在修改密碼時會出現提示:您的帳號無法修改密碼,如有疑問請聯絡管理者。

使用者身分說明
超級管理者

1)再次同步時,平台現存使用者的姓名、密碼、手機、信箱欄位將不再更新

2)可編輯平台現存使用者的姓名、手機、信箱、密碼,不可編輯角色

3)超管可在「帳號設定」處編輯姓名、密碼、手機、信箱

4)可在登入頁使用 忘記密碼 功能

次級管理者

1)可修改有權限使用者的姓名、手機、信箱、密碼,不可編輯角色

2)可在登入頁使用 忘記密碼 功能

3)次管可在「帳號設定」處編輯姓名、密碼、手機、信箱

普通使用者

1)同步使用者可在「帳號設定」處編輯姓名、密碼、手機、信箱

2)可在登入頁使用 忘記密碼 功能

4.3 使用者來源

選擇使用者資訊對應的來源。

1)伺服器資料集

同步使用者的來源可以是當前同步的這個伺服器資料集,不支援從多個伺服器資料集中同時同步。切換伺服器資料集後,清空之前同步資訊。

同步成功後,不支援修改同步使用者所屬同步部門職務、同步角色資訊,只能在伺服器資料集中修改。

2)從LDAP伺服器中同步

若同步使用者的認證方式選擇了「LDAP 認證」,透過安裝「同步LDAP域使用者」插件,在進行同步使用者設定的時候,可以直接選擇「從LDAP伺服器中同步」。

詳情請參見:同步LDAP域使用者

3)從企業微信同步

使用者配置了「微信管理」插件的「成員管理」後,可在使用者來源選擇「從企業微信同步」使用者資訊。選擇要同步的企業微信應用,即可。

注:在「微信管理>成員管理」設定通訊錄「立即更新」或設定定時「自動更新」,都會發生使用者同步。

詳情請參見:企業微信整合

4)從釘釘同步

使用者配置了「釘釘管理」插件的「成員管理」後,可在使用者來源選擇「從釘釘同步」使用者資訊。選擇要同步的釘釘應用,即可。

注:在「釘釘管理>成員管理」設定通訊錄「立即更新」或設定定時「自動更新」,都會發生使用者同步。

詳情請參見:釘釘管理插件

4.4 使用者重複驗證欄位

「重複驗證欄位」包含兩種驗證方式:名稱和 ID 。

注:預設重複驗證欄位為ID。

1)使用者資訊儲存位置

注:使用者資訊儲存在 FineDB 資料庫的表 中。

欄位資訊所在表
使用者ID、帳號fine_user
職務ID、職務名稱fine_post
部門ID、部門名稱fine_department
角色ID、角色名稱fine_custom_role

2)具體說明

重複驗證欄位邏輯場景備註

使用者ID

部門ID

職務ID

角色ID

若選擇 ID,則同步「ID+名稱」欄位,所在表中的 ID 欄位值為同步使用者時伺服器資料集中的 ID

如果資料集中某 ID 對應的帳號發生修改,平台中帳號也會跟着修改,權限也會被繼承。部門,職位,角色同理

非樹資料集中,若重複驗證欄位選擇 ID ,那麼職務的 ID 、名稱都必須是一對一且唯一不重複的關係,同一 ID 對應多個名稱 、同一名稱對應多個 ID 都不允許。使用者,部門,角色同理

樹資料集中,使用者、職務、角色的名稱與 ID 必須是一對一且唯一不重複的關係

注:前臺看不到職務ID,只透過職務名稱來區分、配置權限等。如果出現同一部門下兩個不同id職務同名的情況,將無法區分和配置權限。故直接要求兩者都必須唯一 且 一一對應的關係,不滿足則直接同步失敗

帳號

部門名稱

職務名稱

角色名稱

若選擇名稱,則同步「名稱」欄位,所在表中的 ID 欄位值將由系統隨機生成

如果修改資料集中某使用者的帳號,平台中帳號也會跟着修改,所對應使用者 ID 由系統隨機生成,新帳號的使用者會丟失之前單獨為該使用者配置的權限。同理,部門,職位,角色則會丟失繼承自部門/職務/角色的權限

若重複驗證欄位選擇職務名稱,那麼資料源中名稱相同但 ID 不同的職務會作為一個職務看待,若同一部門下有兩個名稱為「財務」的不同職務,會直接顯示為同一個職務,其下使用者也會合並顯示

但如果兩個「財務」屬於不同部門,則雖算作一個職務,但因部門-職務關係的不同,其下使用者不會合併在一起顯示。使用者,部門,角色同理

4.5 欄位名稱

帳號、姓名、密碼、部門名稱、職務名稱、角色名稱、手機、信箱為對應伺服器資料集中的欄位名稱。

注1:信箱支援包含符號‘#’和‘&’。

注2:支援僅配置部門,不配置職務。

4.6 加密方式

有兩種加密方式,「內建 SHA 加密」和「自訂密碼加密」。

1)內建 SHA 加密

適用場景:同步的伺服器資料集中的密碼為明文時,選擇內建 SHA 加密

加密簡介:FineBI系統採用 SHA256 加密方式,以保證密碼安全。使用者透過API自訂修改密碼後,會自動進行 SHA256 加密。

登入密碼:登入密碼即為本文 2.1 節使用者資訊表中的密碼,非 fine_user使用者表 中加密的密碼。

2)自訂密碼加密

適用場景:同步的伺服器資料集中的密碼為自訂加密後的密文,則必須使用自訂加密。

加密簡介:自訂密碼加密,即自訂一個密碼加密類。

                 加密方式在類中描述,並儲存在%BI_Home%\webapps\webroot\WEB-INF\classes資料夾中。

                 FineBI系統會在使用者自訂加密算法的基礎上再進行 SHA256 二次加密,以保證密碼安全。

登入密碼:登入密碼為伺服器資料集的密文解密之後的明文

注1:自訂加密範例詳情參見:簡單權限之密碼加密 。

注2:自訂加密算法,必須繼承 AbstractPasswordValidator 類。

注3:若勾選了「使用者可編輯」,且設定了加密方式,儲存成功後,再次更換加密方式,FineDB 中的密文無法同步更換,使用者將無法成功登入。

注4:修改同步使用者加密方式後無需重啟工程,立即生效。

4.7 使用者禁用狀態

該設定項,方便管理者透過同步使用者資料管理使用者狀態。非必填項。

若需要使用該設定項,在第二章的資料源中新增一個欄位,欄位值為0/1。

  • 0:禁用使用者

  • 1:啟動使用者

1)若不配置該設定項,同步使用者的啟動/禁用可從平台手動配置。

2)若配置該設定項,同步使用者的啟動/禁用完全取決於資料源,不支援從平台手動配置。

注:手動新增的使用者仍可透過平台配置啟動/禁用狀態,不受影響。

5. 同步使用者管理

同步完成後,同步使用者管理按鈕處,會新增三個下拉選項,如下圖所示:

5.1 立即同步

點選後立即進行一次使用者資料集同步。

5.2 編輯

開啟同步使用者對話框,可修改同步使用者資料集配置。

  • 請謹慎切換使用者來源,這會導致之前同步的使用者及其部門、職務、角色、權限等均被清空。若使用者堅持切換同步使用者來源資料集,在點選「確定」時,會提示「切換資料集後將清空原有同步資料,包括使用者及其部門、職務、角色、權限等,確認切換資料集?」


  • 若未開啟 4.2 節「使用者可編輯」設定,支援管理者「禁用使用者」,不支援「編輯使用者」和「刪除使用者」。

  • 若開啟了 4.2 節「使用者可編輯」設定,支援管理者「禁用使用者」和「編輯使用者」,不支援「刪除使用者」。

       注:禁用、編輯、刪除使用者的操作,請參見 新增使用者 第 3、4、5 章 

5.3 清空同步資料

「清空同步資料」按鈕,支援一鍵取消同步使用者。

清空同步資料將刪除所有同步的使用者、部門職務、角色、相關權限,且不再繼續同步,恢復未同步的狀態。

5.4 異常資料中斷同步

同步使用者高度依賴資料源,若資料源出現問題,例如被惡意清空資料庫表,會導致同步到系統中的使用者被清空,操作無法逆轉。

因此 FineBI 提供同步熔斷策略,新增「異常資料中斷同步」按鈕。

管理者開啟「異常資料中斷同步」後,可設定使用者數量減少達到X%,停止同步。X為1-100的正整數。

例如系統中原有100個同步使用者(不包含手動新增/匯入的使用者數),設定為30%,即同步減少30(100*30%)個使用者及以上,就會停止本次同步。

同步失敗的提醒如下圖所示:

失敗提醒:21300031 - 本次同步使用者數量將減少XX%(XX個),達到設定的中斷值XX%。請檢查資料源資料是否正常,或暫時關閉"異常資料中斷同步"功能。

5.5 下次同步時間

系統會根據 4.1 節設定的「同步頻率」,提醒管理者下次自動同步的時間

6. 同步失敗提醒

在同步使用者程式中,可能會因為衝突出錯,導致部分或全部使用者、部門、職務、角色資料同步失敗,帶來權限沒有更新。

以上情況需要即時通知到對應的管理者,因此FineBI提供「同步失敗提醒」功能。

6.1 設定方法

管理者登入FineBI系統,點選「管理系統>使用者管理>全局設定」,配置同步失敗提醒推播的接收人,點選「儲存」,如下圖所示:

注1:使用簡訊提醒之前需要先開通簡訊服務,開通方法參見文檔:簡訊 。

注2:使用郵件提醒之前需要先配置信箱,具體步驟請參見:信箱 。

6.2 效果預覽

系統會在「第一次」手動同步/自動同步失敗後,給管理者傳送簡訊/郵件/平台提醒。直到下一次同步成功為止,之後再同步失敗才會再次傳送提醒。

注:若多次連續同步失敗,只會在「第一次同步失敗」傳送提醒訊息。

       直到出現「同步成功/重啟工程/關閉同步使用者」的情況,才會重置提醒監視狀態。

       之後再次出現同步失敗才會再次傳送提醒。

1)簡訊提醒

2)平台訊息

3)郵件提醒

附件列表


主题: 管理系統
已经是第一篇
已经是最后一篇
  • 有帮助
  • 没帮助
  • 只是浏览
中文(繁體)

售前咨询电话

400-811-8890转1

在线技术支持

在线QQ:800049425

热线电话:400-811-8890转2

总裁办24H投诉

热线电话:173-1278-1526

文 档反 馈

鼠标选中内容,快速反馈问题

鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

不再提示

10s后关闭