當前為10.0版本文檔,更多實例內容將在最新幫助文檔中展現,點選跳轉至 最新版幫助文檔

LDAP 認證

1. 概述

1.1 版本

報表服務器版本
10.0

1.2 應用場景

用戶在 LDAP 認證服務器存儲了較爲完整的員工信息,且已經使用它進行了多個線上系統的認證。

用戶需要在數據決策系統中使用同樣的認證方法,可在數據決策系統的「管理系統>用戶管理>全局設置」處開啓 LDAP 認證。

1.3 功能簡介

平台提供 LDAP 認證,用戶可按照本文方法在數據決策系統中設置 LDAP 認證。

LDAP 認證,用戶登錄時,平台将輸入的用戶名信息到設置的 LDAP 系統進行認證。

  • 若 LDAP 系統認證失敗,則平台判斷認證失敗;

  • 若 LDAP 系統認證成功,但是對應的用戶不存在於平台用戶中,則平台判斷認證失敗;

  • 若 LDAP 系統認證成功,且對應的用戶存在於平台用戶中,則平台判斷認證成功,可進入平台,按照該用戶在平台中的權限進行相應操作。

注:超級管理員不受 LDAP 認證的影響,依舊使用平台内置認證。

2. 示例

2.1 配置 LDAP 認證

1)以管理員身份進入數據決策系統,點擊「管理系統>用戶管理>全局設置」,可選擇認證方式。如下圖所示:

1585201183615187.png

2)認證方式選擇「LDAP 認證」,輸入各個參數,點擊「保存」按鈕,退出數據決策系統,需重新登錄。如下圖所示:

3.png

LDAP 認證時各參數項說明如下表所示:

參數項說明
URL

URL 是登錄 LDAP 服務器的入口,URL 由域名或 IP 與端口号組成,一般端口号默認爲 389。URL 格式爲: LDAP://域名或IP+端口号

檢索位置

LDAP 是一個樹結構存儲數據的服務器,通過 URL 進入服務器,通過用戶、密碼驗證後,進行檢索相關登錄信息,「檢索位置」即存儲該登錄信息的位置

  • 勾選「不将檢索位置作爲 BaseDN」:只寫到根目錄會自動檢索其下面的子目錄,效率比較低

  • 不勾選「不将檢索位置作爲 BaseDN」:從根目錄一直寫到子目錄,不需要檢索,速度較快

認證方式

指定 LDAP 目錄服務器所使用的認證類型,根據  LDAP 服務器的配置選擇,一般認證方式選擇「simple」

  • 認證方式選擇 none 時,爲匿名認證,即平台用戶輸入任意密碼都能正常登錄

  • 認證方式選擇 simple 時,使用 LDAP 服務器中存儲的普通明文密碼認證

前後關系

初始上下文工廠的類名

一般選擇「com.sun.jndi.ldap.LdapCtxFactory」-對於基於 LDAP 服務器的目錄服務

轉診

根據  LDAP 服務器的配置選擇,一般選擇「ignore」

用戶名後綴

用戶名後綴可以添加也可以不添加,若添加,登錄時自動添加上相應的域名

例如 LDAP 服務器裏有個用戶叫Alice@fanruan.com,用戶名後綴設置爲@fanruan.com,登錄的時候用戶名輸入Alice即可

管理員名稱/密碼

此處管理員名稱并非指 LDAP 服務器的管理員名稱,而是指具有 LDAP 服務器檢索權限的用戶。通過該用戶進入 LDAP 服務器對檢索位置進行登錄信息檢索來實現認證。

通常這裏采用的是「域名/用戶名」的方式來進行識别。無論是 uid 或 cn 的方式都可以,但一般不使用 DN 域名的寫法

  • 若「管理員名稱」處填寫的不是 LDAP 服務器管理員,而是 LDAP 服務器中賦予了檢索權限的普通用戶,那麽必須要設置成「用戶名+域名」的形式,例如用戶是ldap,「檢索位置」爲 DC=test,DC=com,那麽管理員名稱爲 ldap@test.com

  • 若「管理員名稱」處填寫的是 LDAP 服務器管理員,直接填寫名稱即可,如上述示例中的「administrator」

