사용자 계정 삭제
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 사용자로 이동합니다.
-
- 사용자 및 기여를 삭제하여 다음을 포함한 기여를 삭제합니다:
이 경우에도, 커밋은 사용자 정보를 유지하므로 Git 리포지터리 내의 데이터 무결성이 유지됩니다.
삭제 대신 사용자를 차단하는 것이 대안입니다.
사용자가 남용 보고서 또는 스팸 로그에서 삭제되면 이러한 연관 레코드가 항상 제거됩니다.
삭제된 사용자의 기여 옵션은 API 및 관리 영역에서 요청할 수 있습니다.
문제 해결
사용자 삭제로 인한 PostgreSQL 널 값 오류
사용자가 삭제되지 않고 다음 오류가 생성되는 알려진 이슈가 있습니다:
ERROR: null value in column "user_id" violates not-null constraint
이 오류는 PostgreSQL 로그와 관리 영역의 백그라운드 작업 뷰의 재시도 섹션에서 찾을 수 있습니다.
사용자 삭제 대상이 이터레이션 기능을 사용한 경우(예: 이터레이션에 이슈 추가), 이슈에 문서화된 대체 해결 방법을 사용해야 사용자를 삭제할 수 있습니다.