InfoGrab DocsInfoGrab Docs

기여 및 멤버십 재배정

요약

최상위 그룹의 Owner 권한이 있는 사용자는 플레이스홀더 사용자의 기여와 멤버십을 기존의 활성 상태인 비봇 사용자에게 재배정할 수 있습니다. GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다.

최상위 그룹의 Owner 권한이 있는 사용자는 플레이스홀더 사용자의 기여와 멤버십을 기존의 활성 상태인 비봇 사용자에게 재배정할 수 있습니다. 대상 인스턴스에서 최상위 그룹의 Owner 권한이 있는 사용자는 다음을 수행할 수 있습니다.

GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다. 자세한 내용은 관리자가 플레이스홀더 사용자를 재배정할 때 확인 건너뛰기를 참고합니다. 관리자에게 기여와 멤버십을 재배정하려면 관리자에 대한 기여 매핑 허용을 참고합니다.

플레이스홀더 사용자 재배정 시 확인 우회#

히스토리

사전 요구 사항:

  • 그룹에 대한 Owner 권한이 있어야 합니다.

플레이스홀더를 재배정할 때 엔터프라이즈 사용자에 대한 확인을 우회하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Settings > General을 선택합니다.
  3. Permissions and group features를 확장합니다.
  4. Placeholder user confirmation에서 Reassign placeholders to enterprise users without user confirmation 체크박스를 선택합니다.
  5. When to restore user confirmation에서 사용자 확인 우회를 종료할 날짜를 선택합니다. 기본값은 1일입니다.
  6. Save changes를 선택합니다.

여러 플레이스홀더 사용자의 기여 재배정#

하나의 플레이스홀더 사용자에게 처음 배정된 모든 기여는 대상 인스턴스의 활성 일반 사용자, 서비스 계정, 프로젝트 봇, 그룹 봇 중 한 대상에게 재배정할 수 있습니다. 하나의 플레이스홀더 사용자에게 배정된 기여를 여러 사용자에게 나눌 수는 없습니다.

플레이스홀더 사용자가 다음 조건에 해당하면 여러 플레이스홀더 사용자의 기여를 대상 인스턴스의 같은 사용자에게 재배정할 수 있습니다.

  • 서로 다른 소스 인스턴스에서 온 경우
  • 같은 소스 인스턴스에서 왔지만 대상 인스턴스의 서로 다른 최상위 그룹으로 가져온 경우

배정된 사용자가 재배정 요청을 수락하기 전에 비활성 상태가 되면, 대기 중인 재배정은 해당 사용자가 수락할 때까지 그 사용자에게 연결된 상태로 남습니다.

재배정 요청을 받은 사용자는 다음을 수행할 수 있습니다.

  • 요청을 수락합니다. 이전에 플레이스홀더 사용자에게 귀속되어 있던 모든 기여와 멤버십이 수락한 사용자에게 다시 귀속됩니다. 이 과정은 기여 수에 따라 몇 분이 걸릴 수 있습니다.
  • 요청을 거부하거나 스팸으로 신고합니다. 이 방법은 재배정 요청 이메일에서 제공됩니다.

서비스 계정, 프로젝트 봇, 그룹 봇에 기여를 재배정하면 재배정 요청이 자동으로 승인됩니다.

같은 최상위 그룹으로 이후에 가져오기를 수행하면, 같은 소스 사용자에게 속한 기여와 멤버십은 그 소스 사용자에 대해 이전에 재배정을 수락한 사용자에게 자동으로 매핑됩니다.

GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다. 자세한 내용은 관리자가 플레이스홀더 사용자를 재배정할 때 확인 건너뛰기를 참고합니다. 관리자에게 기여와 멤버십을 재배정하려면 관리자에 대한 기여 매핑 허용을 참고합니다.

재배정 완료#

다음 작업을 수행하기 전에 재배정 절차를 완전히 마쳐야 합니다.

절차를 마치지 않으면 플레이스홀더 사용자에게 배정된 기여를 실제 사용자에게 재배정할 수 없고, 해당 기여는 플레이스홀더 사용자와 연결된 상태로 남습니다.

