Amazon s3 尝试在Terraform中使用COS HMAC凭据时,此值没有任何属性错误?

Amazon s3 尝试在Terraform中使用COS HMAC凭据时,此值没有任何属性错误?,amazon-s3,terraform,ibm-cloud,cloud-object-storage,terraform-provider-ibm,Amazon S3,Terraform,Ibm Cloud,Cloud Object Storage,Terraform Provider Ibm,我试图在Terraform中使用HMAC凭据进行云对象存储/S3,但发现了这个错误 Error: Unsupported attribute on main.tf line 56, in resource "ibm_cos_bucket" "sink_bucket": 56: ACCESS_KEY = ibm_resource_key.cos_key.credentials.cos_hmac_keys.ac

我试图在Terraform中使用HMAC凭据进行云对象存储/S3,但发现了这个错误

Error: Unsupported attribute

  on main.tf line 56, in resource "ibm_cos_bucket" "sink_bucket":
  56:       ACCESS_KEY               = ibm_resource_key.cos_key.credentials.cos_hmac_keys.access_key_id

This value does not have any attributes.


Error: Unsupported attribute

  on main.tf line 57, in resource "ibm_cos_bucket" "sink_bucket":
  57:       SECRET_ACCESS_KEY        = ibm_resource_key.cos_key.credentials.cos_hmac_keys.secret_access_key

This value does not have any attributes.
我通过在创建
COS\u键时设置
HMAC=true
生成了COS-HMAC凭证

resource ibm_resource_key cos_key {
  name                 = "${var.basename}-cos-key"
  resource_instance_id = ibm_resource_instance.cos.id
  role                 = "Writer"

  parameters = {
    service-endpoints = "private"
    HMAC = true
  }
}
当我检查
terraform.tstate
文件时,我看到的凭据如下所示

"cos_key": {
      "value": {
        "credentials": {
          "apikey": "muydB9TyqWr9_aCmFlSRSu-JG3J3PPzXcxxxxxxx",
          "cos_hmac_keys.access_key_id": "e0892b46cfe1411cxxxxxx0",
          "cos_hmac_keys.secret_access_key": "8520aca8680e3e930f74a8869xxxxxx8a27a6",
          ...
          }
        }
      }

这就是我的工作

provisioner "local-exec" {
    command = "echo 'Credentials for MINIO client...'"
    environment = {
      ACCESS_KEY               = ibm_resource_key.cos_key.credentials["cos_hmac_keys.access_key_id"]
      SECRET_ACCESS_KEY        = ibm_resource_key.cos_key.credentials["cos_hmac_keys.secret_access_key"]
      COS_REGION               = var.region
      COS_BUCKET_NAME          = ibm_cos_bucket.sink_bucket.bucket_name
    }
  }
这里的问题是自定义json属性,包括点(.),如
cos\u hmac\u key.access\u key\u id
。Terraform会抛出错误,直到您使用下面的符号

credentials["cos_hmac_keys.access_key_id"]