支持第三方轻应用使用云之家、企微、钉钉和飞书的App的原生功能
# 变更记录
| 产品版本 | 更新内容 | 更新日期 |
| --- | --- | --- |
| V6.0.4 | 支持了第三方轻应用使用云之家、企微、钉钉和飞书的App的原生功能,满足了用户希望在第三方轻应用使用扫码、定位、语音识别等功能 | 2023-12-29 |
# 用户场景
二开做的轻应用会发布到企业微信/钉钉/welink/飞书上作为第三方应用,客户可以直接在从第三方应用里选择进行安装使用,需要支持这些轻应用使用app的能力
# 功能介绍
第三方办公APP系统:支持APP的轻应用获取授权码;支持对授权码进行校验,判断其有效性。
应用系统:能将用户的授权码传输到第三方办公APP系统进行认证,实现对授权码进行识别和获取用户信息,返回认证结果。
第三方办公APP轻应用免登插件:编写插件实现上述应用系统对接第三方办公APP系统的功能,开发文档参考下面**第三方办公APP轻应用免登集成步骤**的开发说明。
# 使用说明
## 1.第三方办公APP轻应用免登插件开发说明
继承kd.bos.login.thirdauth.app.ThirdAppAuthtication,重写isNeedHandle和appAuthtication方法。
### 1.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;
}
```
| **返回参数** | **字段类型** | **字段说明** |
| --- | --- | --- |
| isNeed | Boolean | 当前所请求的url是否需要通过本插件认证的,如果是返回true,否返回false。 |
### 1.2 重写appAuthtication方法
功能说明:实现苍穹调用第三方办公APP系统的相关接口完成认证,返回认证结果。
示例:
```java
/**
*实现苍穹调用第三方办公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认证系统进行解析,从而实现对授权码进行识别和获取用户信息,request包含请求的授权码
Map<String, Object> authUserInfo = DemoUtils.getAuthUserInfo(code);// 此逻辑需现场实现通过调用第三方办公APP接口获取用户身份信息 请勿复制使用
if (authUserInfo != null) {
result.setSucceed(true);
result.setUserFlag(authUserInfo.getMobile());// 用户标识,包括手机号、邮箱、用户名
result.setUserType(UserType.MOBILE_PHONE); // 用户类型 枚举类UserType 对应用户标识
}
return result;
}
```
返回结果:AppAuthResult
| **属性** | **属性说明** |
| --- | --- |
| succeed | 认证是否成功,如果是返回true,否返回false。 |
| userType | 返回用户的类型,支持手机、用户名、邮箱、工号,使用枚举类UserType。 |
| userFlag | 返回用户信息具体的值,如手机号、邮箱、用户名、工号。 |
注意:userType返回的用户类型是手机,userFlag返回的用户信息对应的也需要是手机,其余返回类型也要匹配对应。
## 2. 第三方办公APP轻应用免登集成步骤
### 2.1 提供插件全限定类名
类名示例:kd.bos.xxx.xxx.DemoAuthtication
### 2.2 在MC配置第三方办公APP免登插件
**2.2.1 登录MC系统**
![image.webp](/download/0100cff8c7366a1a4d2f8d5511a5f17eb414.webp)
**2.2.2 进入租户列表页面,选择自己的租户进入页面**
![image.webp](/download/01007075f4d350744a26b4d9fbb54b1d97ac.webp)
**2.2.3 增加参数配置**
在租户的**“租户配置项**”增加参数配置authtication.apps,值为第三方办公APP免登插件全限定类名:kd.bos.xxx.xxx.DemoAuthtication,如果存在多个第三方办公APP免登插件可通过英文逗号隔开,如:
kd.bos.login.thirdauth.app.yzj.YZJAppAuthtication,kd.bos.login.thirdauth.app.tencent.WxqyhAuthtication,kd.bos.xxx.xxx.DemoAuthtication。
![image.webp](/download/0100fc6e3c1038704a748875892df245d92e.webp)
注:可支持配置多个APP免登认证插件,其中一个插件认证通过即可进入苍穹,插件互不影响。
**2.2.4 发布集群**
配置完成,启用数据中心, 发布集群
![image.webp](/download/0100beee897cd3f24e6fa02338ac69e0384c.webp)
用户在第三方APP打开轻应用,即可免登录进入金蝶云苍穹系统。
## 3.配置方式
目前已实现对接的第三方应用有: 云之家、钉钉、企业微信、飞书、welink等
详细的配置链接如下:
* [云之家 (公有云)](https://vip.kingdee.com/knowledge/specialDetail/228892721203874816?category=228893083373702400&id=398062331105538048&productLineId=29)
* [云之家 (私有云)](https://vip.kingdee.com/knowledge/specialDetail/228892721203874816?category=228893083373702400&id=392628630624756480&productLineId=29)
* [钉钉](https://vip.kingdee.com/knowledge/specialDetail/228892721203874816?category=228893083373702400&id=228922658535279872&productLineId=29)
* [企业微信 (公有云)](https://vip.kingdee.com/knowledge/specialDetail/228892721203874816?category=228893083373702400&id=387563605471991296&productLineId=29)
* [企业微信 (私有云)](https://vip.kingdee.com/knowledge/specialDetail/228892721203874816?category=228893083373702400&id=228896192930124032&productLineId=29)
* [飞书](https://vip.kingdee.com/knowledge/specialDetail/228892721203874816?category=228893083373702400&id=238758427345172736&productLineId=29)
* [welink](https://vip.kingdee.com/knowledge/specialDetail/228892721203874816?category=228893083373702400&id=238745242215004416&productLineId=29)
# 适用版本
金蝶云苍穹BOS_V6.0.04及以上
支持第三方轻应用使用云之家、企微、钉钉和飞书的App的原生功能
# 变更记录| 产品版本 | 更新内容 | 更新日期 || --- | --- | --- || V6.0.4 | 支持了第三方轻应用使用云之家、企微、钉钉...
点击下载文档
上一篇:标准产品开发自定义控件全流程下一篇:底部导航栏控件,移动开发的福音
本文2024-09-23 00:41:16发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-141077.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章