보안 고려 사항#

기여 및 멤버십 재배정은 되돌릴 수 없으므로 시작하기 전에 모든 내용을 꼼꼼히 확인합니다.

잘못된 사용자에게 기여와 멤버십을 재배정하면 해당 사용자가 그룹의 구성원이 되므로 보안 위협이 됩니다. 그 결과 볼 수 없어야 할 정보를 열람할 수 있습니다.

관리자 액세스 권한이 있는 사용자에게 기여를 재배정하는 기능은 기본적으로 비활성화되어 있으며, 필요하면 활성화할 수 있습니다.

멤버십 보안 고려 사항#

GitLab 권한 모델 때문에, 기존 상위 그룹으로 그룹이나 프로젝트를 가져오면 상위 그룹의 구성원에게 가져온 그룹 또는 프로젝트의 상속된 멤버십이 부여됩니다.

가져온 그룹이나 프로젝트에 이미 상속된 멤버십이 있는 사용자를 기여 및 멤버십 재배정 대상으로 선택하면, 해당 사용자에게 멤버십이 재배정되는 방식이 달라질 수 있습니다.

GitLab에서는 하위 프로젝트나 그룹의 멤버십 권한이 상속된 멤버십 권한보다 낮을 수 없습니다. 배정 대상 사용자의 가져온 멤버십 권한이 기존 상속된 멤버십 권한보다 낮으면, 가져온 멤버십은 해당 사용자에게 재배정되지 않습니다.

그 결과 가져온 그룹 또는 프로젝트에서의 멤버십 권한이 소스에서보다 높아집니다.

UI에서 재배정 요청#

사전 요구 사항:

  • 그룹에 대한 Owner 권한이 있어야 합니다.

최상위 그룹에서 기여와 멤버십을 재배정할 수 있습니다. 기여와 멤버십의 재배정을 요청하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. 각 플레이스홀더에 대해 Placeholder user와 Source 열의 정보를 검토합니다.
  6. Reassign placeholder to 열의 드롭다운 목록에서 사용자를 선택합니다.
  7. Reassign을 선택합니다.

대상 인스턴스의 활성 비봇 사용자 한 명에게는 플레이스홀더 사용자 한 명의 기여만 재배정할 수 있습니다.

사용자가 재배정을 수락하기 전이라면 요청을 취소할 수 있습니다.

GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다. 자세한 내용은 관리자가 플레이스홀더 사용자를 재배정할 때 확인 건너뛰기를 참고합니다. 관리자에게 기여와 멤버십을 재배정하려면 관리자에 대한 기여 매핑 허용을 참고합니다.

CSV 파일을 사용한 재배정 요청#

히스토리
  • GitLab 17.10에서 importer_user_mapping_reassignment_csv라는 기능 플래그와 함께 도입되었습니다. 기본적으로 활성화되어 있습니다.
  • GitLab 18.0에서 일반 공급으로 전환되었습니다. importer_user_mapping_reassignment_csv 기능 플래그가 제거되었습니다.

사전 요구 사항:

  • 그룹에 대한 Owner 권한이 있어야 합니다.

플레이스홀더 사용자가 많은 경우에는 CSV 파일로 기여와 멤버십을 재배정하는 방법을 고려할 수 있습니다. 다음 정보가 미리 채워진 CSV 템플릿을 다운로드할 수 있습니다. 예를 들면 다음과 같습니다.

Source host Import type Source user identifier Source user name Source username
gitlab.example.com gitlab alice Alice Coder a.coder

Source host, Import type, Source user identifier는 수정하지 않습니다. 이 정보는 작성한 CSV 파일을 업로드한 뒤 해당 데이터베이스 레코드를 찾는 데 사용됩니다. Source user name과 Source username은 소스 사용자를 식별하는 값이며 CSV 파일을 업로드한 뒤에는 사용되지 않습니다.

CSV 파일의 모든 행을 수정할 필요는 없습니다. GitLab username 또는 GitLab public email 이 입력된 행만 처리됩니다. 나머지 행은 모두 건너뜁니다.

