프로젝트 및 그룹 공유
초대를 통해 공유할 수 있습니다:
그룹과 함께하는 프로젝트 공유
그룹이 프로젝트에 액세스하도록 하려면 그룹을 프로젝트로 초대할 수 있습니다. 그룹의 직접 및 상속된 구성원은 프로젝트에 액세스할 수 있게 되며, 이는 공유된 프로젝트가 됩니다.
이 경우, 상속된 구성원은 공유된 그룹으로부터 상속된 그룹의 구성원을 의미합니다. 공유된 그룹의 구성원만 프로젝트에 액세스할 수 있습니다. 공유한 그룹의 하위 그룹 구성원에게 프로젝트에 액세스 권한을 부여하려면 해당 하위 그룹을 공유해야 합니다.
다음 표는 공유된 프로젝트에 액세스하는 그룹 구성원에 대한 개요를 제공합니다.
그룹 구성원 출처 | 공유 프로젝트에 대한 액세스 |
---|---|
공유된 그룹의 직접 구성원 | 예 |
공유된 그룹의 상속된 구성원 | 예 |
하위 그룹의 직접 구성원, 그러나 공유된 그룹의 구성원이 아님 | 아니요 |
하위 그룹의 상속된 구성원, 그러나 공유된 그룹의 구성원이 아님 | 아니요 |
당신이 초대하는 그룹의 가시성 레벨은 프로젝트의 것과 적어도 동일하게 제한적이어야 합니다. 예를 들어, 다음과 같이 초대할 수 있습니다:
- 비공개 그룹을 비공개 프로젝트에 초대합니다.
- 비공개 그룹을 내부 프로젝트에 초대합니다.
- 비공개 그룹을 공개 프로젝트에 초대합니다.
- 내부 그룹을 내부 프로젝트에 초대합니다.
- 내부 그룹을 공개 프로젝트에 초대합니다.
- 공개 그룹을 공개 프로젝트에 초대합니다.
만약 프로젝트의 최상위 그룹이 계층 구조 외부에서 프로젝트 공유를 허용하지 않는다면, 초대받은 그룹 또는 하위 그룹은 프로젝트의 네임스페이스에 있어야 합니다.
만약 프로젝트의 계층 구조에서 그룹과 프로젝트를 공유하는 것을 막는 그룹이 있다면, 그룹 초대 옵션이 사용 불가능합니다.
GitLab 16.6 및 이후에는 다음 중 하나에 해당하지 않는 이상, 초대받은 그룹의 이름과 멤버십 출처가 가려집니다.
- 초대받은 그룹이 공개 상태인 경우.
- 현재 사용자가 초대받은 그룹의 구성원인 경우.
- 현재 사용자가 현재 그룹의 구성원인 경우.
구성원 액세스와 역할
프로젝트를 공유하면 다음 구성원이 프로젝트에 액세스합니다:
- 모든 직접 그룹 구성원.
- 상속된 그룹 구성원.
- 초대받은 그룹과 공유된 다른 그룹의 구성원.
게다가:
- 그룹 페이지에서 프로젝트는 공유된 프로젝트 탭에 나열됩니다.
- 프로젝트의 구성원 페이지에서 그룹은 그룹 탭에 나열됩니다.
- 각 사용자에게 최대 역할이 할당됩니다.
- 사용량 할당 페이지에서 프로젝트 초대 배지가 해당 프로필 옆에 있는 구성원은 공유된 프로젝트의 최상위 그룹의 청구 가능한 구성원에 포함됩니다.
예시
“그룹/하위그룹01/프로젝트” 네임스페이스에 있는 프로젝트:
- “그룹/하위그룹02” 또는 “그룹/하위그룹01/하위그룹03”과 공유할 수 있습니다.
- 프로젝트의 최상위 그룹이 계층 구조 외부에서 프로젝트 공유를 허용하지 않는 경우에만 “그룹_abc”와 공유할 수 있습니다.
“그룹 1”이 만든 프로젝트의 경우:
- “그룹 1”의 구성원은 프로젝트에 액세스할 수 있습니다.
- “그룹 1” 소유자는 “그룹 2”를 프로젝트로 초대할 수 있습니다. 이렇게 하면 “그룹 1” 및 “그룹 2”의 구성원이 공유된 프로젝트에 액세스할 수 있습니다.
다른 그룹과 함께하는 그룹 공유
그룹을 그룹에 초대한 후:
- 그룹 탭에 초대받은 그룹이 나열됩니다. 이 디렉터리에는 공개 및 비공개 그룹이 모두 포함됩니다. 그룹의 이름 및 멤버십 출처는 초대받은 그룹에 액세스 권한이 없는 구성원에게 가려집니다.
- 초대받은 그룹의 직접 구성원은 초대하는 그룹에 액세스할 수 있습니다. 초대받은 그룹의 액세스와 초대하는 그룹의 액세스 사이에서 최소한의 액세스 권한이 부여됩니다.
- 초대받은 그룹의 상속된 구성원은 초대하는 그룹에 액세스할 수 없습니다.
- 구성원 사용량 할당 페이지에서 해당 프로필 옆에 그룹 초대 배지가 있는 초대받은 그룹의 직접 구성원은 초대하는 그룹의 청구 가능한 구성원에 포함됩니다.
예시
사용자 A
는 그룹 1
의 직접 구성원이며, 그룹에서 관리자 역할을 가지고 있습니다.
그룹 2
는 그룹 1
을 개발자 역할로 초대합니다.
사용자 A
는 그룹 2
에서 개발자 역할을 가지게 됩니다.
사용자 B
는 그룹 1
의 상속된 구성원입니다. 그룹 1이 초대되면 사용자 B
는 그룹 2
에 액세스할 수 없습니다.
협업을 위한 그룹 설정
당신이 그룹 내 프로젝트에서 외부 사용자와 협업을 하고자 한다면, 다음의 모범 사례를 고려하세요:
- 조직의 필요에 따라 구성된 그룹 및 하위 그룹을 논리적으로 구성하세요. 불필요한 그룹을 생성하는 것을 피하세요.
- 많은 사용자를 관리해야 하는 경우, 프로젝트를 구성하는 그룹과 별도로 사용자를 그룹화하는 것을 고려하세요. 이러한 사용자 그룹을 그룹 및 프로젝트에 공유하세요.
- 프로젝트에 초대할 그룹을 신중하게 고려하세요. 보안을 유지하고 과도한 공유를 방지하려면 액세스가 필요한 그룹만 초대하세요.
- 그룹을 초대할 때:
- 최대 역할을 적절하게 설정하세요. 최소한의 권한을 할당하는 것이 기본적으로 가장 높은 역할을 설정하는 것보다 나습니다.
- 초대받은 그룹의 하위 그룹에서 상속된 구성원도 프로젝트에 액세스 권한을 얻습니다. 따라서 하위 그룹을 별도로 초대하는 것이 좋을 수 있습니다.
- 프로젝트에 액세스 권한이 있는 여러 그룹에 속한 사용자의 최대 역할을 확인하세요. 의도하지 않은 높은 권한을 방지하기 위해 사용자의 역할을 변경할 수 있습니다.
- 공유된 프로젝트에 대한 그룹의 액세스 권한을 주기적으로 검토하고 필요에 따라 업데이트하세요. 그룹이 프로젝트에 더 이상 액세스할 필요가 없다면 그룹을 삭제하세요.