1. 概述
1.1 版本
報表伺服器版本 | 後台單點登入插件 | 功能變動 |
---|---|---|
11.0 | V1.0.0 | - |
V1.1.0 |
| |
11.0.4 | V1.1.1 |
|
11.0.16 | V1.2.2 | 適配新視覺風格 |
1.2 功能簡介
安裝「後台單點登入插件」後,即可實現後台單點,無需複雜程式碼,操作簡單。
插件提供兩種後台單點登入方案:
方案一:帳號不加密,可存取 http://ip:埠號/工程名/decision?fine_username=帳號實現單點登入。
方案二:帳號加密,可存取http://ip:port/工程名/decision?ssoToken=xxx(對帳號加密並轉碼後得到的結果)實現單點登入。並提供 ssoToken 逾時設定功能,開啟後,sso Token 將在達到「系統管理>登入>登入逾時時間」後過期。
2. 插件介紹
2.1 插件下載
後台單點登入插件下載請點選:後台單點登入插件
設計器插件安裝方法請參見:設計器插件管理
伺服器安裝插件方法請參見:伺服器插件管理
2.2 頁面介紹
插件安裝後,超管進入平台,點選「管理系統>系統管理」,出現整合後台單點登入頁面。如下圖所示:
注:只有超管可見配置頁面。
3. 方案一:帳號不加密
3.1 設定帳號不加密
插件安裝成功後,選擇「範例API>儲存」。如下圖所示:
注:插件 V1.0.0 版本,忽略該步驟。
3.2 效果預覽
存取http://ip:埠號/工程名/decision?fine_username=帳號,「帳號」為任意平台已存在且可用的帳號。如下圖所示:
4. 方案二:帳號加密
注:該方案不再支援存取http://ip:埠號/工程名/decision?fine_username=帳號實現後台單點登入,支援的存取路徑請參見本文 4.5 節。
「後台單點登入插件」支援使用 RSA Key 對帳號加密來提升使用者的安全性。
4.1 生成 RSA Key
插件 V1.1.0 版本安裝後,Public Key 自動生成。如下圖所示:
注:插件 V1.0.0 版本,需要點選「生成RSA Key」按鈕。
需注意以下幾點:
只支援生成預設 key ,不支援自訂。
生成 Public Key 後,點選「生成 RSA Key」,可重新生成且改寫之前的 Key 。
生成的 key 只支援 aes 傳輸加密,安裝 base64 插件無效,也不支援國密。
4.2 帳號加密
將生成的 RSA KEY 和帳號放到使用者自己的加密程式碼中,對帳號進行加密。
1)此處用加密網站進行加密(不提供範例網站,可自行百度),實際使用者建議使用自己加密程式碼進行加密。
2)加密步驟如下圖所示:
4.3 帳號解密測試
將加密後的帳號,輸入到「解密測試」中,若能成功解密出帳號,代表加解密的流程是正確的。如下圖所示:
4.4 帳號轉碼
加密後的帳號需要轉碼才能嵌入 URL 中,使用者可使用encodeURIComponent對加密帳號進行轉碼。
本文範例使用 轉碼網站 進行轉碼,如下圖所示:
4.5 效果查看
存取連結:http://ip:port/工程名/decision?ssoToken=xxx(編碼後的結果),實現帳號加密的後台單點登入。如下圖所示:
4.6 ssoToken 逾時設定
V1.1.0 版本新增該功能,預設不開啟。
開啟後,ssoToken 需要傳入時間戳和帳號,重新生成,詳情請參見:後台單點登入RSA範例程式碼
ssoToken 將在達到「系統管理>登入> 登入逾時 」後過期。
如果使用過期的 ssoToken 單點登入數據決策系統,將報錯:登入逾時,請重新登入。如下圖所示:
5. 注意事項
5.1 透程式式碼生成ssoToken
本文第四節中 ssoToken 的生成需要使用者手動進行加密,在實際應用中,可使用程式碼自動生成 ssoToken,詳情請參見:後台單點登入RSA範例程式碼
5.2 Decryption error
問題描述:
在新計算引擎情況下連結 ssoToken ,透過存取連結http://ip:port/工程名/decision/view/report?viewlet=WorkBook.cptx&ssoToken=xxx在單點登入後跳轉至 cptx 範本,解密失敗,出現報錯:ERROR [standard] Decrypt failed:Decryption error
原因分析:
FineReport 11.0.4 以及後台單點登入插件 V1.1.1 之前版本的新計算引擎請求無法適配 ssoToken 。
解決方案 1:將 cptx 格式的範本嵌入到 frm 格式的決策報表中,後台單點登入時對 frm 範本進行校驗登入。
解決方案 2:開啟 cptx 格式範本的範本認證,透過 cpt 格式範本的載入結束事件跳轉至 cptx 範本,後台單點登入時對 cpt 範本進行校驗登入