Token认证流程简图
一、Ecology9服务端系统配置
ecology系统配置作用是设置访问安全权限,并为后续访问API接口的客户端提供访问许可证。
1、配置接口白名单
在ecology系统代码目录中找到以下配置文件:ecology/WEB-INF/prop/weaver_session_filter.properties
checkurl=/api/hrm/emmanager;/api/userPhrase;
uncheckurl=/api/ec/dev/app/getCheckSystemInfo;/api/ec/dev/app/emjoin;
unchecksessionurl=/api/ec/dev/util/accesspage;.../api/loginportal/element/;/api/edc/fillin/;
检查配置文件中对应的配置项中是否存在下面的路径,没有则添加,有就略过(较高版本中系统默认已添加,请勿重复添加)。
在unchecksessionurl=
后面添加/api/ec/dev/auth/regist;/api/ec/dev/auth/applytoken;
配置文件的白名单修改后,需要重启Resin服务后才能生效。
2、生成访问许可证(appid)供第三方系统使用
就是向数据库插入一条记录,之后访问的话会匹配这条记录,用于身份认证
在ecology系统数据库执行以下脚本示例(根据实际情况修改示例中的数据):
--发放许可证前,检查系统中的数据与要发放在数据是否有冲突
SELECT * FROM ECOLOGY_BIZ_EC
--确定没有冲突后,开始发放许可证
INSERT INTO ECOLOGY_BIZ_EC(ID,APPID,NAME) VALUES('1','63caed2d-ab47-6116-b1be-6caec02a2fa1','第三方***系统');
字段描述:
- ID:数据库主键。保证与其它系统发放的许可证在数据库中的主键标识不冲突即可(
对应示例:1
) - APPID:许可证号码。最终发放给异构系统的许可证号码,多个许可证号码保证唯一(
对应示例:63caed2d-ab47-6116-b1be-6caec02a2fa1
) - NAME:许可证名称。用于快速辨识许可证发放系统(
对应示例:本机E9系统
)
许可证立即生效: - 打开网址http://ip:port/commcache/cacheMonitor.jsp后,点击重新加载配置即可。
3、限制许可证使用ip地址
在ecology系统代码目录中找到以下配置文件:ecology/WEB-INF/prop/weaver_rest_token.properties
# 限制Rest API Token Invoke注册端IP地址,多个IP地址之间用逗号分隔
# 例如:allowIp=127.0.0.1,192.168.0.1,172.10.0.1,10.10.10.01
allowIp=
在allowIp=
后面添加客户调用方服务器实际的ip地址(不设置将代表不限制任何ip,生产环境建议设置)
二、第三方系统通过代码获取Token访问Ecology9的Restful业务接口
具体实现请见下篇文章。