-
Bug
-
Resolution: Unresolved
-
Major
-
Jenkins: 2.319.2
OS: Linux - 3.10.0-1160.el7.x86_64
---
ace-editor:1.1
active-directory:2.25.1
analysis-model-api:10.9.1
ansicolor:1.0.1
antisamy-markup-formatter:2.7
apache-httpcomponents-client-4-api:4.5.13-1.0
atlassian-bitbucket-server-integration:3.1.0
authentication-tokens:1.4
badge:1.9.1
bootstrap4-api:4.6.0-3
bootstrap5-api:5.1.3-4
bouncycastle-api:2.25
branch-api:2.7.0
build-name-setter:2.2.0
build-timeout:1.20
build-timestamp:1.0.3
build-user-vars-plugin:1.8
caffeine-api:2.9.2-29.v717aac953ff3
cctray-xml:1.0
checks-api:1.7.2
cloudbees-bitbucket-branch-source:751.vda_24678a_f781
cloudbees-folder:6.17
cobertura:1.17
code-coverage-api:2.0.4
command-launcher:1.6
conditional-buildstep:1.4.1
configuration-as-code:1.55.1
copyartifact:1.46.2
cors-filter:1.1
cppcheck:1.25
credentials:1074.v60e6c29b_b_44b_
credentials-binding:1.27.1
dashboard-view:2.18
data-tables-api:1.11.3-6
delivery-pipeline-plugin:1.4.2
display-url-api:2.3.5
docker-build-publish:1.3.3
docker-commons:1.18
docker-java-api:3.1.5.2
docker-plugin:1.2.6
docker-workflow:1.27
doxygen:0.18
dtkit-api:3.0.0
durable-task:493.v195aefbb0ff2
echarts-api:5.2.2-2
email-ext:2.86
envinject:2.4.0
envinject-api:1.8
extended-choice-parameter:0.82
extensible-choice-parameter:1.8.0
external-monitor-job:1.7
font-awesome-api:5.15.4-5
forensics-api:1.7.0
git:4.10.2
git-client:3.11.0
git-server:1.10
github:1.34.1
github-api:1.301-378.v9807bd746da5
github-branch-source:2.11.4
gitlab-logo:1.0.5
gitlab-plugin:1.5.27
global-slack-notifier:1.5
greenballs:1.15.1
groovy-postbuild:2.5
handlebars:3.0.8
handy-uri-templates-2-api:2.1.8-1.0
htmlpublisher:1.28
http_request:1.13
hudson-wsclean-plugin:1.0.8
jackson2-api:2.13.1-246.va8a9f3eaf46a
javadoc:1.6
javax-activation-api:1.2.0-2
javax-mail-api:1.6.2-5
jaxb:2.3.0.1
jdk-tool:1.5
jersey2-api:2.35-3
jira:3.6
jjwt-api:0.11.2-9.c8b45b8bb173
jquery:1.12.4-1
jquery-detached:1.2.1
jquery3-api:3.6.0-2
jsch:0.1.55.2
junit:1.53
klocwork:2021.3.1
ldap:2.7
lockable-resources:2.13
log-parser:2.2
mailer:408.vd726a_1130320
mapdb-api:1.0.9.0
matrix-auth:2.6.6
matrix-project:1.20
maven-plugin:3.16
memory-map:2.2.1 (53614)
mentor-questa-vrm:1.13
momentjs:1.1.1
monitoring:1.90.0
nodelabelparameter:1.10.3
okhttp-api:4.9.3-105.vb96869f8ac3a
p4:1.11.6
pam-auth:1.6.1
parameterized-scheduler:1.0
parameterized-trigger:2.43
pipeline-build-step:2.15
pipeline-githubnotify-step:1.0.5
pipeline-graph-analysis:188.v3a01e7973f2c
pipeline-input-step:427.va6441fa17010
pipeline-milestone-step:1.3.2
pipeline-model-api:1.9.3
pipeline-model-definition:1.9.3
pipeline-model-extensions:1.9.3
pipeline-rest-api:2.20
pipeline-stage-step:291.vf0a8a7aeeb50
pipeline-stage-tags-metadata:1.9.3
pipeline-stage-view:2.20
plain-credentials:1.7
plot:2.1.10
plugin-util-api:2.12.0
popper-api:1.16.1-2
popper2-api:2.11.2-1
prism-api:1.25.0-2
promoted-builds:3.11
publish-over:0.22
publish-over-ftp:1.16
python:1.3
read-only-configurations:1.10
rebuild:1.33
resource-disposer:0.17
role-strategy:3.1.1
run-condition:1.5
saltstack:3.2.2
saml:2.0.9
scm-api:595.vd5a_df5eb_0e39
script-security:1131.v8b_b_5eda_c328e
slack:2.49
sloccount:1.25
snakeyaml-api:1.29.1
ssh-agent:1.24.1
ssh-credentials:1.19
ssh-slaves:1.33.0
sshd:3.1.0
stashNotifier:1.24
structs:308.v852b473a2b8c
subversion:2.15.2
synopsys-coverity:3.0.1
token-macro:267.vcdaea6462991
trilead-api:1.0.13
uno-choice:2.5.7
vmanager-plugin:3.1.6
warnings-ng:9.10.3
windows-slaves:1.8
workflow-aggregator:2.6
workflow-api:1122.v7a_916f363c86
workflow-basic-steps:2.24
workflow-cps:2648.va9433432b33c
workflow-cps-global-lib:552.vd9cc05b8a2e1
workflow-durable-task-step:1121.va_65b_d2701486
workflow-job:1145.v7f2433caa07f
workflow-multibranch:706.vd43c65dec013
workflow-scm-step:2.13
workflow-step-api:622.vb_8e7c15b_c95a_
workflow-support:813.vb_d7c3d2984a_0
ws-cleanup:0.40
xray-connector:2.4.0
xunit:3.0.5
Jenkins: 2.319.2 OS: Linux - 3.10.0-1160.el7.x86_64 --- ace-editor:1.1 active-directory:2.25.1 analysis-model-api:10.9.1 ansicolor:1.0.1 antisamy-markup-formatter:2.7 apache-httpcomponents-client-4-api:4.5.13-1.0 atlassian-bitbucket-server-integration:3.1.0 authentication-tokens:1.4 badge:1.9.1 bootstrap4-api:4.6.0-3 bootstrap5-api:5.1.3-4 bouncycastle-api:2.25 branch-api:2.7.0 build-name-setter:2.2.0 build-timeout:1.20 build-timestamp:1.0.3 build-user-vars-plugin:1.8 caffeine-api:2.9.2-29.v717aac953ff3 cctray-xml:1.0 checks-api:1.7.2 cloudbees-bitbucket-branch-source:751.vda_24678a_f781 cloudbees-folder:6.17 cobertura:1.17 code-coverage-api:2.0.4 command-launcher:1.6 conditional-buildstep:1.4.1 configuration-as-code:1.55.1 copyartifact:1.46.2 cors-filter:1.1 cppcheck:1.25 credentials:1074.v60e6c29b_b_44b_ credentials-binding:1.27.1 dashboard-view:2.18 data-tables-api:1.11.3-6 delivery-pipeline-plugin:1.4.2 display-url-api:2.3.5 docker-build-publish:1.3.3 docker-commons:1.18 docker-java-api:3.1.5.2 docker-plugin:1.2.6 docker-workflow:1.27 doxygen:0.18 dtkit-api:3.0.0 durable-task:493.v195aefbb0ff2 echarts-api:5.2.2-2 email-ext:2.86 envinject:2.4.0 envinject-api:1.8 extended-choice-parameter:0.82 extensible-choice-parameter:1.8.0 external-monitor-job:1.7 font-awesome-api:5.15.4-5 forensics-api:1.7.0 git:4.10.2 git-client:3.11.0 git-server:1.10 github:1.34.1 github-api:1.301-378.v9807bd746da5 github-branch-source:2.11.4 gitlab-logo:1.0.5 gitlab-plugin:1.5.27 global-slack-notifier:1.5 greenballs:1.15.1 groovy-postbuild:2.5 handlebars:3.0.8 handy-uri-templates-2-api:2.1.8-1.0 htmlpublisher:1.28 http_request:1.13 hudson-wsclean-plugin:1.0.8 jackson2-api:2.13.1-246.va8a9f3eaf46a javadoc:1.6 javax-activation-api:1.2.0-2 javax-mail-api:1.6.2-5 jaxb:2.3.0.1 jdk-tool:1.5 jersey2-api:2.35-3 jira:3.6 jjwt-api:0.11.2-9.c8b45b8bb173 jquery:1.12.4-1 jquery-detached:1.2.1 jquery3-api:3.6.0-2 jsch:0.1.55.2 junit:1.53 klocwork:2021.3.1 ldap:2.7 lockable-resources:2.13 log-parser:2.2 mailer:408.vd726a_1130320 mapdb-api:1.0.9.0 matrix-auth:2.6.6 matrix-project:1.20 maven-plugin:3.16 memory-map:2.2.1 (53614) mentor-questa-vrm:1.13 momentjs:1.1.1 monitoring:1.90.0 nodelabelparameter:1.10.3 okhttp-api:4.9.3-105.vb96869f8ac3a p4:1.11.6 pam-auth:1.6.1 parameterized-scheduler:1.0 parameterized-trigger:2.43 pipeline-build-step:2.15 pipeline-githubnotify-step:1.0.5 pipeline-graph-analysis:188.v3a01e7973f2c pipeline-input-step:427.va6441fa17010 pipeline-milestone-step:1.3.2 pipeline-model-api:1.9.3 pipeline-model-definition:1.9.3 pipeline-model-extensions:1.9.3 pipeline-rest-api:2.20 pipeline-stage-step:291.vf0a8a7aeeb50 pipeline-stage-tags-metadata:1.9.3 pipeline-stage-view:2.20 plain-credentials:1.7 plot:2.1.10 plugin-util-api:2.12.0 popper-api:1.16.1-2 popper2-api:2.11.2-1 prism-api:1.25.0-2 promoted-builds:3.11 publish-over:0.22 publish-over-ftp:1.16 python:1.3 read-only-configurations:1.10 rebuild:1.33 resource-disposer:0.17 role-strategy:3.1.1 run-condition:1.5 saltstack:3.2.2 saml:2.0.9 scm-api:595.vd5a_df5eb_0e39 script-security:1131.v8b_b_5eda_c328e slack:2.49 sloccount:1.25 snakeyaml-api:1.29.1 ssh-agent:1.24.1 ssh-credentials:1.19 ssh-slaves:1.33.0 sshd:3.1.0 stashNotifier:1.24 structs:308.v852b473a2b8c subversion:2.15.2 synopsys-coverity:3.0.1 token-macro:267.vcdaea6462991 trilead-api:1.0.13 uno-choice:2.5.7 vmanager-plugin:3.1.6 warnings-ng:9.10.3 windows-slaves:1.8 workflow-aggregator:2.6 workflow-api:1122.v7a_916f363c86 workflow-basic-steps:2.24 workflow-cps:2648.va9433432b33c workflow-cps-global-lib:552.vd9cc05b8a2e1 workflow-durable-task-step:1121.va_65b_d2701486 workflow-job:1145.v7f2433caa07f workflow-multibranch:706.vd43c65dec013 workflow-scm-step:2.13 workflow-step-api:622.vb_8e7c15b_c95a_ workflow-support:813.vb_d7c3d2984a_0 ws-cleanup:0.40 xray-connector:2.4.0 xunit:3.0.5
Hi,
We have an issue when the first active directory server listed in the AD plugin configuration is unavailable, it does not failover to any of the others configured. This means users are locked out of Jenkins.
We have 2 AD servers configured in this instance
- ADSERVER8.ad.company.com
- ADSERVER7.ad.company.com
If #1 is offline, #2 is not used.
The Active Directory Health Status checker just hangs when submit is clicked. It draws a red progress bar and stops before it reaches the end. Normally it would check all the configured AD servers.
Here is a snippet from the log (ADSERVER8.ad.company.com is down):
2022-09-08 08:57:12.300+0000 [id=43] WARNING h.p.a.ActiveDirectorySecurityRealm$DescriptorImpl#bind: Failed to bind to ADSERVER8.ad.company.com:3268
java.net.ConnectException: Connection refused (Connection refused)
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.base/java.net.Socket.connect(Socket.java:609)
at java.naming/com.sun.jndi.ldap.Connection.createSocket(Connection.java:335)
at java.naming/com.sun.jndi.ldap.Connection.<init>(Connection.java:231)
Caused: javax.naming.CommunicationException: ADSERVER8.ad.company.com:3268 [Root exception is java.net.ConnectException: Connection refused (Connection refused)]
at java.naming/com.sun.jndi.ldap.Connection.<init>(Connection.java:252)
at java.naming/com.sun.jndi.ldap.LdapClient.<init>(LdapClient.java:137)
at java.naming/com.sun.jndi.ldap.LdapClient.getInstance(LdapClient.java:1616)
at java.naming/com.sun.jndi.ldap.LdapCtx.connect(LdapCtx.java:2847)
at java.naming/com.sun.jndi.ldap.LdapCtx.<init>(LdapCtx.java:348)
at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxFromUrl(LdapCtxFactory.java:262)
at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(LdapCtxFactory.java:226)
at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(LdapCtxFactory.java:183)
at hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DescriptorImpl.bind(ActiveDirectorySecurityRealm.java:670)
at hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DescriptorImpl.bind(ActiveDirectorySecurityRealm.java:601)
at hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DescriptorImpl.bind(ActiveDirectorySecurityRealm.java:566)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.lambda$retrieveUser$0(ActiveDirectoryUnixAuthenticationProvider.java:354)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$14(BoundedLocalCache.java:2413)
at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1908)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:2411)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:2394)
at com.github.benmanes.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:108)
at com.github.benmanes.caffeine.cache.LocalManualCache.get(LocalManualCache.java:62)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:454)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:297)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:223)
at hudson.plugins.active_directory.AbstractActiveDirectoryAuthenticationProvider.loadUserByUsername(AbstractActiveDirectoryAuthenticationProvider.java:47)
at hudson.plugins.active_directory.ActiveDirectorySecurityRealm.loadUserByUsername(ActiveDirectorySecurityRealm.java:899)
at hudson.plugins.active_directory.ActiveDirectoryStatus$ServerHealth.computeLoginExecutionTime(ActiveDirectoryStatus.java:208)
at hudson.plugins.active_directory.ActiveDirectoryStatus$ServerHealth.<init>(ActiveDirectoryStatus.java:182)
at hudson.plugins.active_directory.ActiveDirectoryStatus$1.compute(ActiveDirectoryStatus.java:120)
at jenkins.util.ProgressiveRendering$1.run(ProgressiveRendering.java:122)
at jenkins.security.ImpersonatingScheduledExecutorService$1.run(ImpersonatingScheduledExecutorService.java:67)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
2022-09-08 08:57:12.301+0000 [id=43] WARNING h.p.a.ActiveDirectorySecurityRealm$DescriptorImpl#bind: All attempts to login failed for user CN=username,OU=Business,OU=Users,OU=ORG,OU=EMEA,DC=ad,DC=company,DC=com
2022-09-08 08:57:12.301+0000 [id=43] WARNING j.util.ProgressiveRendering$1#run: failed to compute /ad-health/
java.net.ConnectException: Connection refused (Connection refused)
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.base/java.net.Socket.connect(Socket.java:609)
at java.naming/com.sun.jndi.ldap.Connection.createSocket(Connection.java:335)
at java.naming/com.sun.jndi.ldap.Connection.<init>(Connection.java:231)
Caused: javax.naming.CommunicationException: ADSERVER8.ad.company.com:3268 [Root exception is java.net.ConnectException: Connection refused (Connection refused)]
at java.naming/com.sun.jndi.ldap.Connection.<init>(Connection.java:252)
at java.naming/com.sun.jndi.ldap.LdapClient.<init>(LdapClient.java:137)
at java.naming/com.sun.jndi.ldap.LdapClient.getInstance(LdapClient.java:1616)
at java.naming/com.sun.jndi.ldap.LdapCtx.connect(LdapCtx.java:2847)
at java.naming/com.sun.jndi.ldap.LdapCtx.<init>(LdapCtx.java:348)
at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxFromUrl(LdapCtxFactory.java:262)
at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(LdapCtxFactory.java:226)
at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(LdapCtxFactory.java:183)
at hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DescriptorImpl.bind(ActiveDirectorySecurityRealm.java:670)
at hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DescriptorImpl.bind(ActiveDirectorySecurityRealm.java:601)
at hudson.plugins.active_directory.ActiveDirectorySecurityRealm$DescriptorImpl.bind(ActiveDirectorySecurityRealm.java:566)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.lambda$retrieveUser$0(ActiveDirectoryUnixAuthenticationProvider.java:354)
Caused: org.acegisecurity.AuthenticationServiceException: Failed to bind to LDAP server with the bind name/password; nested exception is javax.naming.CommunicationException: ADSERVER8.ad.company.com:3268 [Root exception is java.net.ConnectException: Connection refused (Connection refused)]
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.lambda$retrieveUser$0(ActiveDirectoryUnixAuthenticationProvider.java:360)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$14(BoundedLocalCache.java:2413)
at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1908)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:2411)
at com.github.benmanes.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:2394)
at com.github.benmanes.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:108)
at com.github.benmanes.caffeine.cache.LocalManualCache.get(LocalManualCache.java:62)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:454)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:297)
at hudson.plugins.active_directory.ActiveDirectoryUnixAuthenticationProvider.retrieveUser(ActiveDirectoryUnixAuthenticationProvider.java:223)
at hudson.plugins.active_directory.AbstractActiveDirectoryAuthenticationProvider.loadUserByUsername(AbstractActiveDirectoryAuthenticationProvider.java:47)
at hudson.plugins.active_directory.ActiveDirectorySecurityRealm.loadUserByUsername(ActiveDirectorySecurityRealm.java:899)
at hudson.plugins.active_directory.ActiveDirectoryStatus$ServerHealth.computeLoginExecutionTime(ActiveDirectoryStatus.java:208)
at hudson.plugins.active_directory.ActiveDirectoryStatus$ServerHealth.<init>(ActiveDirectoryStatus.java:182)
at hudson.plugins.active_directory.ActiveDirectoryStatus$1.compute(ActiveDirectoryStatus.java:120)
at jenkins.util.ProgressiveRendering$1.run(ProgressiveRendering.java:122)
at jenkins.security.ImpersonatingScheduledExecutorService$1.run(ImpersonatingScheduledExecutorService.java:67)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Thanks,
Bill.