反饋已提交

網絡繁忙

使用者管理-同步使用者

1. 概述

1.1 版本

報表伺服器版本

JAR

功能變動

10.0

-

-

10.0

2019-12-05

【郵箱】支援包含符號【#】和【&】。

10.0

2020-06-08

新增使用者可編輯選項,勾選後,同步狀態下使用者資訊可編輯 勾選後,同步使用者可編輯姓名、密碼、手機、郵箱,可使用 忘記密碼 功能。已存在使用者的以上欄位在定期同步時將不再更新。 詳情請參見本文第四章第2節。

10.0.10

-

支援多源使用者,在新增/匯入使用者存在狀態下可【同步使用者】,平台多種型別使用者可並存。

10.0.11

-

定時同步頻率支援使用運算式。

10.0.12

-

支援使用【檔案資料集】同步使用者。 使用者手機號支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號。

10.0.14

-

第五章第3節,支援清空同步資料。 同步使用者時,支援僅配置部門,不配置職務。

10.0.17

-

第6章,新增【同步失敗提醒】。

10.0.18

-

第五章第4節,新增【異常資料中斷同步】。

10.0.19

2021-10-14

第四章第3節,【伺服器資料集】配置更名為【使用者來源】。

報表伺服器版本微信管理插件版本釘釘管理插件版本功能變更
11.0---
11.0.1--重複驗證字段的默認方式從「名稱」改爲「ID」,詳情請參見 4.4 節
11.0.2V11.0.54V11.0.54
  • 新增「同步禁用狀态」配置項,詳情請參見 4.7 節

  • 微信、釘釘集成支持同步用戶信息到平台,詳情請參見 4.3 節

1.2 應用場景

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

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

1.3 功能簡介

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

1.4 注意事項

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

同步使用者時一些注意事項及報錯請參見:同步/匯入使用者常見問題

2. 準備用戶數據

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

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

2.1 部門職務間無層級結構-SQL 數據集

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

2.1.1 準備用戶信息表

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

點選下載使用者資訊表。匯入使用者.xlsx

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

注2:10.0.12 之前的報表工程版本,僅支援綁定中國大陸手機號,手機號無需加區號。10.0.12 及之後的報表工程版本,使用者手機號支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號。中國大陸手機號可自行選擇是否加區號,其他地區手機號需要加區號。


2.1.2 建立伺服器資料集

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

管理者登入數據決策系統,點選【管理系統】→【資料連結】→【伺服器資料集】,建立【SQL資料集】。如下圖所示。

 

設定資料集名稱為【同步使用者1】,資料連結選擇【FRDemoTW】,SQL 語句為:

select * from 匯入使用者1


2.2 部門職務間無層級結構-文件數據集

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

2.2.1 準備2.2.1使用者資訊表

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

點選下載使用者資訊表。匯入使用者 (1).xlsx

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

注2:10.0.12 之前的報表工程版本,僅支援綁定中國大陸手機號,手機號無需加區號。10.0.12 及之後的報表工程版本,使用者手機號支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號。中國大陸手機號可自行選擇是否加區號,其他地區手機號需要加區號。

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

 

2.2.2 建立伺服器資料集

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

管理者登入數據決策系統,點選【管理系統】→【資料連結】→【伺服器資料集】,建立【檔案資料集】。如下圖所示。

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

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

2.3.1 準備使用者資訊表

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

點選下載使用者資訊表。部門職務間有層級結構.xls

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

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

注3:10.0.12 之前的報表工程版本,僅支援綁定中國大陸手機號,手機號無需加區號。10.0.12 及之後的報表工程版本,使用者手機號支援綁定中國大陸、中國臺灣、中國香港、土耳其、韓國、日本、新加坡、馬來西亞手機號。

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

2.3.2 建立SQL資料集

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

管理者登入數據決策系統,點選【管理系統】→【資料連結】→【伺服器資料集】,建立【SQL資料集】。如下圖所示。 

設置數據集名稱爲「同步用戶2」,數據連接選擇「FRDemo」,SQL 語句爲:

select * from 同步使用者2

2.3.3 建立樹資料集

管理者登入數據決策系統,點選【管理系統】→【資料連結】→【伺服器資料集】,建立【樹資料集】。如下圖所示:


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


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

註1:本章是針對【之前從未進行過同步使用者】、【同步使用者未開啓狀態下執行首次同步操作】的資料更新規則。若之前同步過使用者,在同步使用者開啓狀態下執行非首次同步操作將不會出現此節提示彈窗,也不會按照此節中更新規則進行同步。

註2:JAR 包版本在 2020-11-02 及之後的工程,同步的使用者與【手動新增/匯入的使用者】可並存。

3.1 JAR 包版本在 2020-11-02 之前。

  1. 管理者登入數據決策系統,點選【管理系統】→【使用者管理】→【所有使用者】,點選【同步使用者】

  2. 跳出【使用者更新設定】提示框,如下圖所示。

  3. 不同選擇對應的更新邏輯如下表格所示。

注:根據選擇的更新邏輯,首次同步後有部分使用者資訊被更新。之後能被自動更新的只有已變為同步型別的使用者。之後的同步,資料集不能再改寫更新內建資料,否則將衝突報錯。

  

選擇
定義

僅更新現有使用者基本資訊,不改變權限等設定。

如果現有使用者不在同步的伺服器資料集中,該使用者會被刪除。

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

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

  • 該使用者的姓名、密碼、手機、郵箱、部門、角色改寫更新。

  • 伺服器資料集中不存在的部門會被刪除。