CSV 파일로 기여와 멤버십의 재배정을 요청하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Reassign with CSV를 선택합니다.
  5. 미리 채워진 CSV 템플릿을 다운로드합니다.
  6. GitLab username 또는 GitLab public email에 대상 인스턴스에 있는 GitLab 사용자의 사용자명 또는 공개 이메일 주소를 입력합니다. 인스턴스 관리자는 확인된 이메일 주소를 가진 사용자라면 누구에게나 재배정할 수 있습니다.
  7. 작성한 CSV 파일을 업로드합니다.
  8. Reassign을 선택합니다.

대상 인스턴스의 활성 비봇 사용자 한 명에게는 플레이스홀더 사용자 한 명의 기여만 배정할 수 있습니다. 사용자는 재배정된 기여를 검토하고 수락할 수 있는 이메일을 받습니다. 사용자가 검토하기 전이라면 재배정 요청을 취소할 수 있습니다.

GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다. 자세한 내용은 관리자가 플레이스홀더 사용자를 재배정할 때 확인 건너뛰기를 참고합니다. 관리자에게 기여와 멤버십을 재배정하려면 관리자에 대한 기여 매핑 허용을 참고합니다.

기여를 재배정하면 GitLab이 다음 항목의 건수를 담은 이메일을 보냅니다.

  • 정상적으로 처리된 행
  • 처리에 실패한 행
  • 건너뛴 행

정상적으로 처리되지 않은 행이 있으면 이메일에 더 자세한 결과가 담긴 CSV 파일이 첨부됩니다.

UI를 사용하지 않고 플레이스홀더 사용자를 일괄 재배정하려면 그룹 플레이스홀더 재배정 API를 참고합니다.

플레이스홀더로 유지#

히스토리

대상 인스턴스의 사용자에게 기여와 멤버십을 재배정하지 않아도 됩니다. 예를 들어 소스 인스턴스에서 기여한 퇴사자가 있지만 대상 인스턴스에는 그 사용자가 존재하지 않는 경우가 있습니다.

이런 경우 기여를 플레이스홀더 사용자에게 배정된 상태로 유지할 수 있습니다. 플레이스홀더 사용자는 프로젝트나 그룹의 구성원이 될 수 없으므로 멤버십 정보는 유지하지 않습니다.

플레이스홀더 사용자의 이름과 사용자명은 소스 사용자의 이름 및 사용자명과 비슷하므로, 이력상의 컨텍스트를 상당 부분 유지할 수 있습니다.

기여를 플레이스홀더 사용자에게 배정된 상태로 유지하는 작업은 하나씩 또는 일괄로 수행할 수 있습니다. 일괄로 재배정하면 네임스페이스 전체와 다음 재배정 상태에 있는 사용자가 영향을 받습니다.

  • Not started
  • Rejected

플레이스홀더 사용자를 하나씩 유지하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. Placeholder user와 Source 열을 확인해 유지할 플레이스홀더 사용자를 찾습니다.
  6. Reassign placeholder to 열에서 Do not reassign을 선택합니다.
  7. Confirm을 선택합니다.

플레이스홀더 사용자를 일괄로 유지하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. 목록 위에서 세로 줄임표(⋮) > Keep all as placeholders를 선택합니다.
  5. 확인 대화 상자에서 Confirm을 선택합니다.

이 작업을 되돌리려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Reassigned 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. 해당 행에서 Undo를 선택합니다.

재배정 요청 취소#

사용자가 재배정 요청을 수락하기 전에는 요청을 취소할 수 있습니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. 해당 행에서 Cancel을 선택합니다.

대기 중인 재배정 요청에 대한 재알림#

사용자가 재배정 요청에 응하지 않으면 이메일을 다시 보내 알릴 수 있습니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. 해당 행에서 Notify를 선택합니다.

재배정 상태 확인 및 필터링#

모든 플레이스홀더 사용자의 재배정 상태를 보려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. Reassignment status 열에서 각 플레이스홀더 사용자의 상태를 확인합니다.

