권한 및 역할

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-Managed, GitLab Dedicated

사용자를 프로젝트 또는 그룹에 추가하면 해당 사용자에게 역할을 할당합니다. 역할에 따라 GitLab에서 수행할 수 있는 작업이 결정됩니다.

사용자를 프로젝트 그룹 및 프로젝트 자체에 모두 추가하면 더 높은 역할이 사용됩니다.

GitLab 관리자는 모든 권한을 가지고 있습니다.

역할

사용자에게 기본 역할이나 사용자 정의 역할 중 하나를 할당할 수 있습니다.

사용 가능한 기본 역할은 다음과 같습니다:

  • Guest (이 역할은 비공개 및 내부 프로젝트에만 적용됩니다.)
  • Reporter
  • Developer
  • Maintainer
  • Owner
  • 최소 액세스(최상위 그룹에서만 가능)

Guest 역할이 할당된 사용자는 가장 적은 권한을 가지며, Owner 역할이 가장 많은 권한을 가집니다.

기본적으로 모든 사용자는 최상위 그룹을 만들고 사용자 이름을 변경할 수 있습니다. GitLab 관리자는 GitLab 인스턴스에서 이 동작을 변경할 수 있습니다.

프로젝트 구성원 권한

사용자의 역할은 프로젝트에서 수행할 수 있는 작업을 결정합니다. Owner 역할은 모든 권한을 제공하지만 다음과 같은 경우에만 사용 가능합니다:

  • 그룹 및 프로젝트 소유자용
  • 관리자용

개인 네임스페이스 소유자:

  • 네임스페이스의 프로젝트에서 Maintainer 역할로 표시되지만 Owner 역할을 가진 사용자와 동일한 권한을 가집니다.
  • 네임스페이스의 새 프로젝트에 대해 Owner 역할로 표시됩니다.

프로젝트 구성원을 관리하는 방법에 대한 자세한 정보는 프로젝트 구성원을 참조하세요.

다음 표는 각 역할에 대해 사용할 수 있는 프로젝트 권한을 나열합니다: (표 생략)

GitLab CI/CD 권한

GitLab CI/CD의 권한은 일부 역할에 의해 다음 설정을 통해 수정할 수 있습니다.

  • 공개 파이프라인: public으로 설정하면 Guest 프로젝트 멤버에게 일부 CI/CD 기능에 액세스할 수 있습니다.
  • 파이프라인 가시성: Everyone with Access로 설정하면 비프로젝트 멤버에게 일부 CI/CD “보기” 기능에 액세스할 수 있습니다.
작업 비멤버 게스트 기자 개발자 유지관 소유자 비고
아티팩트의 존재 확인 비멤버 및 게스트: 프로젝트가 공개된 경우에만 가능합니다.
작업 디렉터리 보기 비멤버: 프로젝트가 공개되었으며, 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화된 경우에만 가능합니다.
게스트: 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화된 경우에만 가능합니다.
아티패트 보기 및 다운로드 비멤버: 프로젝트가 공개되었으며, 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화되었고, 작업에서 artifacts:public: false가 설정되지 않은 경우에만 가능합니다.
게스트: 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화되었으며, 작업에서 artifacts:public: false가 설정되지 않은 경우에만 가능합니다.
기자: 작업에서 artifacts:public: false가 설정되지 않은 경우에만 가능합니다.
환경 보기 비멤버 및 게스트: 프로젝트가 공개된 경우에만 가능합니다.
작업 로그 및 작업 세부정보 페이지 보기 비멤버: 프로젝트가 공개되었으며, 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화된 경우에만 가능합니다.
게스트: 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화된 경우에만 가능합니다.
파이프라인 및 파이프라인 세부정보 페이지 보기 비멤버: 프로젝트가 공개되었으며, 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화된 경우에만 가능합니다.
게스트: 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화된 경우에만 가능합니다.
MR에서 파이프라인 탭 보기 비멤버 및 게스트: 프로젝트가 공개된 경우에만 가능합니다.
파이프라인의 취약점 보기   게스트: 프로젝트 설정 > CI/CD에서 공개 파이프라인이 활성화된 경우에만 가능합니다.
보호된 환경에 대한 배포 작업 실행     기자: 보호된 환경에 액세스할 수 있는 그룹에 속한 사용자인 경우에만.
개발자 및 유지관: 보호된 브랜치로 배포가 허용된 사용자인 경우에만.
프로젝트 수준의 보안 파일 보기 및 다운로드        
작업 다시 시도        
작업 취소       취소 권한은 파이프라인 설정에서 제한될 수 있습니다.
새로운 환경 생성        
작업 로그 또는 작업 아티패트 삭제       개발자: 작업이 사용자에의해 트리거되고 보호받지 않은 브랜치에서 실행되는 경우에만 가능합니다.
CI/CD 파이프라인 실행        
보호된 브랜치를 위한 CI/CD 파이프라인 실행       개발자 및 유지관: 보호된 브랜치로 Merge하거나 push할 수 있는 사용자인 경우에만.
환경 중단        
디버그 로그 활성화이 있는 작업 보기        
파이프라인 편집기 사용        
대화형 웹 터미널 실행        
프로젝트에 러너 추가          
러너 캐시 매뉴얼 지우기          
프로젝트에 인스턴스 러너 활성화          
CI/CD 설정 관리          
작업 트리거 관리          
프로젝트 수준의 CI/CD 변수 관리          
프로젝트 수준의 보안 파일 관리          
환경 터미널 사용          
파이프라인 삭제            

