[分享] 关于LDAP与GitLab用户某些同步场景说明

模拟场景一

在GitLab中存在这样一个用户:邮箱和用户名和LDAP系统中一致

集成LDAP,使用该用户用LDAP的方式第一次登录 → 可以正常登录,Users表不会更新,identities表中会新增一条关联关系,同时不会影响GitLab自方式登录。

结论:两种登录方式都能正常使用,LDAP通过邮箱关联了已存在用户,跟已存在用户使用同一个namespace。

模拟场景二

在GitLab中存在这样一个用户: 邮箱和LDAP系统中一致,但是用户名不一致

结论:跟场景一一致,两种登录方式都能正常使用,LDAP通过邮箱关联了已存在用户,跟已存在用户使用同一个namespace。

模拟场景三

在GitLab中存在这样一个用户:邮箱和用户名可能都不一样

在还未进行LDAP认证登录的情况下(也就是LDAP的用户还没sync到GitLab),可以在用户界面的Identities下配置Identifier(类似uid=euclid,dc=example,dc=com),该操作会在identities表中新建一条记录,跟已有用户绑定。

补充

邮箱不一样,但是用户名一样,新进来的用户最终的用户名会加后缀,比如存在 newton,新的用户名是newton1,namespace也是newton1