[英]GKE / Cloud IAM workload Identity setup error 403
我们已经为我们的一个基于 Java / Tomcat 的应用程序设置了一个 CloudSQL 代理作为 sidecar 容器。
以下是我们如何设置工作负载标识以让我们的应用程序能够通过 cloudsql 代理连接到 CloudSQL:
创建 Cloud IAM 服务帐户并授予它 SQL 客户端权限:
设置策略绑定如下:
gcloud iam service-accounts add-iam-policy-binding \\ --role roles/iam.workloadIdentityUser \\ --member "serviceAccount:[PROJECT_ID].svc.id.goog[default/default]" \\ [GSA_NAME]@[PROJECT_ID].iam.gserviceaccount.com
向 GKE 服务帐户添加了注释:
kubectl annotate serviceaccount \\ --namespace [K8S_NAMESPACE] \\ [KSA_NAME] \\ iam.gke.io/gcp-service-account=[GSA_NAME]@[PROJECT_ID].iam.gserviceaccount.com
但是当我们使用以下方法测试时:
kubectl run --rm -it \\ --generator=run-pod/v1 \\ --image google/cloud-sdk:slim \\ --serviceaccount [KSA_NAME] \\ --namespace [K8S_NAMESPACE] \\ workload-identity-test
Error 403: The client is not authorized to make this request., notAuthorized
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.