@@ -34,6 +34,8 @@ module "iam" {
3434 " principal://iam.googleapis.com/projects/${ module . project . project_number } /locations/global/workloadIdentityPools/${ module . project . project_id } .svc.id.goog/subject/ns/external-secrets/sa/external-secrets" ,
3535 " principal://iam.googleapis.com/projects/180382678033/locations/global/workloadIdentityPools/k8s-infra-prow-build-trusted.svc.id.goog/subject/ns/external-secrets/sa/external-secrets" ,
3636 " principal://iam.googleapis.com/projects/16065310909/locations/global/workloadIdentityPools/k8s-infra-prow.svc.id.goog/subject/ns/external-secrets/sa/external-secrets" ,
37+ " principal://iam.googleapis.com/${ google_iam_workload_identity_pool . eks_cluster . name } /subject/ns/external-secrets/sa/external-secrets" ,
38+ " principal://iam.googleapis.com/${ google_iam_workload_identity_pool . aks_cluster . name } /subject/ns/external-secrets/sa/external-secrets" ,
3739 ]
3840 }
3941}
@@ -55,7 +57,10 @@ resource "google_iam_workload_identity_pool_provider" "eks_cluster" {
5557 workload_identity_pool_id = google_iam_workload_identity_pool. eks_cluster . workload_identity_pool_id
5658 workload_identity_pool_provider_id = " oidc"
5759 attribute_mapping = {
58- " google.subject" = " assertion.sub"
60+ " google.subject" = " \" ns/\" + assertion['kubernetes.io']['namespace'] + \" /sa/\" + assertion['kubernetes.io']['serviceaccount']['name']"
61+ " attribute.namespace" = " assertion['kubernetes.io']['namespace']"
62+ " attribute.service_account_name" = " assertion['kubernetes.io']['serviceaccount']['name']"
63+ " attribute.pod" = " assertion['kubernetes.io']['pod']['name']"
5964 }
6065 oidc {
6166 # From EKS cluster created in https://github.com/kubernetes/k8s.io/tree/main/infra/aws/terraform/prow-build-cluster
@@ -71,7 +76,10 @@ resource "google_iam_workload_identity_pool_provider" "eks_kops" {
7176 workload_identity_pool_id = google_iam_workload_identity_pool. eks_cluster . workload_identity_pool_id
7277 workload_identity_pool_provider_id = " kops"
7378 attribute_mapping = {
74- " google.subject" = " assertion.sub"
79+ " google.subject" = " \" ns/\" + assertion['kubernetes.io']['namespace'] + \" /sa/\" + assertion['kubernetes.io']['serviceaccount']['name']"
80+ " attribute.namespace" = " assertion['kubernetes.io']['namespace']"
81+ " attribute.service_account_name" = " assertion['kubernetes.io']['serviceaccount']['name']"
82+ " attribute.pod" = " assertion['kubernetes.io']['pod']['name']"
7583 }
7684 oidc {
7785 # From EKS cluster created in https://github.com/kubernetes/k8s.io/tree/main/infra/aws/terraform/kops-infra-ci
@@ -97,7 +105,10 @@ resource "google_iam_workload_identity_pool_provider" "aks_cluster" {
97105 workload_identity_pool_id = google_iam_workload_identity_pool. aks_cluster . workload_identity_pool_id
98106 workload_identity_pool_provider_id = " oidc"
99107 attribute_mapping = {
100- " google.subject" = " assertion.sub"
108+ " google.subject" = " \" ns/\" + assertion['kubernetes.io']['namespace'] + \" /sa/\" + assertion['kubernetes.io']['serviceaccount']['name']"
109+ " attribute.namespace" = " assertion['kubernetes.io']['namespace']"
110+ " attribute.service_account_name" = " assertion['kubernetes.io']['serviceaccount']['name']"
111+ " attribute.pod" = " assertion['kubernetes.io']['pod']['name']"
101112 }
102113 oidc {
103114 # From AKS cluster created in https://github.com/kubernetes/k8s.io/tree/main/infra/azure/terraform/k8s-infra-prow-build
0 commit comments