본문 바로가기
VCS/CICD

젠킨스 자격 증명 관리와 사용자 관리

by Jinger 2024. 12. 29.

서론

   Jenkins는 다양한 작업을 자동화하기 위해 자격 증명을 안전하게 관리하고, 사용자 및 역할을 체계적으로 설정하는 기능을 제공한다. 이 글에서는 젠킨스의 자격 증명 관리와 사용자 관리 방법을 단계별로 알아보자.


 

젠킨스 자격 증명 이해

   젠킨스 자격 증명은 외부 서비스와 통신할 때 필요한 인증 정보를 저장하고 관리하는 데 사용된다. 이를 통해 비밀번호, API 키, SSH 키와 같은 민감한 데이터를 안전하게 보호할 수 있다.

자격 증명 항목 생성

1. 범위 및 도메인

  • 범위: 자격 증명이 적용되는 사용 범위를 정의한다. 예를 들어, 전역 범위는 모든 작업에서 사용 가능하며, 특정 범위는 해당 프로젝트 내에서만 유효한다.
  • 도메인: 자격 증명을 논리적으로 분리하여 관리할 수 있는 단위이다.

2. 자격 증명 항목 생성

  1. Manage Jenkins > Credentials 선택
  2. 저장소 및 도메인을 선택 후 Add Credentials 클릭
  3. 다음 필드를 입력:
    • Kind: 자격 증명 유형 (예: Username with password, SSH key 등)
    • Scope: 전역(Global) 또는 프로젝트 제한(System)
    • IDDescription: 자격 증명 식별 및 설명 추가
  4. OK 클릭하여 저장

3. 전역 범위와 전역 도메인에서 자격 증명 항목 생성

  • 전역 범위로 생성된 자격 증명은 모든 파이프라인 및 작업에서 사용 가능하다.
  • Global credentials (unrestricted)를 선택 후 항목을 생성한다.

4. 자격 증명 항목 업데이트

  • 생성된 자격 증명은 필요에 따라 수정이 가능합니다. Update 옵션을 사용하여 변경 사항을 저장한다.

5. 특정 도메인에서 자격 증명 항목 생성

  • 도메인별로 자격 증명을 생성하면, 해당 도메인 내에서만 자격 증명이 유효한다.
  • Add domain을 클릭하여 새 도메인을 생성하고, 해당 도메인에 자격 증명을 추가한다.

자격 증명 공급자 구성

   젠킨스는 기본 자격 증명 저장소 외에도 외부 자격 증명 공급자를 통합할 수 있다. 예를 들어, HashiCorp Vault와 같은 외부 공급자를 설정하여 자격 증명을 관리할 수 있다.

  1. Manage Plugins에서 외부 공급자 플러그인을 설치한다.
  2. 플러그인 설정에서 공급자 세부 정보를 입력하여 구성한다.

젠킨스 사용자 생성

사용자 생성 방법

  1. Manage Jenkins > Manage Users 선택
  2. Create User 클릭
  3. 사용자 정보를 입력:
    • Username: 사용자 ID
    • PasswordConfirm password
    • Full nameEmail address
  4. Create User 클릭으로 완료

젠킨스 사용자에게 역할 할당

1. 역할 기반 전략 플러그인 설치

  1. Manage Plugins에서 Role-based Authorization Strategy 플러그인을 설치한다.
  2. 젠킨스를 재시작하여 플러그인을 활성화한다.

2. 역할 기반 전략 플러그인 활성화

  1. Manage Jenkins > Configure Global Security 선택
  2. Authorization 섹션에서 Role-Based Strategy 선택 후 저장

3. 젠킨스에서 역할 생성

  1. Manage Jenkins > Manage and Assign Roles > Manage Roles 선택
  2. Role name 입력 후 권한을 설정한다.

4. 사용자에게 역할 할당

  1. Manage and Assign Roles > Assign Roles 선택
  2. 사용자 이름을 입력하고 해당 역할을 선택한다.

5. 역할 할당 확인

  • 역할이 올바르게 할당되었는지 테스트를 통해 검증한다.

프로젝트 기반 역할 생성

1. 프로젝트 기반 역할 할당

  • 특정 프로젝트에만 권한을 부여하기 위해 프로젝트 기반 역할을 생성한다.
  • Project Roles 섹션에서 역할을 생성하고 프로젝트에 매핑한다.

2. 프로젝트 기반 역할 검증

  • 프로젝트에서 역할이 예상대로 동작하는지 확인한다.

메트릭스-기반 보안 이해

  • 메트릭스 기반 보안은 사용자별로 세부 권한을 설정할 수 있는 강력한 방식이다.
  • Manage Jenkins > Configure Global Security에서 Matrix-based security를 활성화하고 권한을 설정한다.

프로젝트 기반 메트릭스 권한 부여 전략 이해

  • 프로젝트 수준에서 세부적인 권한을 정의하는 방법이다.
  • Project-based Matrix Authorization Strategy를 사용하여 프로젝트별로 권한을 설정하고 관리할 수 있다.
반응형

댓글