第三方集成ISDP移动端页面方案
目的
本案例主要目标用于指导实现ISDP App移动端非H5页面被第三方用户系统App端快速集成,包括实现时序图、关键节点和接口,以及明确实现责任方。
“第三方用户系统”指对接华为ISDP系统的具体用户系统。
时序图
时序图主要包括交互节点,具体如下:
- 伙伴移动端登录
- 向ISDP发起SSO单点登录认证(getToken)(携带ISDP账号)
- ISDP服务端向伙伴服务端返回用户信息和ISDP Token
- 伙伴服务端向伙伴移动端返回ISDP Token
- ISDP移动端页面调用伙伴移动端端接口,获取ISDP Token
- 伙伴移动端向ISDP移动端页面返回ISDP Token
- ISDP移动端实现登录ISDP和Appcube(低码平台页面)
伙伴移动端,即第三方用户App移动端;伙伴服务端,即第三方用户系统服务端。
集成步骤
- 伙伴App移动端登录。
伙伴输入登录信息,登录自有App移动端,同时伙伴服务端针对登录信息进行认证鉴权。
- 向ISDP发起SSO单点登录认证(getToken)(携带ISDP账号)。
- 添加ISDP用户账号。
在ISDP+人员管理页面https://{domain}/admin/#/pub/personList(页面菜单路径:公共平台 > 系统配置 > 用户权限 > 用户)添加第三方系统账号。
例如:第三方系统存在账号test,需要在人员管理新建人员账号为test的人员数据。
- 分配clientId和clientsecret (ISDP+)。
- 配置IP白名单(ISDP+)。
- 第三方反馈他们的服务器ip给ISDP,ISDP超级管理员将ip配置到2.b建好的客户端中。
- 第三方的服务器ip申请ISDP开发中心(低码开发工具)的白名单。
如没申请添加低码开发工具的白名单,第三页面访问时会出现跨域异常(cross-region、或403等信息),主要因为跨域后不允许接口访问。
- 第三方反馈他们的服务器ip给ISDP,ISDP超级管理员将ip配置到2.b建好的客户端中。
- 开发获取token的接口(第三方)。
第三方开发一个接口获取isdp+的token供第三方前端使用(请注意不是前端直接访问)。
isdp+接口格式如下:
- 添加ISDP用户账号。
- 返回用户信息和ISDP Token给伙伴服务端。
返回值:
{ "access_token":"xxxxxx", ..... }
- 伙伴服务端把ISDP Token返回给伙伴App移动端。
{ "access_token":"xxxxxx", ..... }
- ISDP移动端页面调用伙伴移动端接口,获取ISDP Token。
- 伙伴App移动端返回ISDP Token。
返回信息,包括:
{ "access_token":"xxxxxx", ..... }
- 登录ISDP和AppCube。
免密登录ISDP和AppCube,直接访问ISDP App移动端非H5页面。
创建隐患
https://AppCube域名/magno/render/ISDP__SecurityRisk_AppCube租户ID/hiddenTroubleCreateApp
执行隐患
https://AppCube域名/magno/render/ISDP__SecurityRisk_AppCube租户ID/mobileRiskControlExecutionPage