![](/img/trans.png)
[英]Using a Google service account keyfile in a Kubernetes serviceaccount as a testing environment replacement for GKE workload identity
[英]GKE Workload Identity service account for all namespaces
我正在按照指南设置 GCP 的工作负载标识,并使其适用于针对默认 Kubernetes 命名空间配置的服务帐户,如下所示:
gcloud iam service-accounts add-iam-policy-binding \
--role roles/iam.workloadIdentityUser \
--member "serviceAccount:[PROJECT_ID].svc.id.goog[default/[KSA_NAME]]" \
[GSA_NAME]@[PROJECT_ID].iam.gserviceaccount.com
我想知道是否有办法为所有 k8s 命名空间创建绑定; 像下面这样,我用*
替换了默认命名空间:
--member "serviceAccount:[PROJECT_ID].svc.id.goog[*/[KSA_NAME]]"
有没有办法做到这一点?
无法将所有命名空间设置为 Kubernetes 服务帐户 (KSA)。 也许您必须获取每个命名空间并为每个命名空间进行绑定,自动化脚本可以帮助在此过程中执行 n 次(每个命名空间 1 次)。
您只能使用以下 kubectl 命令获取命名空间列名:
kubectl get ns --all-namespaces --no-headers -o custom-columns=":metadata.name"
得到这样的东西:
default
kube-public
kube-system
可用于使用绑定自动化脚本迭代它们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.