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