【发布时间】:2020-07-23 14:36:22
【问题描述】:
我有一个使用 kubeadm 部署的 Kubernetes v1.14 本地集群,但我的 kubernetes-admin 用户登录名已被盗用。
我想撤销其证书,但 Kubernetes API 服务器没有查找 CRL 文件的机制。我已经使用新的 ClusterRoleBinding 创建了另一个管理员用户。我看到的唯一解决方案是通过删除用户的关联 ClusterRoleBinding: cluster-admin 来取消对用户的授权。
但是,这个 ClusterRoleBinding 的 Subject 是“system:masters”组。 即使我找不到属于“system:masters”组的任何其他系统用户,但我担心如果我删除它会破坏一些东西。我对这种情况没有任何经验。
我在 Google 上搜索了很多,但找不到关于开源 Kubernetes 的这个主题的相关信息。
删除“cluster-admin”ClusterRoleBinding 是否安全?
% openssl x509 -noout -subject -in <(kubectl config view --raw -o jsonpath='{.users[?(@.name == "kubernetes-admin")].user.client-certificate-data}' | base64 -d)
subject= /O=system:masters/CN=kubernetes-admin
%
% kubectl describe clusterrolebindings.rbac.authorization.k8s.io cluster-admin
Name: cluster-admin
Labels: kubernetes.io/bootstrapping=rbac-defaults
Annotations: rbac.authorization.kubernetes.io/autoupdate: true
Role:
Kind: ClusterRole
Name: cluster-admin
Subjects:
Kind Name Namespace
---- ---- ---------
Group system:masters
%
【问题讨论】:
标签: kubernetes