[ 
https://issues.apache.org/jira/browse/AMBARI-19632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15833564#comment-15833564
 ] 

Robert Levas commented on AMBARI-19632:
---------------------------------------

Committed to trunk
{noformat}
commit 593234b76ab8f9ec67f27f504b03285286120358
Author: Robert Levas <[email protected]>
Date:   Sun Jan 22 10:44:18 2017 -0500
{noformat}


> Ldap sync fails when there are special characters in distinguished names
> ------------------------------------------------------------------------
>
>                 Key: AMBARI-19632
>                 URL: https://issues.apache.org/jira/browse/AMBARI-19632
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server
>    Affects Versions: 2.4.0
>            Reporter: Robert Levas
>            Assignee: Robert Levas
>            Priority: Critical
>              Labels: ldap
>             Fix For: 2.5.0
>
>         Attachments: AMBARI-19632_branch-2.5_01.patch, 
> AMBARI-19632_trunk_01.patch
>
>
> Ldap sync fails when there are special characters in distinguished names. 
> For example if there was a user with the distinguished name of 
> {{OU=test/test,OU=users,DC=EXAMPLE,DC=COM}} and that user was a member of a 
> synced group, then the lookup of the user using the membership attribute in 
> the group would fail due to the special character.  
> The error would look something like
> {noformat}
> REASON: Caught exception running LDAP sync. Uncategorized exception occured 
> during LDAP processing; nested exception is javax.naming.NamingException: 
> [LDAP: error code 1 - 000020D6: SvcErr: DSID-031007DB, problem 5012 
> (DIR_ERROR), data 0
> ]; remaining name 'OU=test/test,OU=users,DC=EXAMPLE,DC=COM'
> {noformat}
> *Solution*
> Update the library versionf for Spring LDAP 
> * {{org.springframework.security/spring-security-ldap}} to {{4.0.4.RELEASE}}
> * {{org.springframework.ldap/spring-ldap-core}} to {{2.0.4.RELEASE}}
> Then use {{LdapUtils.newLdapName}} to convert a String representing a DN into 
> a {{javax.naming.ldap.LdapName}} and use that object in the search facility 
> executed in 
> {{org.apache.ambari.server.security.ldap.AmbariLdapDataPopulator#getFilteredLdapUsers(java.lang.String,
>  org.springframework.ldap.filter.Filter)}}. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to