gpt4 book ai didi

amazon-web-services - 在 Terraform 中覆盖 STS API 端点时 SignatureDoesNotMatch

转载 作者:行者123 更新时间:2023-12-02 12:16:21 25 4
gpt4 key购买 nike

我正在 AWS 区域 us-west-2(俄勒冈州)的私有(private) VPC 中运行 Terraform。因此我正在使用 VPC endpoints暴露STS API并在 Terraform 中覆盖此端点,如下所示:

provider "aws" {
endpoints {
sts = "https://sts.us-west-2.amazonaws.com/"
}
}

不幸的是,这会出现以下错误:

provider.aws: error validating provider credentials: error calling sts:GetCallerIdentity: SignatureDoesNotMatch: The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.

什么可能导致此问题?在公共(public) VPC 中应用相同的 Terraform 代码而不进行端点覆盖可以按预期工作。

我检查过的事情:

  • 运行 Terraform 的实例显示正确的时间 (UTC)
  • AWS_REGION 和 AWS_DEFAULT_REGION 环境变量设置为 us-west-2
  • 我用来进行身份验证的 AWS_SECRET_ACCESS_KEY 环境变量(与 AWS_ACCESS_KEY_ID 一起)仅包含 alphanumeric characters

版本:

  • terraform 版本:Terraform v0.11.13
  • terraform-provider-aws:v2.17.0

最佳答案

在将 URL 发送到 AWS 之前,terraform 似乎没有对其进行清理:

provider "aws" {
endpoints {
sts = "https://sts.us-west-2.amazonaws.com" # No trailing slash
}
}

对我来说效果很好,而尾随斜杠会导致你的错误

关于amazon-web-services - 在 Terraform 中覆盖 STS API 端点时 SignatureDoesNotMatch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56859206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com