支持第三方轻应用使用云之家、企微、钉钉和飞书的App的原生功能

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

支持第三方轻应用使用云之家、企微、钉钉和飞书的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 | 支持了第三方轻应用使用云之家、企微、钉钉...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息