사용자 계정 삭제
Tier: Free, Premium, Ultimate
Offering: GitLab.com, Self-Managed, GitLab Dedicated
사용자는 GitLab 인스턴스에서 다음과 같이 삭제할 수 있습니다:
- 사용자 본인.
- 관리자.
사용자를 삭제하면 해당 사용자 네임스페이스의 모든 프로젝트가 삭제됩니다.
본인 계정 삭제
- 사용자가 본인 계정을 삭제하고 GitLab 16.0에서
delay_delete_own_user
이름의 플래그를 통해 사용자 레코드의 삭제가 지연되었습니다. 이 기능은 기본적으로 GitLab.com에서 활성화되어 있습니다.
Self-Managed GitLab의 경우, 기본적으로 이 기능이 사용할 수 없습니다. 이 기능을 사용하려면 관리자가 delay_delete_own_user이름의 피처 플래그를 활성화해야 합니다. GitLab.com에서는 이 기능을 사용할 수 있습니다. GitLab Dedicated의 경우, 이 기능을 사용할 수 없습니다.
사용자로서, 본인 계정을 삭제하려면:
- 좌측 사이드바에서 당신의 아바타를 선택합니다.
- 프로필 편집을 선택합니다.
- 좌측 사이드바에서 계정을 선택합니다.
- 계정 삭제를 선택합니다.
GitLab.com에서는 사용자가 본인 계정을 삭제한 후 사용자 레코드가 삭제될 때까지 7일의 지연이 있습니다. 이 기간 동안 해당 사용자는 차단되며 동일한 이메일 주소나 사용자 이름으로 새 계정을 만들 수 없습니다. 이슈, 코멘트, 노트, Merge Request 또는 스니펫이 없는 계정은 즉시 삭제됩니다. 유료 네임스페이스에 속한 계정은 즉시 삭제됩니다.
사용자 및 사용자 기여물 삭제
Tier: Free, Premium, Ultimate
Offering: Self-Managed, GitLab Dedicated
관리자로서, 사용자 계정을 삭제하려면:
- 좌측 사이드바에서 맨 아래에 있는 관리자 영역을 선택합니다.
- 개요 > 사용자를 선택합니다.
- 사용자를 선택합니다.
-
계정 탭에서 다음을 선택합니다:
- 사용자 삭제는 사용자만 삭제하고 관련 레코드를 유지합니다. 선택한 사용자가 어떤 그룹의 유일한 소유자인 경우 이 옵션을 사용할 수 없습니다.
- 사용자 및 기여물 삭제는 사용자와 해당된 레코드를 삭제합니다. 이 옵션은 사용자가 그룹의 유일한 직접 소유자인 모든 그룹(및 해당 그룹 내 프로젝트)도 삭제합니다. 상속된 소유권은 적용되지 않습니다.
사용자 및 기여물 삭제 옵션을 사용하면 의도와 다른 데이터가 삭제될 수 있습니다. 추가 정보는 관련 레코드를 참조하세요.
관련 레코드
사용자를 삭제할 때, 다음 중 하나를 수행할 수 있습니다:
- 사용자만 삭제하고, 기여물을 시스템 전체적인 “Ghost 사용자”로 이동시킵니다:
-
@ghost
가 삭제된 사용자의 기여물을 포함하는 컨테이너로 작용합니다. - 사용자의 프로필 및 개인 프로젝트가 삭제되며, Ghost 사용자로 이동하지 않습니다.
-
- 사용자와 해당된 레코드를 삭제합니다. 여기에는 다음이 포함됩니다:
- 남용 보고서.
- 이모지 반응.
- 사용자가 유일한 사용자로서 소유자 역할을 가진 그룹.
- 개인 액세스 토큰.
- 에픽.
- 이슈.
- Merge Request.
- 스니펫.
- 기타 사용자의 코멘트와 노트 커밋와 관련하여, 에픽, 이슈, Merge Request 그리고 스니펫.
두 경우 모두 이에 따라 커밋은 사용자 정보를 유지하며, 따라서 Git 리포지터리 내에서 데이터 무결성을 유지합니다.
삭제하는 대신 사용자 차단을 선택할 수 있습니다.
사용자가 남용 보고서나 스팸 로그에서 삭제되면, 이러한 관련 레코드는 항상 삭제됩니다.
관련 레코드의 삭제 옵션은 API뿐만 아니라 관리자 영역에서도 요청할 수 있습니다.
문제 해결
사용자 삭제로 인해 PostgreSQL null 값 오류 발생
알려진 문제로 인해 사용자가 삭제되지 않고 다음과 같은 오류가 생성됩니다:
ERROR: null value in column "user_id" violates not-null constraint
이 오류는 PostgreSQL 로그와 관리자 영역의 백그라운드 작업 보기의 재시도 섹션에서 찾을 수 있습니다.
사용자가 이터레이션 기능을 사용했을 경우, 예를 들어 이터레이션에 이슈를 추가하는 경우, 사용자를 삭제하려면 이슈에 문서화된 해결책을 사용해야 합니다.