无法使用使用 terraform aws_msk_cluster 资源的 IAM 访问控制方法

问题描述

我正在尝试开发一个模块来创建 AWS MSK。我想为 MSK 资源启用 IAM 身份验证 我正在关注以下链接,但没有看到与 IAM 身份验证相关的任何内容。 [(https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/msk_cluster#sasl)]

dynamic "client_authentication" {
   for_each = var.client_tls_auth_enabled || var.client_sasl_iam_enabled ? [1] : []
   content {
     dynamic "tls" {
       for_each = var.client_tls_auth_enabled ? [1] : []
       content {
         certificate_authority_arns = var.certificate_authority_arns
       }
     }
     dynamic "sasl" {
       for_each = var.client_sasl_iam_enabled ? [1] : []
       content {
         iam = var.client_sasl_iam_enabled
       }
     }
   }
 }

错误:此处不需要名为“iam”的参数。

解决方法

有必要更新您的 aws 提供程序至少 v3.43.0:see changelog

例如

terraform {
  required_version = ">= 0.13"
  required_providers {
    aws    = ">= 3.43.0"
  }
}

这对我来说真的很有效。

,

你猜怎么着? CF也没有。有一个支持它的 tf 公关。 https://github.com/hashicorp/terraform-provider-aws/pull/19404