article thumbnail image
Published 2021. 12. 21. 19:53

젠킨스를 2.319.1 으로 업그레이드를 하고 관련 플러그인을 업데이트를 했는데,

LDAP Plugin과 Matrix Authorization Strategy Plugin 이 업데이트가 되면서 기존에 설정해 놨던 LDAP 설정으로 로그인이 되지 않아서 하루종일 삽질을 했더니...진이 빠진다...ㅡㅡ;;; 

그래서 다음에 삽질을 줄여보고자 남겨 본다...

혹시 같은 삽질 예정이신 분들이 본다면 두어삽 이라도 줄어 들었으면 좋겠습니다...

 

일단 권한 설정에서 변경된 점이 있다면,

이전에 사용하던 젠킨스 버전에 권한 설정은 AD에서 그룹으로 유저를 생성을 해도, 젠킨스에서는 그룹으로 인식이 되지 않고 user로 인식이 됬었는데, 업데이트를 하니까 사용자 생성하는 버튼과, 그룹 생성하는 버튼이 분리가 되어 있어서 사용자와 그룹을 분리 할수 있게 되었다. 

 

Server에는 LDAP서버를 입력해주면 된다.

root DN이 적용이 안된다. 버그인가 싶은 생각이 든다...

User search base: ou=family,dc=gizmo80,dc=co,dc=kr

설명: ou=family은 AD에 만든 조직단위 이고, dc=gizmo80,dc=co,dc=kr 이건 도메인의 표현이다.

gizmo80.co.kr이란 도메인을 dc=gizmo80,dc=co,dc=kr 이렇게 표현 하는거다..

 

User search filter: (&(objectClass=person)(sAMAccountName={0}))

ldap 트리를 보게 되면 objectClass에 person에 sAMAccountName항목이 있다. {0}이건 jenkins에서 아마 매핑시키는 변수 값이 아닌가 싶다.

 

Group search base: ou=family,dc=gizmo80,dc=co,dc=kr

User search base 와 같다.

 

Group search filter: (& (cn={0}) (| (objectclass=group) ) )

이건...음....모르겠다...ㅡㅡ;;; 걍 그룹 검색위한 설정으로 이해 하기로 했다..;;;

 

Group membership에 Parse user attribute for list of LDAP groups 선택 후 

Group membership attribute 입력칸에 memberOf 입력

 

Manager DN: cn=Administrator,cn=users,dc=inno-soft,dc=co,dc=kr

 

Display Name LDAP attribute:  givenName 입력

 

Email Address LDAP attribute: mail 입력

 

User search base, User search filter, Group search base, Group search filter 요 4개값 찾는데 가장 오래걸린거 같다.

Manager DN에는 관리자 권한이 있는 DN을 입력해야 된다. 관리자는 아니더라도 그룹 조회 권한이 있는 사용자면 될거 같다.

 

입력은 대충 요래 하면 되고, 다 입력을 했으면 테스트를 해봐야지...

Test LDAP settings 버튼을 클릭하면 계정과 비밀번호를 입력하는 다이얼로그가 나오는데, AD에 있는 사용자를 입력하고 Test버튼을 클릭 하면 대~ 충 아래와 같은 내용이 비슷하게 나오면 된다.

그리고 가장 중요한 Jenkins 권한 설정...

이거 외 다른건 일절 하나 손대지 않았다...

그룹을 추가 하면 두명이 나오는 아이콘이 나오고 유저를 추가 하면 맨 위에 있는 Anonymous 처럼 한명이 나오는 아이콘이 나온다.

아 힘들다... 다음번에는 삽질을 좀... 덜하지 않겠지??? ㅡㅡ;;;

gogs에서 ad 연동하는것도 삽질 많이 했는데...ㅡㅡ;;; 그건 언제 올리나...

복사했습니다!