目前飞书社交办公应用成为公司日常沟通办公的协作工具,以及作为各种流程的审批处理系统,HR 也会在飞书上去管理所有员工的状态及组织架构。
随着公司内新部署的业务系统越来越多,例如Jenkins、JIRA、Gitlab、Confluence、禅道等,有些应用系统是自建的用户体系,需要单独手动维护;有些应用系统使用的是LDAP账号体系,无法进行统一认证。每次有人员入职、离职或者调岗,都需要手动对本地系统进行维护,非常繁琐、低效。
如果能基于飞书的人员组织架构同步搭建LDAP目录服务,为应用系统提供统一的身份认证和访问授权,这样就不需要额外的人力去维护本地应用系统内的账号体系,直接打通了各应用系统之间的组织架构和账号信息。以及当有员工状态变更(入离调转)的时候,能及时同步,就能避免出现授权外的访问,极大提高运维效率和员工的访问体验。
实现思路
简单来说,我们希望通过飞书作为统一身份源,提供身份认证和授权,但是这些社交应用没有开放这个能力,那么我们需要基于飞书的通讯录(人员组织架构和用户信息)同步搭建本地LDAP服务。
LDAP 用户信息的使用基本上围绕着用户名和密码,而飞书用户登录时几乎没有密码场景,所以除了同步账号体系外,我们还需要赋予账号一个初始密码,并提供用户界面,允许用户在本地自助修改密码。
整体实现思路如下:
• 飞书开放平台:在飞书开发者平台新建应用,获取到 App ID、App Secret后,开启通讯录权限范围,提供给宁盾LDAP 目录服务进行数据同步
• 配置飞书自建应用:在宁盾 AM 统一身份管理平台配置社交帐号,输入飞书自建应用的凭证,再添加飞书用户源,
• 添加 LDAP 目录服务:添加宁盾目录服务用户源后,在应用中添加宁盾目录服务应用,账户同步中勾选飞书用户源,即可实现数据同步
配置过程
飞书开放平台主要配置:
1、创建企业自建应用
登录飞书管理员账号,进入开发者后台,创建企业自建应用
创建完成之后,可以在企业自建应用列表看到创建的应用。
2、点击创建的应用,填写并完善应用基本信息
3、点击查看自建应用的应用凭证:App ID、App Secret
4、设置开启通讯录权限范围
宁盾配置:
1、宁盾目录服务配置
登录宁盾AM管理员账号
添加用户源,选择宁盾目录服务
2、添加用户源
社交账号添加,输入飞书自建应用的凭证
添加飞书用户源
添加完成,就可以将飞书的用户同步至宁盾 AM。
宁盾目录服务同步:
添加宁盾目录服务应用,“账户同步”勾选“飞书”
同步账号,就可以看到飞书的账号已经同步至到宁盾目录服务。