当我尝试通过 uid = {0},ou = Groups 进行身份验证时,我可以成功登录,但是在尝试将模式缩小到特定范围时无法登录组。
uid = {0},CN = ROM,OU = USER,OU = APPOU,ou =组
我可能需要使用uniqueMember属性,但找不到方法。如何仅使用用户的uid来使用组的uniqueMember属性对用户进行身份验证?
@Override
public void configure(AuthenticationManagerBuilder auth) throws Exception {
auth
.ldapAuthentication()
.contextSource()
.url("ldapUrl")
.managerDn("username")
.managerPassword("password")
.and()
.userDnPatterns("uid={0},CN=ROM,OU=USER,OU=APPOU,ou=Groups");
}
答案 0 :(得分:0)
这是对谁感兴趣的方式:
public void configure(AuthenticationManagerBuilder auth) throws Exception {
auth
.ldapAuthentication()
.contextSource()
.url(ldapUrl")
.managerDn("username")
.managerPassword("password")
.and()
.userSearchFilter("uid={0}")
.groupSearchBase("CN=ROM,OU=USER,ou=APPOU,ou=Groups")
.groupSearchFilter("uniqueMember{0}");
}