Boto3在Windows上无法加载AWS凭证文件

3

我正在尝试使用凭证文件在Windows上加载我的aws凭证。

我正在使用boto3,在将凭证设置为Windows系统环境变量时,它可以正常工作,但是在% UserProfile%/.aws文件夹中创建凭证文件后却不能正常工作。

我的凭证文件内容如下(将真实令牌替换为XXXX):

[default]
aws_access_key_id=XXXXXXXXX
aws_secret_access_key=XXXXXXX
aws_session_token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

有没有办法追踪boto3检索凭据时使用的优先级?为什么它不从文件中提取值?

如果您运行awscli(例如aws s3 ls),并允许它从%UserProfile%/.aws/credentials中获取默认凭据,那么它是否有效?您是否使用由%UserProfile%表示的相同有效用户运行boto3应用程序?当您说它不起作用时,您看到什么症状(错误消息)? - jarmod
FYI 这里是凭据检索的优先顺序,请注意环境变量优先于凭据/配置文件。 - jarmod
你遇到了什么错误?如果你运行 aws iam get-user,会发生什么?它是否返回你期望的凭证信息? - John Rotenstein
2个回答

1

请按照以下步骤操作:

  1. pip install awscli
  2. aws configure -> 输入您的所有凭据
  3. 然后再次尝试,错误将消失。

因为有时如果您没有先从pip3安装和配置aws,Python的运行环境将无法看到文件中的凭据... - Derek Menénedez
我不知道boto3在awscli上有任何依赖关系。只需手动创建/.aws/credentials和可选的/.aws/config文件即可。 - jarmod
问题在于他说他有那个文件。 - Derek Menénedez

-1

在Windows上,C:\Users\USERNAME.aws\credentials。这个文件可以包含默认配置文件和任何命名配置文件的凭证细节。


OP没有问题找到他们的凭据文件。他们的问题是boto3无法读取它。 - ardaar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接