티스토리 뷰

Jenkins에 LDAP을 연결하였는데 너무 빈번하게 로그인 실패가 발생하였다.

로긴 한번 하려면 2~3번 정도는 실패..

안되겠다 싶어 로그를 보니 아래와 같은 로그가 많았다.

org.acegisecurity.AuthenticationServiceException: LdapCallback:<domain>:<port>; socket closed


일방적으로 끊는 것 같은데.. 일단 더 구글링 하였다.

찾아보니, 

https://docops.ca.com/ca-privileged-identity-minder/12-90-2/KR/%EB%81%9D%EC%A0%90-%EB%B0%8F-%EC%84%9C%EB%B2%84-%EA%B5%AC%EC%84%B1-%EC%9A%94%EC%86%8C-362747000.html


발췌하면 아래와 같다.


해결책: 

Active Directory가 연결이 너무 오랫동안 유휴 상태로 있었다고 판단하여 Active Directory 쪽에서 연결을 닫으면 이 예외가 발생합니다. 결과적으로, 사용자 작업이 이 닫힌 연결을 사용하기 위해 LDAP 검색을 트리거하면 예외가 발생합니다. 

이 문제를 해결하려면 JVM 인수 "com.sun.jndi.ldap.connect.pool.timeout"의 시간 만료 값을 작게 설정하십시오. 이 구성은 Active Directory 서버가 연결을 닫기 전에 응용 프로그램이 먼저 연결을 닫도록 합니다. 

아래 지침을 따라 기본 및 부하 분산 엔터프라이즈 관리 서버에서 JVM 인수에 시간 만료 값을 추가하십시오. 


결론은

-Dcom.sun.jndi.ldap.connect.pool.timeout=10000 (10초)

와 같이 10초 정도로 짧게 설정하면 된다.


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함