使用uniqueMember属性的Spring LDAP认证

时间:2018-10-16 10:08:17

标签: spring-boot spring-ldap spring-security-ldap

当我尝试通过 uid = {0},ou = Groups 进行身份验证时,我可以成功登录,但是在尝试将模式缩小到特定范围时无法登录组。
uid = {0},CN = ROM,OU = USER,OU = APPOU,ou =组

我可能需要使用uniqueMember属性,但找不到方法。如何仅使用用户的uid来使用组的uniqueMember属性对用户进行身份验证?

LDAP Group

@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");
}

1 个答案:

答案 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}");

}