删除用户

目录

问题描述

问题:在创建或同步新用户时,系统提示用户已存在。该如何处理?

出于安全考虑,平台禁止创建与之前已删除用户同名的新用户(包括本地用户和 IDP 用户)。此限制适用于:

  • 创建与已删除用户同名的本地新用户
  • 同步与已删除用户同名的 IDP 用户

升级到当前版本后,您可能会遇到以下情况导致该问题:

  • 创建与升级前已删除用户同名的新用户
  • 同步与升级前已删除用户同名的新用户

解决方案

为解决此问题,您需要在 global 集群的任一控制节点上执行特定脚本,清理已删除用户的信息。

清理已删除的 IDP 用户

在 global 集群任一控制节点执行以下命令:

kubectl delete users -l 'auth.cpaas.io/user.connector_id=<IDP Name>,auth.cpaas.io/user.state=deleted'

示例:

kubectl delete users -l 'auth.cpaas.io/user.connector_id=github,auth.cpaas.io/user.state=deleted'

清理已删除的本地用户

在 global 集群任一控制节点依次执行以下两个脚本:

  1. 清理用户密码:

    kubectl get users -l 'auth.cpaas.io/user.connector_id=local,auth.cpaas.io/user.state=deleted' | awk '{print $1}' | xargs kubectl delete password -n cpaas-system
  2. 清理用户:

    kubectl delete users -l 'auth.cpaas.io/user.connector_id=local,auth.cpaas.io/user.state=deleted'