작업 권한

이 테이블은 특정 유형의 사용자에 의해 트리거된 작업에 대해 부여된 권한을 보여줍니다:

작업 게스트, 기자 개발자 유지관 관리자 비고
CI 작업 실행    
현재 프로젝트에서 소스 및 LFS 복제    
공개 프로젝트에서 소스 및 LFS 복제    
내부 프로젝트에서 소스 및 LFS 복제   개발자 및 유지관: 외부 사용자가 트리거하는 경우에만 가능합니다.
비공개 프로젝트에서 소스 및 LFS 복제   트리거 사용자가 해당 프로젝트의 구성원인 경우에만 가능합니다. 또한 if-not-present pull policy를 사용하여 비공개 Docker 이미지 사용을 참조하십시오.
현재 프로젝트에서 컨테이너 이미지 풀링    
공개 프로젝트에서 컨테이너 이미지 풀링    
내부 프로젝트에서 컨테이너 이미지 풀링   개발자 및 유지관: 외부 사용자가 트리거하는 경우에만 가능합니다.
비공개 프로젝트에서 컨테이너 이미지 풀링   트리거 사용자가 해당 프로젝트의 구성원인 경우에만 가능합니다. 또한 if-not-present pull policy를 사용하여 비공개 Docker 이미지 사용을 참조하십시오.
현재 프로젝트에 컨테이너 이미지 푸시    
다른 프로젝트에 컨테이너 이미지 푸시          
소스 및 LFS 푸시          

그룹 구성원 권한

어떤 사용자든지 그룹의 마지막 소유자가 아닌 한 그룹에서 자신을 삭제할 수 있습니다.

다음 표는 각 역할에 대한 그룹 권한을 나열합니다.

동작 Guest Reporter Developer Maintainer Owner 비고
epic에 이슈 추가하기 에픽 보기 및 이슈 수정 권한이 있어야 합니다.
하위 에픽 추가/제거하기 상위 및 하위 에픽 보기 권한이 필요합니다.
그룹 탐색  
의존성 프록시를 사용하여 컨테이너 이미지 가져오기  
컨테이너 레지스트리 이미지 가져오기 Guest는 개별 동작에 기반한 이벤트만 볼 수 있습니다.
그룹 위키 페이지 보기 Guest: 또한, 그룹이 공개 또는 내부인 경우 그룹을 볼 수 있는 모든 사용자는 그룹 위키 페이지도 볼 수 있습니다.
Insights 보기  
Insights 차트 보기  
이슈 분석 보기  
기여 분석 보기  
그룹 에픽 보기  
가치 스트림 분석 보기  
그룹 에픽 만들기/편집하기    
그룹 에픽 보드 만들기/편집/삭제하기    
그룹 마일스톤 만들기/편집/삭제하기    
반복 작업 만들기/편집/삭제하기    
그룹 레이블 관리하기    
패키지 가져오기    
그룹 DevOps 채택 보기    
프로덕션성 분석 보기    
메트릭 대시보드 주석 보기    
패키지 게시하기      
컨테이너 레지스트리 이미지 제거하기      
그룹 위키 페이지 만들기/편집/삭제하기      
그룹 내 프로젝트 만들기     프로젝트 생성 역할이 인스턴스 수준 또는 그룹 수준으로 설정되어 있어야 합니다.

