天天看點

開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限

 本文介紹O2OA服務管理中,接口的權限設定和調用方式。

适用版本:5.4及以上版本

具有服務管理設計權限的使用者(具有ServiceManager角色或Manager角色)打開“服務管理平台”,進入接口配置視圖,點選左上角的建立按鈕,可建立一個新的接口。

開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限
開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限

建立接口後,在右側屬性欄中有兩個配置和調用權限有關,一個是“允許通路的位址表達式”,一個收是“啟用鑒權”。

開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限
開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限

此處允許輸入一個正規表達式,用來比對調用接口的用戶端的Remote_Addr,隻有比對通過,接口才允許執行。例如隻允許172.16.1.50到172.16.1.56位址調用接口,可以在此處輸入:

此處選擇“是”的話,就需要在調用接口時傳入client名稱和一個加密後的token。是以我們先需要一組鑒權配置。

具有管理者權限的使用者(具有Manager角色),打開“系統設定”-“系統SSO配置”,找到“鑒權配置”。

開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限
開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限

點選“添加鑒權配置”:

開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限
開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限

此處需要配置一個名稱和密鑰。

名稱:可随意填寫,就是我們在調用接口或進行SSO時要傳入的client參數。

密鑰:可随意填寫,用于後續加密,最少8位。

此處我們假設名稱填寫:oa;密鑰填寫:platform

填寫完成後确定。

開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限

然後我們就可以使用此鑒權配置來調用接口了。

接口調用的的位址在接口屬性欄中有顯示:

開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限
開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限

當啟用鑒權後的接口調用位址為:

http://develop.o2oa.net:20030/x_program_center/jaxrs/invoke/{name}/client/{client}/token/{token}/execute

請求方法為:POST

位址中的{name}為接口的名稱或别名;

位址中的{client}為鑒權的名稱;

位址中的{token}為:使用者名#1970年毫秒數 使用鑒權密鑰經過3DES加密後的值。

我們使用CryptoJS進行DES加密。(GitHub: https://github.com/brix/crypto-js)

開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限
開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限
開源協同OA辦公平台教程:O2OA服務管理中,接口的調用權限