You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
SEC-2141: ActiveDirectoryLdapAuthenticationProvider Should Perform Active Directory SRV Record Lookup when Performing DNS Resolution of Address #2367
It is possible that ActiveDirectoryLdapAuthenticationProvider will fail to authenticate valid users when a domain address is used for the Active Directory host URL (e.g. ldap://corp.domain.com rather than ldap://adserver1.corp.domain.com).
This seems to be caused because the DNS lookup does not specify its request for Active Directory SRV DNS records to be used. Hence, an incorrect server can often be contacted for the target domain.
It would seem that someone has already flagged this issue in code around line 166:
private DirContext bindAsUser(String username, String password) {
// TODO. add DNS lookup based on domain
final String bindUrl = url;
...
I believe that the solution is to correctly specify the SRV directory context attribute so that LDAP service DNS lookup is performed, similar to:
Activity
spring-projects-issues commentedon Aug 15, 2013
Michael Osipov said:
There is no need to. You are using Digest auth and the RFC requires a fully-qualified domain name. You have provided a CNAME.
spring-projects-issues commentedon Aug 15, 2013
Michael Osipov said:
Alternatively, you can provide a URL with a root DN: ldap:///DC=corp,DC=domain,DC=com and Sun's implemenation will automatically look it up in DNS.