개발자: “부분적으로 보호됨” 또는 “보호되지 않음”으로 기본 브랜치 보호(부분 보호)가 설정되어 있는 경우에만 새 프로젝트의 기본 브랜치로 커밋을 푸시할 수 있습니다.
메트릭 대시보드 주석 만들기/편집/삭제하기      
보안 대시보드 사용      
그룹 감사 이벤트 보기     개발자 및 유지관리자는 개별 동작에 기반한 이벤트만 볼 수 있습니다.
그룹 위키 페이지 삭제하기      
서브그룹 만들기       유지관리자: 유지관리자 역할이 서브그룹을 만들 수 있는 권한으로 설정되어 있는 경우에만 가능합니다.
Maven, 일반, NuGetTerraform 모듈 패키지 중복 설정 만들기/편집/삭제하기          
의존성 프록시 정리 정책 만들기/편집/삭제하기          
패키지 삭제하기        
에픽의 코멘트(모든 사용자가 게시한) 수정하기        
의존성 프록시 활성화/비활성화하기          
패키지 요청 전달 활성화/비활성화하기          
프로젝트를 그룹으로 포크하기        
그룹 승인 규칙 관리하기 (그룹 설정)        
그룹 푸시 규칙 관리하기        
그룹 러너 보기        
그룹 레벨 쿠버네티스 클러스터 보기/관리하기        
그룹 배포 토큰 디렉터리 보기          
그룹 가시성 수준 변경하기          
규정 준수 프레임워크 만들기/관리하기          
그룹 배포 토큰 만들기/삭제하기          
그룹 삭제하기          
그룹 에픽 삭제하기          
알림 이메일 비활성화하기          
SAML SSO 편집하기         서브그룹에는 해당되지 않습니다.
그룹 설정 편집하기          
프로젝트 템플릿 구성하기          
2FA 상태로 구성원 필터링하기          
구독, 리포지터리 및 계산 분 단위 구매 내역 관리하기          
그룹 레벨 CI/CD 변수 관리하기          
그룹 구성원 관리하기          
그룹 러너 관리하기          
그룹 레벨 사용자 정의 역할 관리하기          
그룹 이관하기          
그룹 의존성 프록시 초기화하기          
그룹을 다른 그룹과 공유(초대)하기          
결제 보기         서브그룹에는 해당되지 않습니다.
구성원의 2FA 상태 보기          
그룹 사용 한도 페이지 보기         서브그룹에는 해당되지 않습니다.

서브그룹 권한

서브그룹에 멤버를 추가하면 부모 그룹의 멤버십과 권한 수준을 상속받습니다. 이 모델을 통해 하나의 부모 그룹에 멤버십이 있다면 중첩된 그룹에 액세스할 수 있습니다.

자세한 정보는 서브그룹 멤버십을 참조하세요.

최소 액세스 권한을 가진 사용자

Tier: Premium, Ultimate Offering: GitLab.com, Self-Managed, GitLab Dedicated
  • 최소 액세스 역할을 가진 사용자를 초대하는 기능은 GitLab 15.9에서 도입되었습니다.

최소 액세스 역할을 가진 사용자는 다음을 할 수 없습니다:

  • 루트 그룹의 프로젝트 및 서브그룹에 자동으로 액세스할 수 없습니다.
  • 기존에 사용자가 인스턴스나 GitLab.com 네임스페이스의 다른 위치에서 역할이 없는 경우, Self-Managed Ultimate 구독이나 GitLab.com 구독의 라이선스 사용자로 계산되지 않습니다.

소유자는 이러한 사용자를 명시적으로 특정 서브그룹 및 프로젝트에 추가해야 합니다.

최소 액세스 역할을 사용하여 한 사용자에게 그룹 내에서 여러 역할을 할당할 수 있습니다:

  1. 최소 액세스 역할을 가진 사용자를 루트 그룹에 추가합니다.
  2. 해당 그룹의 어떤 서브그룹이나 프로젝트에 대해 특정 역할을 가진 직접적인 멤버로 사용자를 초대합니다.

미해결 문제 때문에 최소 액세스 역할을 가진 사용자가:

  • 표준 웹 인증으로 로그인하는 경우 부모 그룹에 액세스할 때 404 오류가 발생합니다.
  • 그룹 SSO로 로그인하는 경우 부모 그룹 페이지로 리디렉션되어 즉시 404 오류가 발생합니다.

문제를 해결하려면 이러한 사용자에게 부모 그룹 내의 어떤 프로젝트나 서브그룹에 대해 게스트 역할 이상을 부여하세요.

관련 주제