第三方办公APP轻应用免登功能介绍

1. 场景
为了方便金蝶云苍穹用户通过各种办公APP轻应用处理工作事项,金蝶云苍穹标准产品已支持云之家、企业微信、钉钉和飞书等办公APP的轻应用免登功能,客户也可自行通过插件实现其他第三方办公APP的轻应用免登功能。
2. 适用版本
金蝶云苍穹V3.0.001,及以上
3. 操作说明
3.1轻应用免登介绍
3.1.1. 实现机制
1、用户在第三方办公APP访问轻应用,将用户重定向到应用系统(金蝶云苍穹),同时在URI上会携带第三方办公APP的授权码。
2、用户跳转到应用系统就会将授权码带上,应用系统接受到请求之后会把授权码通过接口传输给第三方办公APP后台进行校验,如果通过校验认证,用户就可以开始访问应用系统。

3.1.1. 实现条件
第三方办公APP系统:支持APP的轻应用获取授权码;支持对授权码进行校验,判断其有效性。
应用系统:能将用户的授权码传输到第三方办公APP系统进行认证,实现对授权码进行识别和获取用户信息,返回认证结果。
第三方办公APP轻应用免登插件:编写插件实现上述应用系统对接第三方办公APP系统的功能,开发文档参考步骤3.2的开发说明。
3.2 第三方办公APP轻应用免登插件开发说明
继承kd.bos.login.thirdauth.app.ThirdAppAuthtication,重写isNeedHandle和appAuthtication方法。
3.2.1 重写isNeedHandle方法
功能说明:是否需要执行本插件的appAuthtication方法,如果是返回true,否则返回false。
示例:
/** * 检查请求url是否需要本插件认证,如果是返回true,否返回false */ @Override public boolean isNeedHandle(HttpServletRequest request,Account currentCenter) { boolean isNeed = false;//是否需要通过第三方办公APP插件认证 //示例代码 仅供参考 String code = request.getParameter("code");//第三方用户身份标识 参数名根据实际情况而定 String thirdAppType = request.getParameter("thirdAppType");//请求 url携带的判断第三方办公APP认证插件类型 示例:金蝶云使用jindieyun 可自行定义传参用于判断 if(StringUtils.isNotEmpty(code)&& thirdAppType.equals("jindieyun")){ isNeed=true; } return isNeed; } |
参数说明
参数 | 参数说明 | |
request | 当前访问的HttpServletRequest对象 | |
currentCenter | 当前访问的数据中心 | |
accountId | 数据中心id | |
accountName | 数据中心名称 | |
isDefault | 是否默认数据中心 | |
docDomain | 数据中心域名 | |
返回参数:
返回参数 | 字段类型 | 字段说明 |
isNeed | Boolean | 当前所请求的url是否需要通过本插件认证的,如果是返回true,否返回false。 |
3.2.2 重写appAuthtication方法
功能说明:实现苍穹调用第三方办公APP系统的相关接口完成认证,返回认证结果。
示例:
/** *实现苍穹调用第三方办公APP系统的相关接口完成认证,返回认证结果。 */ @Override public AppAuthResult appAuthtication(HttpServletRequest request,Account currentCenter) { // TODO Auto-generated method stub AppAuthResult result = new AppAuthResult(); result.setSucceed(false); String code = request.getParameter("code");//第三方用户身份标识 参数名根据实际情况而定 //现场需自行实现下 |
第三方办公APP轻应用免登功能介绍
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



