ユーザーアカウントの削除
GitLabインスタンスからユーザーを削除するには、以下の方法があります:
- ユーザー自身。
- 管理者。
自分のアカウントを削除
ユーザーが自分のアカウントを削除してからユーザーレコードが削除されるまでの遅延。GitLab 16.0から
delay_delete_own_user
というフラグで導入されました。GitLab.comではデフォルトで有効になっています。
フラグ: セルフマネジメントのGitLabでは、デフォルトではこの機能は利用できません。利用可能にするには、管理者がdelay_delete_own_user
という機能フラグを有効にします。GitLab.comでは、この機能は利用可能です。
ユーザーとして、自分のアカウントを削除するには:
- 左のサイドバーで、自分のアバターを選択してください。
- プロフィールの編集を選択します。
- 左サイドバーで「アカウント」を選択します。
- アカウントの削除を選択します。
ユーザーとユーザー貢献者の削除
管理者として、ユーザーアカウントを削除するには:
- 左のサイドバーで、Search を選択するか、次のページに進んでください。
- Admin Areaを選択します。
- 概要 > ユーザーを選択します。
- ユーザーを選択します。
-
アカウント」タブで選択します:
- ユーザーを削除] を選択すると、ユーザーのみが削除されますが、関連レコードは維持されます。選択したユーザーがグループの唯一のオーナーである場合、このオプションは使用できません。
- Delete user and contribution(ユーザーと貢献者を削除) ユーザーとその関連レコードを削除します。このオプションは、ユーザーがグループの唯一の直接オーナーであるすべてのグループ(およびグループ内のプロジェクト)も削除します。継承所有権は適用されません。
関連レコード
ユーザーを削除する場合、以下の方法があります:
- ユーザーだけを削除します。すべての関連レコードがユーザーと一緒に削除されるわけではありません。これらのレコードは削除される代わりに、ユーザ名 Ghost User を持つシステム全体のユーザに移動されます。ゴーストユーザーの目的は、そのようなレコードのコンテナとして機能することです。削除されたユーザーによるコミットには、元のユーザーのユーザー名が表示されます。ユーザーの個人プロジェクトは削除されますが、ゴーストユーザーには移動しません。
- ユーザーとその貢献者を削除します:
- 悪用レポーター。
- 絵文字のリアクション
- エピック
- ユーザーがオーナー・ロールを持つ唯一のユーザーであるグループ。
- イシュー
- マージリクエスト
- メモとコメント。
- 個人アクセストークン。
- スニペット。
削除の代わりにユーザーをブロックすることもできます。
ユーザーが不正使用報告やスパムログから削除されると、これらの関連記録は常に削除されます。
関連レコードの削除オプションは管理エリアだけでなくAPIでもリクエストできます。
トラブルシューティング
ユーザを削除するとPostgreSQLのNULL値エラーになります。
ユーザが削除されず、以下のエラーが発生する既知のイシューがあります:
ERROR: null value in column "user_id" violates not-null constraint
このエラーはPostgreSQL ログおよび管理エリアのバックグラウンド・ジョブ・ビューの Retriesセクションで確認できます。
イテレーションにイシューを追加するなど、削除対象のユーザがイテレーション機能を使用した場合、そのユーザを削除するにはイシューに記述されている回避策を使用する必要があります。