그룹의 SSH 인증서 관리

Tier: Premium, Ultimate Offering: GitLab.com

조직의 최상위 그룹에 공개 CA(Certified Authority) 파일을 공유함으로써 프로젝트의 Git 액세스를 관리합니다.

GitLab SaaS(SSH, HTTPS)에서의 Git 액세스 제어 옵션은 사용자 프로필에 설정된 자격 증명(액세스 토큰 및 SSH 키)에 의존하며, 조직의 관리 영역을 벗어납니다. 프로젝트에 일시적으로 Git 액세스를 부여하려면 SSH 인증서를 사용할 수 있습니다.

최상위 그룹에 CA 인증서 추가

플래그: GitLab.com에서는 이 기능을 사용할 수 있습니다. GitLab Dedicated에서는 이 기능을 사용할 수 없습니다.

전제 조건:

  • 그룹의 소유자 역할이어야 합니다.
  • 그룹은 하위 그룹이 아닌 최상위 그룹이어야 합니다.

그룹에 CA 인증서를 추가하려면 다음을 수행하세요:

  1. CA 파일로 사용할 SSH 키 쌍을 생성합니다:

    ssh-keygen -f CA
    
  2. 최상위 그룹에 공개 키를 추가하여 그룹 SSH 인증서 API를 사용하여 그룹 및 해당 하위 그룹의 프로젝트에 액세스 권한을 부여합니다.

사용자에 대한 CA 인증서 발급

전제 조건:

  • 그룹의 소유자 역할이어야 합니다.
  • 사용자 인증서는 최상위 그룹 및 해당 하위 그룹의 프로젝트에만 사용할 수 있습니다.
  • 사용자의 사용자 이름 또는 주 이메일(user 또는 user@example.com)은 GitLab 사용자와 사용자 인증서를 연결하기 위해 지정해야 합니다.
  • 사용자는 엔터프라이즈 사용자여야 합니다.

사용자 인증서를 발급하려면 앞에서 생성한 쌍의 개인 키를 사용하세요:

ssh-keygen -s CA -I user@example.com -V +1d user-key.pub

(user-key.pub) 키는 사용자가 SSH 인증을 위해 사용하는 SSH 키 쌍의 공개 키입니다. SSH 키 쌍은 사용자가 생성하거나 그룹 소유자 인프라가 SSH 인증서와 함께 프로비저닝한 것입니다.

만료 날짜인 (+1d)는 SSH 인증서를 그룹 프로젝트에 대한 액세스에 사용할 수 있는 기간을 식별합니다.

사용자 인증서는 최상위 그룹 내의 프로젝트에만 사용할 수 있습니다.

SSH 인증서 강제 적용

플래그: GitLab.com에서는 이 기능을 사용할 수 있습니다. GitLab Dedicated에서는 이 기능을 사용할 수 없습니다.

SSH 인증서의 사용을 강제화하여 사용자가 SSH 키 및 액세스 토큰을 사용한 인증을 금지할 수 있습니다.

SSH 인증서가 강제 적용되면 개별 사용자 계정에만 적용됩니다. 서비스 계정, 배포 키 및 기타 유형의 내부 계정에는 적용되지 않습니다.

전제 조건:

  • 그룹의 소유자 역할이어야 합니다.

SSH 인증서 사용을 강제화하려면 다음을 수행하세요:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. Settings > 일반을 선택합니다.
  3. 권한 및 그룹 기능 섹션을 확장합니다.
  4. SSH 인증서 강제 적용 확인란을 선택합니다.
  5. 변경 사항 저장을 선택합니다.