2.2 添加用戶

LDAP 服務器裏一般存儲着用戶的員工列表,想要其中的某用戶能在平台使用 LDAP 認證登錄,平台也需要添加一個同名用戶,因爲綁定郵箱、分配權限等平台操作都是以平台用戶爲作用對象的。

當平台裏的對應用戶存在時,可以認爲啓用 LDAP 認證只是将該平台用戶的密碼認證從默認的平台内置認證改成了 LDAP 服務器認證。

點擊「管理系統>用戶管理>添加用戶」,添加用戶「test001」,如下圖所示:

注1:LDAP 認證配置「添加用戶」時,不需要配置密碼。

注2:同步的用戶,導入/添加的用戶,可分别選擇不同的認證方式。

4.png

2.3 效果查看

若 LDAP 系統認證成功,且對應的用戶存在於平台用戶中,則平台判斷認證成功,可進入數據決策系統,按照該用戶在平台中的權限進行相應操作。如下圖所示:

注1:若在平台中不存在輸入的用戶名,或平台中對應的用戶被鎖定,則不與 LDAP 服務器進行通信,直接提示「用戶名或密碼錯誤」或「用戶不可用」。

注2:LDAP 服務器中存儲的用戶名,不可使用雙字節日語、繁體中文或朝鮮文字符。否則在平台登錄時提示「用戶名或密碼錯誤」。

         LDAP 服務器中存儲的密碼,不可使用雙字節日語、繁體中文、簡體中文或朝鮮文字符。否則在平台登錄時提示「用戶名或密碼錯誤」。

5.png

3. 注意事項

3.1 測試 LDAP 連接成功

在數據決策系統中配置 LDAP 認證後,不能确定 LDAP 連接是否成功,執行本文 2.3 章節時,可能會出現用戶無法正常登錄或登錄緩慢的問題,可按照本章方法定位問題。

注:确保本地有 Java 環境。

1)下載右側壓縮包并解壓:LDAPDemo.zip

2)打開「LDAPDemo.java」文件,根據實際情況修改平台 LDAP 配置頁面的配置項,如下圖所示:

注:管理員名稱中若包含以下字符: '"', '+',',',';','<','>','\' ,在 LDAPDemo 中需要轉義。
例:用戶名爲 fanruan\admin,LDAPDemo 中需要輸入 fanruan\\admin。決策平台輸入無需轉義,直接輸入 fanruan\admin 即可。

21.png

3)切換到 LDAP 文件目錄下,執行:javac -encoding utf-8 LDAPDemo.java,生成一個LDAPDemo.class

然後再執行:java LDAPDemo,如果返回的是測試成功,則表示 LDAP 認證正常,否則根據提示進一步定位問題。如下圖所示:

3.2 9.0 升級 10.0 後 LDAP 認證失敗

問題描述:

FineReport 由 9.0 升級到 10.0 之後,用戶使用 LDAP 認證登錄失敗,登錄頁面顯示報錯信息username does not exist

原因分析:

9.0 升級到 10.0 後 LDAP 登錄認證邏輯發生了改變。

以用戶名 User,LDAP 認證後綴 fr.com 爲例對認證邏輯進行分析:

FineReport 9.0:首先将用戶名 User 加上後綴 fr.com 檢索平台是否存在該用戶,然後進行 LDAP 認證流程。

FineReport 10.0:首先根據用戶名 User 檢索是否存在該用戶,然後再加上後綴 fr.com 進行LDAP認證流程。

解決方案:

方案一:将用戶管理下 LDAP 配置頁面的用戶名後綴去掉不用,用戶使用用戶名@後綴名即可正常登錄。

方案二:将每個用戶的用戶後綴名都去掉,用戶使用用戶名即可正常登錄。

附件列表


主題: 原簡體文檔
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽

文 檔回 饋

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

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

不再提示

10s後關閉

反饋已提交

網絡繁忙