ユーザーアカウントの削除

GitLabインスタンスからユーザーを削除するには、以下の方法があります:

  • ユーザー自身。
  • 管理者。
note
ユーザーを削除すると、そのユーザー・ネームスペース内のすべてのプロジェクトが削除されます。

自分のアカウントを削除

ユーザーが自分のアカウントを削除してからユーザーレコードが削除されるまでの遅延。GitLab 16.0からdelay_delete_own_userというフラグで導入されました。GitLab.comではデフォルトで有効になっています。

フラグ: セルフマネジメントのGitLabでは、デフォルトではこの機能は利用できません。利用可能にするには、管理者がdelay_delete_own_userという機能フラグを有効にします。GitLab.comでは、この機能は利用可能です。

ユーザーとして、自分のアカウントを削除するには:

  1. 左のサイドバーで、自分のアバターを選択してください。
  2. プロフィールの編集を選択します。
  3. 左サイドバーで「アカウント」を選択します。
  4. アカウントの削除を選択します。
note
GitLab.comでは、ユーザーが自分のアカウントを削除してからユーザーレコードが削除されるまで7日間の遅延があります。この間、そのユーザーはブロックされ、同じアドレスやユーザー名を持つ新しいアカウントを作成することはできません。アカウントのブロックを解除しても、そのアカウントは削除キューに残っているため、削除を取り消すことはできません。イシュー、コメント、ノート、マージリクエスト、スニペットがないアカウントは直ちに削除されます。有料ネームスペースのアカウントは直ちに削除されます。

ユーザーとユーザー貢献者の削除

管理者として、ユーザーアカウントを削除するには:

  1. 左のサイドバーで、Search を選択するか、次のページに進んでください。
  2. Admin Areaを選択します。
  3. 概要 > ユーザーを選択します。
  4. ユーザーを選択します。
  5. アカウント」タブで選択します:
    • ユーザーを削除] を選択すると、ユーザーのみが削除されますが、関連レコードは維持されます。選択したユーザーがグループの唯一のオーナーである場合、このオプションは使用できません。
    • Delete user and contribution(ユーザーと貢献者を削除) ユーザーとその関連レコードを削除します。このオプションは、ユーザーがグループの唯一の直接オーナーであるすべてのグループ(およびグループ内のプロジェクト)も削除します。継承所有権は適用されません。
caution
ユーザーと貢献者の削除オプションを使用すると、意図した以上のデータが削除される可能性があります。詳細については、関連レコードを参照してください。

関連レコード

ユーザーを削除する場合、以下の方法があります:

  • ユーザーだけを削除します。すべての関連レコードがユーザーと一緒に削除されるわけではありません。これらのレコードは削除される代わりに、ユーザ名 Ghost User を持つシステム全体のユーザに移動されます。ゴーストユーザーの目的は、そのようなレコードのコンテナとして機能することです。削除されたユーザーによるコミットには、元のユーザーのユーザー名が表示されます。ユーザーの個人プロジェクトは削除されますが、ゴーストユーザーには移動しません。
  • ユーザーとその貢献者を削除します:
    • 悪用レポーター。
    • 絵文字のリアクション
    • エピック
    • ユーザーがオーナー・ロールを持つ唯一のユーザーであるグループ。
    • イシュー
    • マージリクエスト
    • メモとコメント。
    • 個人アクセストークン。
    • スニペット。

削除の代わりにユーザーをブロックすることもできます。

ユーザーが不正使用報告やスパムログから削除されると、これらの関連記録は常に削除されます。

関連レコードの削除オプションは管理エリアだけでなくAPIでもリクエストできます。

トラブルシューティング

ユーザを削除するとPostgreSQLのNULL値エラーになります。

ユーザが削除されず、以下のエラーが発生する既知のイシューがあります:

ERROR: null value in column "user_id" violates not-null constraint

このエラーはPostgreSQL ログおよび管理エリアのバックグラウンド・ジョブ・ビューの Retriesセクションで確認できます。

イテレーションにイシューを追加するなど、削除対象のユーザがイテレーション機能を使用した場合、そのユーザを削除するにはイシューに記述されている回避策を使用する必要があります。