Awaiting reassignment 탭에 표시되는 상태는 다음과 같습니다.

  • Not started - 재배정이 시작되지 않았습니다.
  • Pending approval - 재배정이 사용자 승인을 기다리고 있습니다.
  • Reassigning - 재배정이 진행 중입니다.
  • Rejected - 사용자가 재배정을 거부했습니다.
  • Failed - 재배정이 실패했습니다.

Reassigned 탭에 표시되는 상태는 다음과 같습니다.

  • Success - 재배정이 완료되었습니다.
  • Kept as placeholder - 플레이스홀더 사용자가 영구 상태로 유지되었습니다.

표는 기본적으로 플레이스홀더 사용자 이름을 기준으로 알파벳순으로 정렬됩니다. 재배정 상태를 기준으로 정렬할 수도 있습니다.

기여 재배정 확인#

Skip confirmation when administrators reassign placeholder users 설정이 활성화되어 있으면 다음과 같이 동작합니다.

  • 관리자가 사용자 확인 없이 기여를 즉시 재배정할 수 있습니다.
  • 관리자가 활성 및 비활성 비봇 사용자에게 기여를 재배정할 수 있습니다.
  • 기여가 재배정되었다는 이메일을 받습니다.

이 설정이 활성화되어 있지 않으면 재배정을 수락하거나 거부할 수 있습니다.

기여 재배정 수락#

가져오기 절차가 진행되었으며 본인에게 기여를 재배정하는 것을 확인해 달라는 이메일을 받을 수 있습니다.

이 가져오기 절차를 미리 안내받았더라도 재배정 세부 정보는 반드시 꼼꼼히 확인해야 합니다. 이메일에 표시되는 세부 정보는 다음과 같습니다.

  • Imported from - 가져온 콘텐츠의 출처 플랫폼입니다. 예를 들어 다른 GitLab 인스턴스, GitHub, Bitbucket 등입니다.
  • Original user - 소스 플랫폼에서의 사용자 이름과 사용자명입니다. 해당 플랫폼에서 사용하던 본인의 이름과 사용자명일 수 있습니다.
  • Imported to - 새 플랫폼의 이름이며, GitLab 인스턴스만 해당합니다.
  • Reassigned to - 해당 GitLab 인스턴스에서의 본인 전체 이름과 사용자명입니다.
  • Reassigned by - 가져오기를 수행한 동료나 상급자의 전체 이름과 사용자명입니다.

기여 재배정 거부#

본인에게 기여를 재배정하는 것을 확인해 달라는 이메일을 받았는데 내용을 알 수 없거나 정보에 오류가 있다면 다음과 같이 대응합니다.

  1. 절차를 진행하지 않거나 기여 재배정을 거부합니다.
  2. 신뢰할 수 있는 동료나 상급자와 상의합니다.

보안 고려 사항#

재배정 요청의 세부 정보는 반드시 꼼꼼히 확인해야 합니다. 신뢰할 수 있는 동료나 상급자에게 이 절차를 미리 안내받지 않았다면 더욱 주의합니다.

조금이라도 의심스러운 재배정은 수락하지 말고 다음과 같이 대응합니다.

  1. 이메일의 안내에 따라 조치하지 않습니다.
  2. 신뢰할 수 있는 동료나 상급자와 상의합니다.

잘 알고 신뢰하는 사용자의 재배정만 수락합니다. 기여 재배정은 영구적이며 되돌릴 수 없습니다. 재배정을 수락하면 기여가 본인에게 잘못 귀속될 수 있습니다.

기여 재배정 절차는 GitLab에서 Approve reassignment를 선택해 재배정 요청을 수락한 뒤에만 시작됩니다. 이메일의 링크를 선택하는 것으로는 절차가 시작되지 않습니다.

기여 및 멤버십 재배정

GitLab v19.4
Tier: Premium, Ultimate
Offering: GitLab.com
원문 보기

요약

최상위 그룹의 Owner 권한이 있는 사용자는 플레이스홀더 사용자의 기여와 멤버십을 기존의 활성 상태인 비봇 사용자에게 재배정할 수 있습니다. GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다.

