如何让 Terraform 使用 AWS credential_process?
How to make Terraform use the AWS credential_process?
我想使用 ~/.aws/config
中的 credential_process
配置选项来为 Terraform 中的 AWS 提供商获取凭证。
我看到对 credential_process
的支持是 recently (9 days ago) added to the AWS GO SDK v1.16.4. I also see that the AWS GO SDK dependency was 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: error validating provider credentials: error calling sts:GetCallerIdentity: NoCredentialProviders: no valid providers in chain. Deprecated.
我在环境中确实有 AWS_SDK_LOAD_CONFIG=1
suggested by the SDK documentation。 Terraform 需要它还是加载 ~/.aws/config
?
您所要做的就是导出 AWS_PROFILE="x",terraform 将使用它。
使用AWS_PROFILE
和 AWS_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
credential_process
配置选项适用于 Terraform v1.52.0 及更高版本。所以回答我自己的问题,我只需要等待发布。
如其他人所述,AWS_PROFILE
环境变量可用于 select 配置文件。不过,这并不特定于使用 credential_process
。
我想使用 ~/.aws/config
中的 credential_process
配置选项来为 Terraform 中的 AWS 提供商获取凭证。
我看到对 credential_process
的支持是 recently (9 days ago) added to the AWS GO SDK v1.16.4. I also see that the AWS GO SDK dependency was 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: error validating provider credentials: error calling sts:GetCallerIdentity: NoCredentialProviders: no valid providers in chain. Deprecated.
我在环境中确实有 AWS_SDK_LOAD_CONFIG=1
suggested by the SDK documentation。 Terraform 需要它还是加载 ~/.aws/config
?
您所要做的就是导出 AWS_PROFILE="x",terraform 将使用它。
使用AWS_PROFILE
和 AWS_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
credential_process
配置选项适用于 Terraform v1.52.0 及更高版本。所以回答我自己的问题,我只需要等待发布。
如其他人所述,AWS_PROFILE
环境变量可用于 select 配置文件。不过,这并不特定于使用 credential_process
。