清空現有使用者資訊及權限等設定,重新寫入。

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

伺服器資料集中不存在、平台現有的角色仍然保留。

3.2 JAR 包版本在 2020-11-02 之後。

  1. 管理者登入數據決策系統,點選【管理系統】→【使用者管理】→【所有使用者】,點選【同步使用者】

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

  3. 不同選擇對應的更新邏輯如下表格所示。

注:根據選擇的更新邏輯,首次同步後有部分使用者資訊被更新。之後能被自動更新的只有已變為同步型別的使用者。之後的同步,資料集不能再改寫更新內建資料,否則將衝突報錯。

選擇

定義

保留

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

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

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

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

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

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

清空

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

4. 配置同步使用者

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

 

4.1 同步頻率

版本在 10.0.11 之前的工程,支援簡單重複執行同步使用者操作。

版本在 10.0.11 及之後的工程,支援透過兩種方式執行同步使用者操作:簡單重複執行、運算式設定。

4.1.1 簡單重複執行

從伺服器資料集中自動同步使用者的間隔時間,預設為【 43200 秒】。同步使用者設定了同步頻率,可自動進行多次同步,到達設定頻率後自動進行同步,不斷把伺服器資料集中變化的資料同步到平台。


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

 

4.1.2 運算式設定

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

4.2 使用者可編輯

2020-06-08 及之後的 JAR 新增【使用者可編輯】按鈕,該按鈕預設不勾選,勾選後,同步狀態下使用者資訊可編輯。

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

注1:JAR 包版本在 2020-06-08 到 2020-11-02 之間的系統,使用者同步後,除 忘記密碼功能 可使用外,密碼策略功能 對同步使用者不生效。JAR 包版本在 2020-11-02 及之後的系統,密碼策略功能 對同步使用者生效。

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

使用者身份
說明

超級管理者

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

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

3)超管可在【帳號設定】處編輯姓名、密碼、手機、郵箱。

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

次級管理者

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

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

3)次管可在【帳號設定】處編輯姓名、密碼、手機、郵箱。

普通使用者

1)同步使用者可在【帳號設定】處編輯姓名、密碼、手機、郵箱。

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

4.3 使用者來源

1)伺服器資料集

同步使用者的來源可以是當前同步的這個伺服器資料集,不支援從多個伺服器資料集中同時同步。切換伺服器資料集後,清空之前同步資訊。同步成功後,不支援修改同步使用者所屬同步部門職務、同步角色資訊,只能在伺服器資料集中修改。

2)從LDAP伺服器中同步

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

3)從企業微信同步

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

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

詳情請參見:企業微信集成

4)從釘釘同步

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

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

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

4.4 使用者重複驗證欄位

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

注:FineReport 11.0.1 版本前,默認的重複驗證字段爲名稱。

       FineReport 11.0.1 版本及之後,默認的重複驗證字段爲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:2019-12-05 及之後的 JAR ,郵箱支援包含符號【#】和【&】。

注2:10.0.14 版本及之後的報表工程,支援僅配置部門,不配置職務。10.0.14 版本之前的報表工程,配置了部門,必須配置職務。

4.6 加密方式

有兩種加密方式,「内置 SHA 加密」和「自定義密碼加密」。

1)內建 SHA 加密

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

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

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

2)自訂密碼加密

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

加密簡介:自訂密碼加密,即自訂一個密碼加密類。加密方式在類中描述,並儲存在%BI_Home%\webapps\webroot\WEB-INF\classes檔案夾中。數據決策系統會在使用者自訂加密算法的基礎上再進行 SHA256 二次加密,以保證密碼安全。

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

注1:自訂加密範例詳情參見:密碼加密設定 。

注2:自訂加密算法,必須繼承 AbstractPasswordValidator 類,並加上傳回判斷明文密碼和密文密碼是否一致結果方法才可行。

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

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

4.7 使用者禁用狀態

11.0.2 及之後版本新增該設定項,方便管理者透過同步使用者資料管理使用者狀態。非必填項。

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

0:禁用使用者

1:啟用使用者

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

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

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

5. 同步使用者管理

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

 

5.1 立即同步

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

5.2 編輯

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

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

  • 若未開啓第四章第2節【使用者可編輯】設定,支援管理者【禁用使用者】,不支援【編輯使用者】和【刪除使用者】。

  • 若開啓了第四章第2節節【使用者可編輯】設定,支援管理者【禁用使用者】和【編輯使用者】,不支援【刪除使用者】。

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

  5.3 清空同步資料

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

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

5.4 異常資料中斷同步

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

因此 FineReport 提供同步熔斷策略。10.0.18 及之後版本的報表工程,新增【異常資料中斷同步】按鈕。

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

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

失敗提醒:

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

 

5.5 下次同步時間

系統會根據第四章第1節設定的【同步頻率】,提醒管理者下次自動同步的時間。

6. 同步失敗提醒

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

以上情況需要及時通知到對應的管理者,因此10.0.17 及之後版本的工程,新增【同步失敗提醒】功能。

6.1 設定方法

理者登入數據決策系統,點選【管理系統】→【使用者管理】→【全局設定】,配置同步失敗提醒推送的接收人,點選【儲存】,如下圖所示。

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

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

 

6.2 效果預覽

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

注:若多次連續同步失敗,只會在【第一次同步失敗】傳送提醒消息。

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

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

1)簡訊提醒

2)平台訊息

 

3)郵件提醒



附件列表


主題: 數據決策系統
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