【发布时间】:2020-08-29 13:47:50
【问题描述】:
我正在使用 gcloud 和 kubectl 来处理我的资源(Kubernetes、VM 等)。一切正常,直到我阅读了一些创建新服务帐户并通过云激活它的文章。像这样的:
gcloud auth activate-service-account --key-file=path/to/key
创建的服务帐户对少数资源的权限有限。当我运行命令时,例如:
kubectl --namespace production get pods
我收到的回复如下:
来自服务器的错误(禁止):Pod 被禁止:用户 “SA-USER@PROGECTNAME.iam.gserviceaccount.com” 无法列出命名空间中 API 组“”中的资源“pod” “生产”:需要 ["container.pods.list"] 权限之一。
SA SA-USER@PROGECTNAME.iam.gserviceaccount.com 是我昨天创建的服务帐户。出于某种原因,它控制了我的默认权限,我被锁定了,因为这个用户几乎没有权限。
我试图让gcloud 忘记这个服务帐户,但没有成功。我尝试过的事情:
- 卸载和安装
gcloud和kubectl - 删除配置目录(“~/.config/gcloud/”)
gcloud auth login
所有尝试都失败了。我仍然收到与上述相同的消息。
如何让gcloud 和kubectl 忘记此服务帐户?
谢谢!
【问题讨论】:
-
你试过
gcloud auth application-default login吗?您还可以通过gcloud config list查看 gcloud CLI 的当前配置,并使用gcloud config set param_name param_value更改一些默认参数。有了这个,您将能够解决您的问题。 -
是的,这解决了问题!谢谢你。请将其转换为答案,我将其标记为“解决方案”。
-
很高兴听到这个消息!!我回答了你的问题;)
标签: google-cloud-platform gcloud kubectl service-accounts google-cloud-iam