Dynamodb AWS 查询的硬编码凭证

Hardcoded Credentials for Dynamodb AWS Queries

我有一个脚本,用于检查特定值是否在 AWS 中的 dynamodb table 的单元格内。我曾经在我的脚本中添加包含密钥的硬编码凭据,例如:

dynamodb_session = Session(aws_access_key_id='access_key_id',
          aws_secret_access_key='secret_access_key',
          region_name='region')

dynamodb = dynamodb_session.resource('dynamodb')

table=dynamodb.Table('table_name')

有没有其他方法可以使用这些凭据而不将它们添加到我的脚本中?谢谢。

如果您是 运行 Amazon EC2 实例上的代码,那么您只需 为实例分配一个 IAM 角色 它就会自动接收凭据。

如果您 运行 在自己的计算机上使用该代码,请使用 AWS Command-Line Interface (CLI) aws configure 命令将凭据存储在本地配置文件中。 (它将存储在 ~/.aws/credentials 中)。

那么,在这两种情况下,您都可以简单地使用:

dynamodb = boto3.resource('dynamodb')

您也可以在该配置中设置默认区域。