-
當企業已有 OA 系統、統一門戶或其他內部平台,希望使用者在這些系統中點選連結即可直接進入 FineReport 報表,無需再次登入 。
後台單點登入(SSO,Single Sign-On)的核心思路是:由第三方系統(如 OA、門戶等)構造一個攜帶身分資訊的特殊 URL,使用者點選後直接存取 FineReport,FineReport 從 URL 參數中提取並驗證身分資訊,驗證透過後自動完成登入,無需使用者手動輸入帳號密碼 。
安裝「後台單點登入插件」後,即可實現後台單點登入,無需編寫複雜程式碼,操作簡單 。插件提供以下兩種後台單點登入方案:
支援 ssoToken 逾時設定,開啟後,sso Token 將在達到「系統管理>登入>登入逾時時間」後過期
後臺單點登入插件下載請點選:後臺單點登入插件
插件安装方法请参见:插件安裝
注:1.2.1 之前版本的「SAML 單點登入」插件與「後台單點登入」插件因底層使用相同 Filter 而存在天然衝突,不支援同時啟動,否則重啟工程後可能導致登入功能異常;
1.2.1 及之後版本的「SAML 單點登入」已實現與「後台單點登入」插件兼容,可同時啟用。
插件安裝後,超管進入平台,點選「管理系統>系統管理」,出現整合後臺單點登入頁面。如下圖所示:
注:只有超管可見配置頁面。
插件安裝成功後,選擇「範例API>儲存」。如下圖所示:
瀏覽器存取http://ip:埠號/工程名/decision?fine_username=帳號,「帳號」為任意平台已存在且可用的帳號。如下圖所示:
注:該方案不再支援存取http://ip:埠號/工程名/decision?fine_username=帳號
實現後臺單點登入,支援的存取路徑請參見本文 4.5 節。
「後臺單點登入插件」支援使用 RSA Key 對帳號加密來提高安全性。
插件安裝後,Public Key 自動生成。如下圖所示:
需注意以下幾點:
只支援生成預設 key ,不支援自訂。
生成 Public Key 後,點選「生成 RSA Key」,可重新生成且改寫之前的 Key 。
生成的 key 只支援 aes 傳輸加密,安裝 base64 插件無效,也不支援國密。
將生成的 RSA KEY 和帳號放到使用者自己的加密代碼中,對帳號進行加密。
1)此處用 加密網站 進行加密,實際使用者建議使用自己加密代碼進行加密。
2)如果開啟了 4.6 節的「ssoToken逾時設定」功能,加密時要用「帳號+當前毫秒時間戳」,具體可參見:後台單點登入RSA範例程式碼。
3)加密步驟如下圖所示:
將加密後的帳號,輸入到「解密測試」中,若能成功解密出帳號,代表加解密的流程是正確的。如下圖所示:
加密後的帳號需要轉碼才能嵌入 URL 中,使用者可使用encodeURIComponent對加密帳號進行轉碼。
本文範例使用 轉碼網站 進行轉碼,如下圖所示:
瀏覽器存取連結:http://ip:port/工程名/decision?ssoToken=xxx(編碼後的結果),實現帳號加密的後臺單點登入。如下圖所示:
ssoToken 逾時設定功能預設不開啟,開啟後,ssoToken 將在達到「系統管理>登入> 登入逾時時間 」後過期。
如果使用過期的 ssoToken 單點登入 FineBI 系統,將報錯:登入逾時,請重新登入。如下圖所示:
注:如果開啟了「ssoToken逾時設定」功能,4.2節加密時要用「帳號+當前毫秒時間戳」,具體可參見:後台單點登入RSA範例程式碼。
本文第四節中 ssoToken 的生成需要使用者手動進行加密,在實際應用中,可使用代碼自動生成 ssoToken,詳情請參見:後臺單點登入RSA範例代碼
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