LDAP(AD域)数据同步集成¶
最后更新:2021-12-06
所有数据同步集成方案的实现使用IDP中的Connector组件来完成。
此处的数据指:组织机构数据,账户数据与组数据(组数据可选,没有不影响同步功能)。
一、场景描述¶
应用场景图描述:
(1)管理员在IDsConnector系统中创建同步任务,同步任务的触发可设置为手动或自动两种方式;
(2)触发同步任务后IDsConnector系统通过LDAP协议对LDAP服务器/AD域进行用户数据的拉取;
(3)IDsConnector系统会将拉取到的用户数据通过SCIM的方式推送IDP4/IDP2系统中。
二、支持的对象¶
支持同步组织机构、用户。
三、同步模式¶
使用connector配置AD到IDP4的同步,同步计划配置为:
同步模式为:主动拉取;
同步模型为:活动目录模式;
其他参数配置如定时同步、多线程等可以根据下列说明选择开启或关闭。
数据接收方式
主动拉取:来源如果提供接口,可以让connector主动调用接口来拉取数据,则选择主动拉取模式。
被动接收:来源如果没有提供接口可以让connector调用拉取数据,但是有向connector推送数据的能力的话,可以选择被动接收模式。 比如IDP推送账户到RAM的时候,因为IDP没有提供拉取数据的接口。同步这个操作是从IDP发起的,所以在connector配置的时候就需要选择被动接收模式。 也因为 connector 只能等 IDP 主动推送数据,所以同步计划这边的其他配置项就没有意义了,选在被动接收的时候其他的配置项会在前端进行隐藏。
数据拉取模式
活动目录模式:在拉取AD数据的时候,是逐层递归拉取的。不需要考虑子级机构的问题,直接将拉取到的机构和账户推送到下游。
经典模式:全量拉取到机构后,在connector中重新组成有序的机构树,然后再向下游推送数据。确保不会因为父级组织机构没有推送导致子级组织机构推送失败。
线程模式
独享线程池:独占一定的线程数,使用这些线程并发进行同步。
共享线程池:与其他同步任务共享所有的线程。
不适用线程池:数据一个一个推送,不会出现父级机构不存在导致的失败,但比较慢。
仅同步用户使用线程池:使用线程池之后会出现该选项。 开启后,会一个一个推送机构,机构推送完成之后。再使用线程池进行账户的推送。机构全部推完之后,账户与账户之间是没有层级关系的,所以可以使用线程池并发推送账户,提高数据同步的效率。
是否允许并发调度:开启之后允许多线程并发执行同步。
是否开启定时同步:配置完成后可以周期或在设定的时间点执行同步任务。不需要手动执行。
四、Connector配置方式¶
说明配置流程如上。如果没有特殊需求,可以跳过创建映射模板操作,直接使用connector内置的映射模板,或者再创建同步任务中进行调整。
4.1 新建同步来源¶
1.登录 connector 之后,在来源管理页面点击新建同步来源。
2.配置同步来源。
以我们的测试AD为例,测试AD的连接信息如下:
AD服务器地址地址:123.56..
端口号:389
Base DN:dc=jzyt,dc=com
管理员DN:cn=xxxx,CN=Users,DC=jzyt,DC=com
管理员密码: xxxx
来源管理配置如图:
来源名称:随意填写,注意唯一性即可;
下面还有一个环境的选择,默认是开发环境。需要注意的是来源和目标的环境必须是一样的,否则不会执行同步任务。
来源主类型:LDAP
来源子类型:选择WINDOWS_AD
服务器地址:AD服务器的地址,如上面的123.56..
端口号:一般是389,如果AD配置的636端口也可以使用636。
连接方式:389则不勾选SSL连接
默认域:AD的域名,如下图
查询基准DN:可以理解为拉取的账户/机构的范围。 如果是全量拉取AD账户/机构,可以直接填写 dc=jzyt,dc=com。 如果是指定AD域中的某一个机构,可以填写 ou=0001,dc=jzyt,dc=com,再往下也是类似的。
管理员DN/管理员密码:AD中的管理员账号和密码 管理员DN:cn=xxxx,CN=Users,DC=jzyt,DC=com 管理员密码:xxxx
是否开启回收站查询功能:可以不用开启 原先设计是通过查询AD中的回收站来确认账户是否需要删除。后来改为通过对比中间表和拉取的账户列表进行判断,所以可以不用该功能。
对象配置:WINDOWS_AD 对象配置是固定的,不用修改。
3.点击测试连接,确保连接的参数配置正确,然后点击保存。
4.2 新建同步目标¶
1.先登录IDP,创建一个应用,并开启应用的API。
2.在connector的目标管理页面,点击新建同步目标。
3.配置同步目标参数。
目标管理配置如图:
目标名称:随意填写,注意唯一性即可;还是需要注意一下选择的环境是否和来源管理的一致
目标主类型:选择SCIM
目标子类型:IDP4_SCIM
Basic URL:IDP 的域名或者IP,如 https://{IDaaS_server}
Client ID :IDP中创建的应用的API Key
Client Secret:IDP中创建的应用的API Secret
版本号:固定为 v1.2(注意v需要小写!!)
4.点击测试连接,确保连接的参数配置正确,然后点击提交。
4.3 映射模板¶
connector 中内置了一部分常用的映射模板,如果没有特殊需求的话可以直接使用。
映射属性对应如图,左侧是IDP的字段名,右侧是AD中的字段名。
4.4 新建同步任务¶
1.在同步任务中点击新建同步任务。
2.在“同步来源”页签中选择之前创建的AD来源。
来源根节点标识:在拉取钉钉/IDP数据时,可以用一个唯一标识来指定拉取的范围。 AD只需要填写好Base DN即可,不需要填写这个参数。
同步范围:可以选择同步账户或者机构
同步来源时AD/LDAP时,可以填写过滤条件,进一步细化拉取的范围。(填写方式) 3.在“同步目标”页签中选择之前创建的 IDP 目标。
目标根节点标识:导入的IDP机构的外部ID
默认密码:拉取AD账户到IDP时,IDP默认的登录的密码
检测模式:开启之后,新增账户时会先向IDP查询该账户是否在IDP中已存在,如果存在的话就会做修改操作。 4.在“属性映射”页签中,点击导入映射模板。
这里会根据前两步选择的来源和目标,自动过滤符合条件的映射模板,点击确认导入。
这里展示的就是这个同步任务具体用到的字段映射规则,可以根据需求进行调整。
比如说在AD中,账户的显示名称字段存的是这个账户的工号,想要把这个字段拉取并且映射到IDP的扩展字段里面去。可以点击添加映射规则,新建一个映射规则。
这边会查询IDP中的数据字典,并且以下拉框形式展示,直接进行选择即可。完成后点击提交就会多出一条映射规则。
5.配置同步计划,根据上面同步模式的介绍进行配置即可。
6.配置完成后,点击立即同步就可以将AD的数据拉取到IDP指定的机构中。