terraformの lacks IAM permission "iam.serviceAccounts.actAs" for the resource ~ に殺されかけた
terraformでGCPを構築していた。
Cloud Schedulerを作成しようと思いリソースを定義。oidcトークンを付与するためにサービスアカウントAを定義し
oidc_token { service_account_email = google_service_account.A.email }
を行うも
lacks IAM permission "iam.serviceAccounts.actAs" for the resource <リソース名>
エラーが出た。Aに対して iam.serviceAccounts.actAs 権限がないものだとずっと勘違いし、Aを確認してもサービスアカウントユーザー権限は付与されている。
めっちゃ詰まったがterraformを実行するサービスアカウントにサービスアカウントユーザーがないことによるエラーだった。ロールを与えることで解決した。