최상위 그룹의 Owner 권한이 있는 사용자는 플레이스홀더 사용자의 기여와 멤버십을 기존의 활성 상태인 비봇 사용자에게 재배정할 수 있습니다. 대상 인스턴스에서 최상위 그룹의 Owner 권한이 있는 사용자는 다음을 수행할 수 있습니다.

GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다. 자세한 내용은 관리자가 플레이스홀더 사용자를 재배정할 때 확인 건너뛰기를 참고합니다. 관리자에게 기여와 멤버십을 재배정하려면 관리자에 대한 기여 매핑 허용을 참고합니다.

플레이스홀더 사용자 재배정 시 확인 우회#

히스토리

사전 요구 사항:

  • 그룹에 대한 Owner 권한이 있어야 합니다.

플레이스홀더를 재배정할 때 엔터프라이즈 사용자에 대한 확인을 우회하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Settings > General을 선택합니다.
  3. Permissions and group features를 확장합니다.
  4. Placeholder user confirmation에서 Reassign placeholders to enterprise users without user confirmation 체크박스를 선택합니다.
  5. When to restore user confirmation에서 사용자 확인 우회를 종료할 날짜를 선택합니다. 기본값은 1일입니다.
  6. Save changes를 선택합니다.

여러 플레이스홀더 사용자의 기여 재배정#

하나의 플레이스홀더 사용자에게 처음 배정된 모든 기여는 대상 인스턴스의 활성 일반 사용자, 서비스 계정, 프로젝트 봇, 그룹 봇 중 한 대상에게 재배정할 수 있습니다. 하나의 플레이스홀더 사용자에게 배정된 기여를 여러 사용자에게 나눌 수는 없습니다.

플레이스홀더 사용자가 다음 조건에 해당하면 여러 플레이스홀더 사용자의 기여를 대상 인스턴스의 같은 사용자에게 재배정할 수 있습니다.

  • 서로 다른 소스 인스턴스에서 온 경우
  • 같은 소스 인스턴스에서 왔지만 대상 인스턴스의 서로 다른 최상위 그룹으로 가져온 경우

배정된 사용자가 재배정 요청을 수락하기 전에 비활성 상태가 되면, 대기 중인 재배정은 해당 사용자가 수락할 때까지 그 사용자에게 연결된 상태로 남습니다.

재배정 요청을 받은 사용자는 다음을 수행할 수 있습니다.

  • 요청을 수락합니다. 이전에 플레이스홀더 사용자에게 귀속되어 있던 모든 기여와 멤버십이 수락한 사용자에게 다시 귀속됩니다. 이 과정은 기여 수에 따라 몇 분이 걸릴 수 있습니다.
  • 요청을 거부하거나 스팸으로 신고합니다. 이 방법은 재배정 요청 이메일에서 제공됩니다.

서비스 계정, 프로젝트 봇, 그룹 봇에 기여를 재배정하면 재배정 요청이 자동으로 승인됩니다.

같은 최상위 그룹으로 이후에 가져오기를 수행하면, 같은 소스 사용자에게 속한 기여와 멤버십은 그 소스 사용자에 대해 이전에 재배정을 수락한 사용자에게 자동으로 매핑됩니다.

GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다. 자세한 내용은 관리자가 플레이스홀더 사용자를 재배정할 때 확인 건너뛰기를 참고합니다. 관리자에게 기여와 멤버십을 재배정하려면 관리자에 대한 기여 매핑 허용을 참고합니다.

재배정 완료#

다음 작업을 수행하기 전에 재배정 절차를 완전히 마쳐야 합니다.

절차를 마치지 않으면 플레이스홀더 사용자에게 배정된 기여를 실제 사용자에게 재배정할 수 없고, 해당 기여는 플레이스홀더 사용자와 연결된 상태로 남습니다.

보안 고려 사항#

기여 및 멤버십 재배정은 되돌릴 수 없으므로 시작하기 전에 모든 내용을 꼼꼼히 확인합니다.

