本文介紹O2OA服務管理中,接口的權限設定和調用方式。
适用版本:5.4及以上版本
具有服務管理設計權限的使用者(具有ServiceManager角色或Manager角色)打開“服務管理平台”,進入接口配置視圖,點選左上角的建立按鈕,可建立一個新的接口。

建立接口後,在右側屬性欄中有兩個配置和調用權限有關,一個是“允許通路的位址表達式”,一個收是“啟用鑒權”。
此處允許輸入一個正規表達式,用來比對調用接口的用戶端的Remote_Addr,隻有比對通過,接口才允許執行。例如隻允許172.16.1.50到172.16.1.56位址調用接口,可以在此處輸入:
此處選擇“是”的話,就需要在調用接口時傳入client名稱和一個加密後的token。是以我們先需要一組鑒權配置。
具有管理者權限的使用者(具有Manager角色),打開“系統設定”-“系統SSO配置”,找到“鑒權配置”。
點選“添加鑒權配置”:
此處需要配置一個名稱和密鑰。
名稱:可随意填寫,就是我們在調用接口或進行SSO時要傳入的client參數。
密鑰:可随意填寫,用于後續加密,最少8位。
此處我們假設名稱填寫:oa;密鑰填寫:platform
填寫完成後确定。
然後我們就可以使用此鑒權配置來調用接口了。
接口調用的的位址在接口屬性欄中有顯示:
當啟用鑒權後的接口調用位址為:
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)