You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ECS任务中默认凭证链的ECS提供者默认关闭含义及开启方法

关于AWS CRT Python中ECS凭证提供者的疑问解答

一、“(条件性,默认关闭)”的含义

这里的“条件性”指ECS凭证提供者不会自动加入默认凭证链,只有满足特定触发条件时才会被启用;“默认关闭”意味着在未做额外配置的情况下,new_default_chain()生成的凭证链不会尝试从ECS任务角色获取凭证。

简单来说,默认状态下CRT的默认凭证链只会按「环境变量→配置文件→EC2实例元数据」的顺序获取凭证,不会主动检查ECS任务的凭证来源。

二、开启ECS凭证提供者的方法

有两种常见方式可以让默认凭证链启用ECS凭证提供者:

1. 利用ECS自动注入的环境变量

当你的ECS任务配置了IAM角色时,ECS代理会自动在容器内设置AWS_ECS_CONTAINER_CREDENTIALS_RELATIVE_URI环境变量。此时new_default_chain()会自动检测到这个变量,将ECS凭证提供者加入到链中,无需额外编码操作。

2. 显式配置凭证链参数

如果需要手动强制启用ECS凭证提供者(比如环境变量未自动注入的场景),可以在调用new_default_chain()时,通过enable_ecs_credentials参数设置为True:

import awscrt.auth

credentials_provider = awscrt.auth.AwsCredentialsProvider.new_default_chain(
    enable_ecs_credentials=True
)

这样就能强制让默认凭证链包含ECS凭证提供者,优先于EC2实例元数据尝试获取ECS任务角色的凭证。


内容的提问来源于stack exchange,提问作者datahack

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 05:35:59