잘못된 사용자에게 기여와 멤버십을 재배정하면 해당 사용자가 그룹의 구성원이 되므로 보안 위협이 됩니다. 그 결과 볼 수 없어야 할 정보를 열람할 수 있습니다.

관리자 액세스 권한이 있는 사용자에게 기여를 재배정하는 기능은 기본적으로 비활성화되어 있으며, 필요하면 활성화할 수 있습니다.

멤버십 보안 고려 사항#

GitLab 권한 모델 때문에, 기존 상위 그룹으로 그룹이나 프로젝트를 가져오면 상위 그룹의 구성원에게 가져온 그룹 또는 프로젝트의 상속된 멤버십이 부여됩니다.

가져온 그룹이나 프로젝트에 이미 상속된 멤버십이 있는 사용자를 기여 및 멤버십 재배정 대상으로 선택하면, 해당 사용자에게 멤버십이 재배정되는 방식이 달라질 수 있습니다.

GitLab에서는 하위 프로젝트나 그룹의 멤버십 권한이 상속된 멤버십 권한보다 낮을 수 없습니다. 배정 대상 사용자의 가져온 멤버십 권한이 기존 상속된 멤버십 권한보다 낮으면, 가져온 멤버십은 해당 사용자에게 재배정되지 않습니다.

그 결과 가져온 그룹 또는 프로젝트에서의 멤버십 권한이 소스에서보다 높아집니다.

UI에서 재배정 요청#

사전 요구 사항:

  • 그룹에 대한 Owner 권한이 있어야 합니다.

최상위 그룹에서 기여와 멤버십을 재배정할 수 있습니다. 기여와 멤버십의 재배정을 요청하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. 각 플레이스홀더에 대해 Placeholder user와 Source 열의 정보를 검토합니다.
  6. Reassign placeholder to 열의 드롭다운 목록에서 사용자를 선택합니다.
  7. Reassign을 선택합니다.

대상 인스턴스의 활성 비봇 사용자 한 명에게는 플레이스홀더 사용자 한 명의 기여만 재배정할 수 있습니다.

사용자가 재배정을 수락하기 전이라면 요청을 취소할 수 있습니다.

GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다. 자세한 내용은 관리자가 플레이스홀더 사용자를 재배정할 때 확인 건너뛰기를 참고합니다. 관리자에게 기여와 멤버십을 재배정하려면 관리자에 대한 기여 매핑 허용을 참고합니다.

CSV 파일을 사용한 재배정 요청#

히스토리
  • GitLab 17.10에서 importer_user_mapping_reassignment_csv라는 기능 플래그와 함께 도입되었습니다. 기본적으로 활성화되어 있습니다.
  • GitLab 18.0에서 일반 공급으로 전환되었습니다. importer_user_mapping_reassignment_csv 기능 플래그가 제거되었습니다.

사전 요구 사항:

  • 그룹에 대한 Owner 권한이 있어야 합니다.

플레이스홀더 사용자가 많은 경우에는 CSV 파일로 기여와 멤버십을 재배정하는 방법을 고려할 수 있습니다. 다음 정보가 미리 채워진 CSV 템플릿을 다운로드할 수 있습니다. 예를 들면 다음과 같습니다.

Source host Import type Source user identifier Source user name Source username
gitlab.example.com gitlab alice Alice Coder a.coder

Source host, Import type, Source user identifier는 수정하지 않습니다. 이 정보는 작성한 CSV 파일을 업로드한 뒤 해당 데이터베이스 레코드를 찾는 데 사용됩니다. Source user name과 Source username은 소스 사용자를 식별하는 값이며 CSV 파일을 업로드한 뒤에는 사용되지 않습니다.

CSV 파일의 모든 행을 수정할 필요는 없습니다. GitLab username 또는 GitLab public email 이 입력된 행만 처리됩니다. 나머지 행은 모두 건너뜁니다.

