创建 Route53 托管区域失败并显示 InvalidClientTokenId

Creating Route53 Hosted zone fails with InvalidClientTokenId

详细信息如下,但在较高级别上,我在 AWS GovCloud 中构建资源时没有遇到任何问题,尤其是在 us-gov-wast-1 区域。当我决定为私有 aws_route53_zone 添加资源时,出现以下错误:

* aws_route53_zone.private: error creating Route53 Hosted Zone: InvalidClientTokenId: The security token included in the request is invalid. status code: 403, request id: a9124a21-8eba-11e9-8bbb-c59c842ad843

通常我会认为这是由于 IAM 凭据不正确,因为它是 403,但我的凭据对所有其他资源都工作正常,即使是在同一个 TF 文件中的那些。我什至尝试更改它们但没有运气。任何人都知道这可能是什么原因以及我如何解决它。 Route53 应该在 GovCloud us-west 中可用。

Terraform 版本

Terraform v0.11.13

provider.aws v2.12.0

Terraform 配置详细信息

provider "aws" {
  region = "us-gov-west-1"
  access_key = "${var.aws_access_key}"
  secret_key = "${var.aws_secret_key}"
}

... Other VPC resources.

resource "aws_route53_zone" "private" {
  name = "my-domain.com"
  comment = "my-domain (preprod-gov) terraform"

  vpc = {
    vpc_id = "${module.preprod_gov_vpc.vpc_id}"
  }
}

刚刚解决了这个问题。 /.terraform/plugins/linux_amd64 目录中缓存的 AWS Provider 插件是旧版本 (2.12),自几个月前环境首次构建以来就没有更新过。一旦我们执行了 terraform init -upgrade,插件就会升级到当前版本 (2.52)。升级后,我们不再收到 "InvalidClientTokenId" 错误。