terraform - 如何使 Terraform 使用 AWS credential_process?

标签 terraform terraform-provider-aws

我想使用 ~/.aws/config 中的 credential_process 配置选项来为 Terraform 中的 AWS 提供商获取凭证。

我发现对 credential_process 的支持是 recently (9 days ago) added to the AWS GO SDK v1.16.4 。我还看到 AWS GO SDK 依赖项是 changed to that version in the Terraform AWS provider even more recently (11 hours ago) .

一旦发布下一个 Terraform AWS 提供商版本(显然是 v1.52.0),我是否会自动获得对 credential_process 功能的支持?

对于 Terraform v0.11.10 和provider.aws v1.51.0,似乎未使用 credential_process,因为我收到以下错误:

*provider.aws:验证提供程序凭据时出错:调用 sts:GetCallerIdentity 时出错:NoCredentialProviders:链中没有有效的提供程序。已弃用。

我的环境中确实有 AWS_SDK_LOAD_CONFIG=1 suggested by the SDK documentation 。 Terraform 是否需要这样做,还是会加载 ~/.aws/config

最佳答案

使用AWS_PROFILEAWS_SDK_LOAD_CONFIG:

AWS_PROFILE=foo AWS_SDK_LOAD_CONFIG=1 terraform plan

讨论配置文件变量和 credential_process 的问题:https://github.com/terraform-providers/terraform-provider-aws/issues/6913

关于terraform - 如何使 Terraform 使用 AWS credential_process?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53770277/

相关文章:

amazon-web-services - 针对匹配模式的 aws api 网关 header 验证

node.js - 更改 aws kcl 的故障转移时间

amazon-cognito - 如何使用 Terraform 创建 AWS Cognito 用户

amazon-web-services - Terraform如何在路由表中获取动态路由

terraform - 如何动态获取 EC 2 的私有(private) IP 并将其放入/etc/hosts

amazon-web-services - 是否有适用于 AWS Personalize 的 Terraform 或完成该任务的方法?

azure - for 循环中的 Terraform for 循环

dns - 如何减少刷新Terraform状态所需的时间?

amazon-web-services - 如何使用从一个 Terraform 计划创建到另一个 Terraform 计划的 VPC id 和子网 id 值

amazon-web-services - 如何使用 Terraform 和 cloud-init 安全地允许访问 AWS Secrets Manager