python AWS:从EC2实例元数据中获取临时凭证,并使用它来访问AWS资源

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python AWS:从EC2实例元数据中获取临时凭证,并使用它来访问AWS资源相关的知识,希望对你有一定的参考价值。

import boto3
from botocore.utils import InstanceMetadataFetcher
from botocore.credentials import InstanceMetadataProvider
provider = InstanceMetadataProvider(iam_role_fetcher=InstanceMetadataFetcher(timeout=1000, num_attempts=2))
creds = provider.load()

session = boto3.Session(aws_access_key_id=creds.access_key, aws_secret_access_key=creds.secret_key, aws_session_token=creds.token)
ddb = session.client('dynamodb')

response = ddb.get_item(
    TableName='swarm-dynamo-table',
    Key={
        'node_type': {
            'S': 'primary_manager'
        }
    }
)

print(response['Item']['ip']['S'])

以上是关于python AWS:从EC2实例元数据中获取临时凭证,并使用它来访问AWS资源的主要内容,如果未能解决你的问题,请参考以下文章

从 Go 中的 ec2 元数据服务获取 aws 凭据

如何在Python AWS boto API中获取EC2实例ID的容器实例列表

python AWS EC2:获取所有未标记的EC2实例

如何从 AWS ec2 实例中提取文件?

如何在 ec2 实例上运行元数据库(没有弹性 beantalk)

有没有办法在 ec2 实例中获取实例 ID [重复]