CSV 파일로 기여와 멤버십의 재배정을 요청하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Reassign with CSV를 선택합니다.
  5. 미리 채워진 CSV 템플릿을 다운로드합니다.
  6. GitLab username 또는 GitLab public email에 대상 인스턴스에 있는 GitLab 사용자의 사용자명 또는 공개 이메일 주소를 입력합니다. 인스턴스 관리자는 확인된 이메일 주소를 가진 사용자라면 누구에게나 재배정할 수 있습니다.
  7. 작성한 CSV 파일을 업로드합니다.
  8. Reassign을 선택합니다.

대상 인스턴스의 활성 비봇 사용자 한 명에게는 플레이스홀더 사용자 한 명의 기여만 배정할 수 있습니다. 사용자는 재배정된 기여를 검토하고 수락할 수 있는 이메일을 받습니다. 사용자가 검토하기 전이라면 재배정 요청을 취소할 수 있습니다.

GitLab Self-Managed와 GitLab Dedicated에서는 관리자가 사용자 확인 없이 활성 및 비활성 비봇 사용자에게 기여와 멤버십을 즉시 재배정할 수 있습니다. 자세한 내용은 관리자가 플레이스홀더 사용자를 재배정할 때 확인 건너뛰기를 참고합니다. 관리자에게 기여와 멤버십을 재배정하려면 관리자에 대한 기여 매핑 허용을 참고합니다.

기여를 재배정하면 GitLab이 다음 항목의 건수를 담은 이메일을 보냅니다.

  • 정상적으로 처리된 행
  • 처리에 실패한 행
  • 건너뛴 행

정상적으로 처리되지 않은 행이 있으면 이메일에 더 자세한 결과가 담긴 CSV 파일이 첨부됩니다.

UI를 사용하지 않고 플레이스홀더 사용자를 일괄 재배정하려면 그룹 플레이스홀더 재배정 API를 참고합니다.

플레이스홀더로 유지#

히스토리

대상 인스턴스의 사용자에게 기여와 멤버십을 재배정하지 않아도 됩니다. 예를 들어 소스 인스턴스에서 기여한 퇴사자가 있지만 대상 인스턴스에는 그 사용자가 존재하지 않는 경우가 있습니다.

이런 경우 기여를 플레이스홀더 사용자에게 배정된 상태로 유지할 수 있습니다. 플레이스홀더 사용자는 프로젝트나 그룹의 구성원이 될 수 없으므로 멤버십 정보는 유지하지 않습니다.

플레이스홀더 사용자의 이름과 사용자명은 소스 사용자의 이름 및 사용자명과 비슷하므로, 이력상의 컨텍스트를 상당 부분 유지할 수 있습니다.

기여를 플레이스홀더 사용자에게 배정된 상태로 유지하는 작업은 하나씩 또는 일괄로 수행할 수 있습니다. 일괄로 재배정하면 네임스페이스 전체와 다음 재배정 상태에 있는 사용자가 영향을 받습니다.

  • Not started
  • Rejected

플레이스홀더 사용자를 하나씩 유지하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. Placeholder user와 Source 열을 확인해 유지할 플레이스홀더 사용자를 찾습니다.
  6. Reassign placeholder to 열에서 Do not reassign을 선택합니다.
  7. Confirm을 선택합니다.

플레이스홀더 사용자를 일괄로 유지하려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. 목록 위에서 세로 줄임표(⋮) > Keep all as placeholders를 선택합니다.
  5. 확인 대화 상자에서 Confirm을 선택합니다.

이 작업을 되돌리려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Reassigned 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. 해당 행에서 Undo를 선택합니다.

재배정 요청 취소#

사용자가 재배정 요청을 수락하기 전에는 요청을 취소할 수 있습니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. 해당 행에서 Cancel을 선택합니다.

대기 중인 재배정 요청에 대한 재알림#

사용자가 재배정 요청에 응하지 않으면 이메일을 다시 보내 알릴 수 있습니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. 해당 행에서 Notify를 선택합니다.

재배정 상태 확인 및 필터링#

