一、1. 登录效果
| 类型 | 选择组织域 | 登录效果 |
| 浏览器 | | |
| 客户端 | | |
二、2.1 配置飞书信息
1. 如你是首次使用,未创建企业自建应用:
2. 如你未开通飞书开发者账号:
2.1 请先前往飞书开放平台,创建一个开发者账号。
2.2 在开发者后台,选择企业自建应用,单击创建企业自建应用。
2.3 应用名称示例:腾讯 iOA ,应用描述:xxxx(任意说明) 。
三、2.2 获取 App ID 和 App Secret
1. 在企业自建应用页面,单击刚才创建的自建应用,进入应用详情页面。
2. 在凭证与基础信息页面,选择应用凭证,获取 App ID 和 App Secret。其中:飞书的 App ID 对应 iOA 控制台上的 App ID,飞书的 App Secret 对应 iOA 控制台上的 App Secret。
四、2.3 配置重定向 URL
1. 在凭证与基础信息页面,单击安全设置。
2. 在重定向 URL 页面,输入 iOA 重定向地址:https://scs.gateway.tencent.com/akpage/sso/redirect。
3. 单击添加,即可添加到重定向 URL 列表中。
注意:OAuth 2.0 认证方案的飞书认证准备步骤中,其他步骤都与飞书认证方案一样,唯有重定向 URL 与飞书认证方案的重定向 URL 不同。
五、2.4 配置权限管理
注意:说明:
注意:飞书权限管理支持批量导入权限和手动开通权限,推荐批量导入权限。
六、2.4.1 批量导入权限
1. 在 权限管理 页面,单击批量导入/导出权限。
2. 在批量导入/导出权限弹窗中,输入如下 JSON,单击下一步,确认新增权限。
{ "scopes": { "tenant": [ "contact:contact.base:readonly", "contact:department.base:readonly", "contact:department.organize:readonly", "contact:group:readonly", "contact:user.base:readonly", "contact:user.department:readonly", "contact:user.email:readonly", "contact:user.employee_id:readonly", "contact:user.id:readonly", "contact:user.phone:readonly", "corehr:department.organize:read", "tenant:tenant:readonly" ], "user": [ "contact:contact.base:readonly", "contact:department.base:readonly", "contact:department.organize:readonly", "contact:user.base:readonly", "contact:user.department:readonly", "contact:user.department_path:readonly", "contact:user.email:readonly", "contact:user.employee_id:readonly", "contact:user.id:readonly", "contact:user.phone:readonly" ] }}
3. 在确认导入权限弹窗中,单击申请开通。
七、2.4.2 手动开通权限
1. 在权限管理页面,单击开通权限,选择该应用所需的权限,建议优先使用英文版查询:
| 英文权限名称 | 中文权限名称 |
| contact:user.department_path:readonly | 获取成员所在部门路径 |
| contact:user.base:readonly | 获取用户基本信息 |
| contact:contact.base:readonly | 获取通讯录基本信息 |
| contact:department.organize:readonly | 获取通讯录部门组织架构信息 |
| contact:department.base:readonly | 获取部门基础信息 |
| corehr:department.organize:read | 获取部门组织架构信息 |
| contact:group:readonly | 获取用户组信息 |
| contact:user.department:readonly | 获取用户组织架构信息 |
| contact:user.email:readonly | 获取用户邮箱信息 |
| contact:user.employee_id:readonly | 获取用户 user ID |
| contact:user.id:readonly | 通过手机号或邮箱获取用户 ID |
| contact:user.phone:readonly | 获取用户手机号 |
| tenant:tenant:readonly | 获取企业信息 |
2. 选中目标权限后,单击操作列中的确认开通权限,即可为该应用选中所需权限。
注意:说明:
注意:配置权限后,需要重新发布应用才能生效。
八、2.5 发布应用
1. 在权限管理页面,单击版本管理与发布。
2. 在版本管理与发布页面,单击右上角的创建版本。
3. 在版本详情页面,填写应用版本号(格式如 1.0.0)和更新说明,设置可用性状态,单击保存。
注意:可用范围:选择所有员工。
4. 保存完成后,单击申请线上发布。
注意:说明:
九、2.6 应用审核(如无需审核,请跳过)
1. 在 应用审核页面,选择目标应用,单击审核。
2. 在审核详情页面,单击通过。
十、2.7 开启飞书移动应用登录功能(选配)
1. 登录 飞书开放平台,选择企业自建应用,并单击需要开启移动登录功能的自建应用。
2. 在应用详情页面,单击添加应用能力 > 按能力添加。
3. 找到移动应用登录,单击添加。
4. 在移动应用登录页面,配置相关参数,单击保存。
| 参数类型 | 参数名称 | 参数详情 | 备注 |
| 用户登录协议 | OAuth 2.0 | 建议默认选择 OAuth 2.0。 | – |
| | OIDC | 建议默认选择 OAuth 2.0。 | – |
| 应用类型 | iOS 应用 | iOS Bundle ID:正式版 com.tencent.ioa.saas;其他体验版或测试请联系腾讯项目对接人。 | 如不需要移动端授权,无需填写 |
| | Android 应用 | 正式版是固定的,其他体验版或测试请联系腾讯项目对接人。Android 包名称:com.tencent.ioa.saasAndroid 签名:9e4e6594cd64562c6ae8e3ae0288dd5a | |
十一、2.8 开启邮箱/手机号账号身份关联功能(选配)
注意:说明:
注意:如果需要开启手机验证码或邮箱验证码作为二次认证/挑战认证的实例,则建议从飞书同步字段时,开通手机号或邮箱的同步权限。在 iOA 控制台添加短信验证码或邮箱验证码时,将通过飞书同步过来的手机号/邮箱作为字段映射和身份认证的依据。
1. 登录 飞书开放平台,选择企业自建应用,并单击目标自建应用。
2. 在应用详情页面,单击权限管理,下滑至权限配置。
3. 在权限配置模块,分别开启以下两个功能:
·开启手机号账号身份关联功能:搜索获取用户手机号,单击开通权限。
·开启邮箱账号身份关联功能:搜索获取用户邮箱信息,单击开通权限。
4. 配置上述权限后,需要重新 发布应用版本 才能生效。
十二、3.1 新建目录
1. 登录 iOA 零信任管理平台控制台,在左侧导览中,单击员工与身份管理 > 组织架构管理。
2. 在组织架构管理页面,单击新增组织架构。
3. 在新增组织架构页面,导入类型选择飞书,单击下一步。
4. 在新增目录页面,输入 App ID 、 App Secret 等参数。
| 参数名称 | 说明 |
| 类型 | 飞书。 |
| 名称 | 自定义名称(该名称方便后续在组织架构源列表中快速找到)。 |
| App ID | 获取方式请参见 App ID 和 App Secret。 |
| App Secret | 获取方式请参见 App ID 和 App Secret。 |
| 自动更新组织架构 | 自定义设置拉取最新组织架构的周期。 |
| 测试连通性 | 输入 App ID、App Secret 后可进行连通性测试,会同时检查基础配置是否有效。 |
| 客户端登录展示 | 配置是否在 iOA 客户端登录页展示飞书组织架构入口。开启:iOA 客户端登录页展示飞书登录项,用户可使用钉钉登录。关闭:iOA 客户端登录页不展示飞书登录项,用户无法使用钉钉登录。 |
| 同步架构节点 | 支持基于部门 ID 按需同步组织架构,单击添加,支持选择需要同步的部门,逐层实时查询展开,无需同步全量组织架构。根部门 ID:如果只需要特定部门,请输入正确的部门 ID。如无必要,请勿修改,配置已经正常同步数据的情况下,随意变更可能会导致数据异常。部门层级补全:单击开启,开启后系统自动补全所选部门的所有上级部门层级,关闭则仅将同步的部门挂载至根节点下。 |
| 用户属性字段映射 | 如无特殊需求,请勿修改。其中字段如果不映射,将会用系统定义的状态,其中0 表示用户异常状态,1 表示用户正常状态。映射支持三种数据类型,且必须填写正常状态的值:1. 对于 Bool 类型和 String 类型,相同的值会关联到状态 1,不相同的统一到 0; 2. 对于 Int 类型,相同的值会关联到状态 1,其他值会默认保留。属性映射中,若映射字段不存在或不想同步相应字段,则输入任意不存在的属性名即可,同步时会将对应属性置为空。 |
5. 单击测试连通性,测试通过后单击下一步并保存。
十三、3.2 配置认证源
1. 登录 iOA 零信任管理平台控制台,在左侧导览中,单击身份安全管控 > 认证源配置。
2. 在认证源配置页面,单击新增认证源实例。
3. 在新增认证源实例页面,类型选择 OAuth2。
| 参数名称 | 说明 |
| 类型 | OAuth2。 |
| 认证方式 | 默认 SSO 认证。 |
| 名称 | 自定义填写认证源实例名称。 |
| 客户端登录标题 | 自定义。 |
| 客户端登录标题(英文) | 自定义。 |
| 客户端登录提示 | 自定义。 |
| 客户端登录提示(英文) | 自定义。 |
| 客户端 ID | 为飞书的 App ID,详情请参见:2.2 获取 App ID 和 App Secret。 |
| 客户端 Secret | 为飞书的 App Secret,详情请参见:2.2 获取 App ID 和 App Secret。 |
| 登出地址 | 可不填,如果填写,可支持从 iOA 跳到浏览器清理登录态能力。识别方式:URL 以 logout 结尾。 |
| 使用系统浏览器 | 建议关闭。如果开启,则会跳到系统浏览器认证,可以共享已经 SSO 登录的状态;如果关闭,全程在 iOA 内完成 SSO 认证。 |
| 专线分组 | 使用专线组访问服务接口,自行选择专线分组。 |
3.1 获取 code :
·请求地址:https://open.feishu.cn/open-apis/authen/v1/index 。
·请求体格式:无请求体。
·请求参数:请求 URL 参数。
| 字段(key ) | 值(value ) |
| app_id | [client_id] |
| redirect_uri | [redirect_uri] |
| state | [state] |
3.2 获取 access token:
·请求地址:open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal。
·请求体格式:JSON。
·请求 Body 参数配置如图。
| 字段(Key ) | 值(Value ) |
| app_id | [client_id] |
| app_secret | [client_secret] |
·Response 错误路径:msg。
·Access token 路径:tenant_access_token。
3.3 获取用户信息 :
·请求地址:https://open.feishu.cn/open-apis/authen/v1/access_token。
·请求头配置 :
| 字段(key ) | 值(value ) |
| Authorization | Bearer [access_token] |
·请求体配置 :
| 字段(Key ) | 值(Value ) |
| grant_type | authorization_code |
| code | [code] |
·response 错误路径:msg。
·用户 ID 路径:data.user_id。
·用户头像路径:选填/自定义。
4.配置完成单击保存。