泛微二次开发

第三方系统单点登录OA系统

1、前提条件

前提:OA系统已经升级,已经支持第三方系统通过token方式登录OA。

2、配置文件

在ecology\WEB-INF\web.xml最后面配置

<servlet>

<servlet-name>getToken</servlet-name>

<servlet-class>weaver.weaversso.GetToken</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>getToken</servlet-name>

<url-pattern>/ssologin/getToken</url-pattern>

</servlet-mapping>

 

 

在ecology\WEB-INF\web.xml中配置:(需要放在安全补丁包的后面)

<filter>

<filter-name>WeaverLoginFilter</filter-name>

<filter-class>weaver.weaversso.WeaverLoginFilter</filter-class>

</filter>

<filter-mapping>

<filter-name>WeaverLoginFilter</filter-name>

<url-pattern>*.jsp</url-pattern>

</filter-mapping>

 

 

需要配置ecology\WEB-INF\prop\WeaverLoginClient.properties文件

ssss=127.0.0.1

 

备注:左侧配置单点登录OA标识,右侧配置允许单点登录OA的物理IP地址,多个以逗号分隔。

3、第三方单点登录OA

第三方系统给通过调用OA服务端获取token接口(http://OA地址:port/ssologin/getToken)获取token,然后将“&ssoToken=token值”拼接到OA指定页面的url后面,访问这个页面,OA将验证token,验证成功后, 直接打开OA指定页面,验证不通过,则跳转到OA登录页面。token只有一次有效。

3.1、调用OA服务端获取token接口

http://OA地址:port/ssologin/getToken

获取token:

6102A7C13F09DD6B1AF06CDA0E479AC811634CA56A19BD2E1EE6545BDC3E783A

3.2、将token拼接到访问OA服务端的url后面

token的参数为ssoToken,如

http://192.168.42.186:8080/workflow/request/ViewRequest.jsp?requestid=186782&ssoToken=6102A7C13F09DD6B1AF06CDA0E479AC811634CA56A19BD2E1EE6545BDC3E783A

访问能在OA服务端验证token,验证通过后,直接打开指定页面:

泛微二次开发

 

3.3、token值只有一次有效

如,

http://192.168.42.186:8080/workflow/request/ViewRequest.jsp?requestid=186782&ssoToken=6102A7C13F09DD6B1AF06CDA0E479AC811634CA56A19BD2E1EE6545BDC3E783A

之前已经访问过,OA服务端已经验证token通过,打开过流程;若关闭浏览器,再重新访问这个网页,则OA服务端将验证token失败,不能打开流程,直接跳转到登录页面。

泛微二次开发