모든 플레이스홀더 사용자의 재배정 상태를 보려면 다음을 수행합니다.

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다. 이 그룹은 최상위 그룹이어야 합니다.
  2. 왼쪽 사이드바에서 Manage > Members를 선택합니다.
  3. Placeholders 탭을 선택합니다.
  4. Awaiting reassignment 하위 탭으로 이동하면 플레이스홀더가 표에 나열됩니다.
  5. Reassignment status 열에서 각 플레이스홀더 사용자의 상태를 확인합니다.

Awaiting reassignment 탭에 표시되는 상태는 다음과 같습니다.

  • Not started - 재배정이 시작되지 않았습니다.
  • Pending approval - 재배정이 사용자 승인을 기다리고 있습니다.
  • Reassigning - 재배정이 진행 중입니다.
  • Rejected - 사용자가 재배정을 거부했습니다.
  • Failed - 재배정이 실패했습니다.

Reassigned 탭에 표시되는 상태는 다음과 같습니다.

  • Success - 재배정이 완료되었습니다.
  • Kept as placeholder - 플레이스홀더 사용자가 영구 상태로 유지되었습니다.

표는 기본적으로 플레이스홀더 사용자 이름을 기준으로 알파벳순으로 정렬됩니다. 재배정 상태를 기준으로 정렬할 수도 있습니다.

기여 재배정 확인#

Skip confirmation when administrators reassign placeholder users 설정이 활성화되어 있으면 다음과 같이 동작합니다.

  • 관리자가 사용자 확인 없이 기여를 즉시 재배정할 수 있습니다.
  • 관리자가 활성 및 비활성 비봇 사용자에게 기여를 재배정할 수 있습니다.
  • 기여가 재배정되었다는 이메일을 받습니다.

이 설정이 활성화되어 있지 않으면 재배정을 수락하거나 거부할 수 있습니다.

기여 재배정 수락#

가져오기 절차가 진행되었으며 본인에게 기여를 재배정하는 것을 확인해 달라는 이메일을 받을 수 있습니다.

이 가져오기 절차를 미리 안내받았더라도 재배정 세부 정보는 반드시 꼼꼼히 확인해야 합니다. 이메일에 표시되는 세부 정보는 다음과 같습니다.

  • Imported from - 가져온 콘텐츠의 출처 플랫폼입니다. 예를 들어 다른 GitLab 인스턴스, GitHub, Bitbucket 등입니다.
  • Original user - 소스 플랫폼에서의 사용자 이름과 사용자명입니다. 해당 플랫폼에서 사용하던 본인의 이름과 사용자명일 수 있습니다.
  • Imported to - 새 플랫폼의 이름이며, GitLab 인스턴스만 해당합니다.
  • Reassigned to - 해당 GitLab 인스턴스에서의 본인 전체 이름과 사용자명입니다.
  • Reassigned by - 가져오기를 수행한 동료나 상급자의 전체 이름과 사용자명입니다.

기여 재배정 거부#

본인에게 기여를 재배정하는 것을 확인해 달라는 이메일을 받았는데 내용을 알 수 없거나 정보에 오류가 있다면 다음과 같이 대응합니다.

  1. 절차를 진행하지 않거나 기여 재배정을 거부합니다.
  2. 신뢰할 수 있는 동료나 상급자와 상의합니다.

보안 고려 사항#

재배정 요청의 세부 정보는 반드시 꼼꼼히 확인해야 합니다. 신뢰할 수 있는 동료나 상급자에게 이 절차를 미리 안내받지 않았다면 더욱 주의합니다.

조금이라도 의심스러운 재배정은 수락하지 말고 다음과 같이 대응합니다.

  1. 이메일의 안내에 따라 조치하지 않습니다.
  2. 신뢰할 수 있는 동료나 상급자와 상의합니다.

잘 알고 신뢰하는 사용자의 재배정만 수락합니다. 기여 재배정은 영구적이며 되돌릴 수 없습니다. 재배정을 수락하면 기여가 본인에게 잘못 귀속될 수 있습니다.

기여 재배정 절차는 GitLab에서 Approve reassignment를 선택해 재배정 요청을 수락한 뒤에만 시작됩니다. 이메일의 링크를 선택하는 것으로는 절차가 시작되지 않습니다.