From 7852c1afb7745daea503acc03e1168884844594d Mon Sep 17 00:00:00 2001 From: xingpeng1 Date: Thu, 25 Jan 2018 17:31:03 +0800 Subject: [PATCH 1/1] KYLIN-3197 When ldap is opened, I use an ignored case user to login, the page does not respond. --- .../org/apache/kylin/rest/security/LDAPAuthoritiesPopulator.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/server-base/src/main/java/org/apache/kylin/rest/security/LDAPAuthoritiesPopulator.java b/server-base/src/main/java/org/apache/kylin/rest/security/LDAPAuthoritiesPopulator.java index f5a49e0..50e3cf3 100644 --- a/server-base/src/main/java/org/apache/kylin/rest/security/LDAPAuthoritiesPopulator.java +++ b/server-base/src/main/java/org/apache/kylin/rest/security/LDAPAuthoritiesPopulator.java @@ -22,6 +22,7 @@ import java.util.Set; import org.apache.kylin.rest.constant.Constant; import org.springframework.ldap.core.ContextSource; +import org.springframework.ldap.core.DirContextOperations; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.SimpleGrantedAuthority; import org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator; @@ -48,4 +49,11 @@ public class LDAPAuthoritiesPopulator extends DefaultLdapAuthoritiesPopulator { } return userAuthorities; } + + @Override + protected Set getAdditionalRoles(DirContextOperations user, String username) { + String userDn = user.getNameInNamespace(); + username = user.getStringAttribute("cn"); + return getGroupMembershipRoles(userDn, username); + } } -- 2.7.2.windows.1