0

Terraform を使用して k8s クラスターをデプロイしようとしています。k8s クラスターのデプロイは正常に機能しますが、terraform が構成のポッド セキュリティ ポリシー部分を実行しようとすると、次のようなエラーが返されます。

clusterroles.rbac.authorization.k8s.io "clusterrole" is forbidden: user "<ServiceAccountID>" (groups=["system:authenticated"]) is attempting to grant RBAC permissions not currently held:
│ {APIGroups:["policy"], Resources:["podsecuritypolicies"], ResourceNames:["vseca-psp"], Verbs:["use" "get" "list" "watch" "create" "update" "patch" "delete"]}

ServiceAccountID上記のエラーで使用されているサービス アカウントを知っています。ただし、ポッド セキュリティ ポリシーとその他の k8s リソースを作成する権限を持つ別のサービス アカウントを作成しました。impersonate_service_accountブロックへのアクセス許可を持つ新しく作成されたサービス アカウントを使用しようとしていmodule gkeます。

module "gke" {
...
  impersonate_service_account = "<ServiceAccountEmail>"
...

これは、なりすましを依頼したサービス アカウントを使用していないようです。代わりに、上記のエラーで返されたサービス アカウントを使用し続けます。

注:ここに示すように、terraform kubernetes エンジン モジュールを使用しています。

4

0 に答える 0