# 借助关联ESB动作流实现单点登录eoffice

来源快照：`result_data_new_260518.json`

- 来源 ID：`1235610315294318895`
- 模块：集成中心
- 目录：集成登录 - 配置示例 - 关联动作流示例：若第三方单点方案中参数需要通过接口获取，则可使用关联动作流来实现
- space ID：`1158011075224911873`
- 原文链接：未提供
- 产品基线：未提供

## 正文

# 一、功能介绍

本文档旨在介绍如何通过集成登录关联ESB动作流实现E10系统无缝接入eoffice。

二、

# 功能概述以及使用说明

## 1、eoffice

根据eoffice单点登录接口说明，需要先调用获取token接口获取token，然后URL地址中携带token单点登录eoffice。

[ _https://service.e-office.cn/knowledge/detail/97/k33d9f8_](https://service.e-office.cn/knowledge/detail/97/k33d9f8)

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611037035798533&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

 

 

需要在eoffice中获取应用的agentId和secret。

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611058415788034&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611084084101121&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611101423353857&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

 

 

## 2、ESB动作流配置

需要通过ESB动作流调用eoffice的获取token接口获取token。

### 2.1、ESB连接器

在ESB中心-连接器中配置eoffice的连接器，其中，连接配置实际eoffice系统地址：

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611118570496010&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

接口设置获取令牌服务接口地址：/{e-office目录}/server/public/api/open-api/get-token

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611139947241473&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611165806747651&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

请求-Body中设置请求参数：

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611182978228228&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

响应-Body中设置数据格式application/json，设置返回数据格式，跟实际eoffice获取token接口的返回结果：

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611208680923143&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611230222868486&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

 

最终可输入参数进行调试，确保可正常获取token：

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611251691888644&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

### 2.2、ESB动作流

在ESB动作流中配置一个自定义触发的动作流，自定义触发中无需设置输入参数设置，执行操作关联eoffice的连接器，选择获取token的接口。

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611277446119430&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

自定义触发-输入参数配置中直接配置eoffice获取token接口所需要的user。

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611303182368778&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

执行动作中，eoffice获取token接口-输入参数配置，配置实际eoffice提供的 agent_id以及secret， user从自定义触发输入参数中获取。

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611337440239623&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

动作流终止-输出参数设置返回一个token参数，获取eoffice获取token接口 responseBody返回的令牌token。

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611363215032324&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

可手动执行动作流，确保最终可返回token。

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611384845467654&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

 

## 3、集成登录配置

### 3.1、集成登录配置

从空白创建集成登录，默认“通用”类型，关联动作流选择eoffice的获取token的动作流，最终进行设置：

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611419083988993&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611444898308103&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

其中：

**请求方式：** 选择GET请求；

**外网地址：** 选择自定义地址，配置实际需要单点登录到eoffice页面的地址，比如：

如果需要单点登录到eoffice web首页，可配置：eoffice访问地址/{e-office目录}/client/web/portal/1#local=en&token= 如果需要单点登录到eoffice web流程列表页面，可配置：eoffice访问地址/{e-office目录}/client/web/flow/to-do#token= 如果需要单点登录到eoffice mobile首页，可配置：eoffice访问地址/{e-office目录}/client/mobile/home/message/index#local=zh-CN&token=  
---  
  
**动作流输入参数****user****：** 根据eoffice中应用配置的“用户识别字段“”， E10系统这边传递对应的人员信息。 比如eoffice用户识别字段配置手机号，E10系统人员的手机号与eoffice人员的手机号保持一致，则集成登录这里可以设置用户参数-手机号。 如果E10系统人员没有字段与eoffice人员存在对应关系，集成登录这里可考虑设置用户录入，手动维护eoffice人员的信息。

自定义参数： 配置一个参数名{?routeAddress}， 参数值设置动作流输出参数token。

 

实际单点登录的时候，可从动作流中获取到token值直接拼接到自定义地址后面，重定向eoffice地址进行单点登录。

### 3.2、共享范围

需要在共享范围内设置，哪些人员能够通过集成登录实现对eoffice的单点登录。

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611513682321410&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

 

 

### 3.3、单点验证效果

可以通过点击更多－单点登录地址，获取单点登录地址进行访问，验证单点登录效果。

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611556597612545&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

实际效果：

![](https://weapp.eteams.cn/papi/file/preview?fileId=1235611573795086342&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

 

 

最后，可将单点登录地址配置在前端菜单或者门户应用里面，实现从前端点击应用单点登录eoffice。
