【问题标题】:Unable to locate credentials - accessing AWS secret manager with Python on ubuntu无法找到凭证 - 在 ubuntu 上使用 Python 访问 AWS 秘密管理器
【发布时间】:2020-02-12 09:23:09
【问题描述】:

我有分配了 IAM 角色的 ec2。该角色具有读取秘密管理器值的明确策略。但是,当我尝试使用 ec2 连接时

session = boto3.session.Session()
client = session.client(service_name='secretsmanager',region_name='x')
secret = client.get_secret_value(SecretId='x')

我收到错误“无法找到凭据”。我究竟做错了什么?我以为只要角色有允许从AWS读取的策略,就不需要在ec2/上存储aws secret id等了

【问题讨论】:

    标签: python amazon-web-services aws-sdk


    【解决方案1】:

    您仍然需要将其配置为使用 SDK 中的特定角色。

    有用的链接: AWS Configure QuickStart

    这是您正在执行的操作的 AWS Python 示例:

    AWS Python Example

    【讨论】:

    • 嗯,我想我可以摆脱在 ec2 上存储任何密钥、秘密等
    • 您不存储密钥,您仍然需要配置环境变量才能知道使用哪个角色
    • boto3 利用 /.aws/credentials 文件了解要承担的角色并正确执行 API 命令
    猜你喜欢
    • 2020-12-06
    • 1970-01-01
    • 1970-01-01
    • 2023-02-07
    • 1970-01-01
    • 2013-06-28
    • 2022-08-16
    • 2020-12-04
    • 2021-03-15
    相关资源
    最近更新 更多