jenkinsci / jenkinsci/active-directory-plugin

[JENKINS-3356] DNS lookup failed - Active Directory lookup broken

Open
#285 10 comments 0 reactions 0 assignees View on GitHub
component:active-directory-plugin imported-jira-issue priority:major resolution:unresolved
Dominant language
Java
Stars
53
Forks
115
PR merge metrics
No merged PRs in 30d

Description

With version 1.11 the Active Directory lookup does not work anymore in my

set-up. Reverting to 1.9 fixed the problem.

Security:



  • Active Directory

  • Matrix based security (global settings)

Issue occurs when trying to login.

Even with specifying a domain name in the enhanced attributes it does not work.

Error log:

Mar 26, 2009 8:27:11 AM

hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider

retrieveUser

WARNING: Failed to bind to LDAP

javax.naming.NameNotFoundException: DNS name not found [response code 3];

remaining name '_ldap._tcp.EMEA'

at com.sun.jndi.dns.DnsClient.checkResponseCode(DnsClient.java:596)

at com.sun.jndi.dns.DnsClient.isMatchResponse(DnsClient.java:553)

at com.sun.jndi.dns.DnsClient.doUdpQuery(DnsClient.java:399)

at com.sun.jndi.dns.DnsClient.query(DnsClient.java:186)

at com.sun.jndi.dns.Resolver.query(Resolver.java:64)

at com.sun.jndi.dns.DnsContext.c_getAttributes(DnsContext.java:413)

at

com.sun.jndi.toolkit.ctx.ComponentDirContext.p_getAttributes(ComponentDirContext.java:213)

at

com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.getAttributes(PartialCompositeDirContext.java:121)

at

com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.getAttributes(PartialCompositeDirContext.java:109)

at

javax.naming.directory.InitialDirContext.getAttributes(InitialDirContext.java:123)

at

hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DesciprotrImpl.obtainLDAPServer(ActiveDirectorySecurityRealm.java:156)

at

hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DesciprotrImpl.obtainLDAPServer(ActiveDirectorySecurityRealm.java:146)

at

hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:73)

at

org.acegisecurity.providers.dao.AbstractUserDetailsAuthenticationProvider.authenticate(AbstractUserDetailsAuthenticationProvider.java:119)

at

org.acegisecurity.providers.ProviderManager.doAuthentication(ProviderManager.java:195)

at

org.acegisecurity.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:45)

at

org.acegisecurity.ui.webapp.AuthenticationProcessingFilter.attemptAuthentication(AuthenticationProcessingFilter.java:71)

at

org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:252)

at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

at

org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)

at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

at

org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)

at

hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)

at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)

at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:155)

at

org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)

at

org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)

at

org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

at

org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)

at

org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)

at

org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)

at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:444)

at

org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:472)

at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1286)

at java.lang.Thread.run(Thread.java:619)

Mar 26, 2009 8:27:11 AM hudson.security.AuthenticationProcessingFilter2

onUnsuccessfulAuthentication

INFO: Login attempt failed

---
Originally reported by subbaer, imported from: DNS lookup failed - Active Directory lookup broken


  • status: Reopened
  • priority: Major
  • component(s): active-directory-plugin
  • resolution: Unresolved
  • resolved: 2009-06-24T06:47:56+00:00
  • votes: 7
  • watchers: 2
  • imported: 2025-12-07

Raw content of original issue

With version 1.11 the Active Directory lookup does not work anymore in my
set-up. Reverting to 1.9 fixed the problem.

Security:



  • Active Directory

  • Matrix based security (global settings)

Issue occurs when trying to login.

Even with specifying a domain name in the enhanced attributes it does not work.

Error log:
Mar 26, 2009 8:27:11 AM
hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider
retrieveUser
WARNING: Failed to bind to LDAP
javax.naming.NameNotFoundException: DNS name not found [response code 3];
remaining name '_ldap._tcp.EMEA'
at com.sun.jndi.dns.DnsClient.checkResponseCode(DnsClient.java:596)
at com.sun.jndi.dns.DnsClient.isMatchResponse(DnsClient.java:553)
at com.sun.jndi.dns.DnsClient.doUdpQuery(DnsClient.java:399)
at com.sun.jndi.dns.DnsClient.query(DnsClient.java:186)
at com.sun.jndi.dns.Resolver.query(Resolver.java:64)
at com.sun.jndi.dns.DnsContext.c_getAttributes(DnsContext.java:413)
at
com.sun.jndi.toolkit.ctx.ComponentDirContext.p_getAttributes(ComponentDirContext.java:213)
at
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.getAttributes(PartialCompositeDirContext.java:121)
at
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.getAttributes(PartialCompositeDirContext.java:109)
at
javax.naming.directory.InitialDirContext.getAttributes(InitialDirContext.java:123)
at
hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DesciprotrImpl.obtainLDAPServer(ActiveDirectorySecurityRealm.java:156)
at
hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DesciprotrImpl.obtainLDAPServer(ActiveDirectorySecurityRealm.java:146)
at
hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:73)
at
org.acegisecurity.providers.dao.AbstractUserDetailsAuthenticationProvider.authenticate(AbstractUserDetailsAuthenticationProvider.java:119)
at
org.acegisecurity.providers.ProviderManager.doAuthentication(ProviderManager.java:195)
at
org.acegisecurity.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:45)
at
org.acegisecurity.ui.webapp.AuthenticationProcessingFilter.attemptAuthentication(AuthenticationProcessingFilter.java:71)
at
org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:252)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at
hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:155)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:444)
at
org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:472)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1286)
at java.lang.Thread.run(Thread.java:619)
Mar 26, 2009 8:27:11 AM hudson.security.AuthenticationProcessingFilter2
onUnsuccessfulAuthentication
INFO: Login attempt failed

  • environment: Platform: PC, OS: other

Contributor guide

Open the contributing guide

Research direction

Start at ActiveDirectorySecurityRealm.java, especially DescipoTRImpl.obtainLDAPServer, and trace how ActiveDirectoryUnixAuthenticationProvider.retrieveUser performs the LDAP lookup during login. Compare the Active Directory plugin behavior between versions 1.9 and 1.11, reproduce the DNS failure for _ldap._tcp.EMEA, and verify that login succeeds without the NameNotFoundException.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
authentication, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.