我在服务器上安装了Openldap,然后将用户添加到ldap中,下面的屏幕显示通过添加的用户
现在,在keycloak中,我将用户联合添加为openLdap,并将其连接到ldap,没有任何问题,但是当我试图同步用户时,我得到了消息。
成功了!用户同步成功完成。0导入用户,0更新用户
因此,没有用户从ldap导入到keycloak,下面是keycloak中相关的ldap连接信息。
发布于 2019-11-18 18:47:18
多亏了@EricLavault和公司的一位同事,Keycloak终于成功地导入了用户。下面是我为解决这个问题所做的改变。
User Object Classes=*
ou=People
,然后在它下创建用户Users DN = ou=user,ou=people,dc=suredev20
在此之后,它开始抛出异常以下。
错误org.keycloak.storage.ldap.LDAPStorageProviderFactory在从LDAP导入用户时失败: org.keycloak.models.ModelException:从LDAP返回的用户具有空用户名!检查LDAP映射的配置。映射的用户名LDAP属性: uid,用户DN: cn=subodh123,ou=user,ou=People,dc=suredev20,来自LDAP的属性:{sn=joshi123,cn=subodh123,createTimestamp=20191118180647Z,modifyTimestamp=20191118180647Z}
它是由bydefault cn
在openldap中使用Username LDAP attribute = cn
作为ldap用户名属性描述来修正的。
发布于 2019-11-18 17:45:39
用户条目没有正确地存储在您的目录中。实际上,您不应该使用cn=root
作为容器,因为它应该表示目录管理器,并且应该用于绑定和其他操作,而不是用于构造目录。
相反,您应该使用默认的用户容器(至少对于OpenLDAP和Apache ),即ou=people,dc=suredev20
。你需要移动cn=subodh
从cn=subodh,ou=people,dc=suredev20
cn=subodh,ou=user,cn=root,dc=suredev
此外,在Keycloack中,您需要相应地设置用户dn:ou=people,dc=suredev20
(您可以尝试使用ou=user,cn=root,dc=suredev
而不移动subodh
条目,但不建议使用)。
https://stackoverflow.com/questions/58914910
复制相似问题