运行 Boto 功能所需的最低 IAM 政策
Minimum IAM policy required to run Boto functions
我正在尝试 运行 在 python 脚本中使用一些 boto 函数。我需要创建一个具有执行这些 boto 功能所需的最低权限的 IAM 策略。有什么好的方法可以将这些 boto 函数与执行它们所需的 AWS IAM 权限相关联。
例如,这是我拥有的 boto 模块 (python)。用户 运行 需要哪些 IAM 权限?有什么好的方法可以找到吗?
boto.ec2.autoscale.connect_to_region
boto.ec2.elb.connect_to_region
boto.ec2.connect_to_region
boto.ec2.instance.Instance
boto.ec2.elb.loadbalancer.LoadBalancer
boto.ec2.autoscale.group.AutoScalingGroup
您列出的函数与对 AWS 的 API 调用之间没有 1:1 关联。
如果您使用 client
函数,则需要该函数的特定权限,例如:
response = ec2_client.describe_instances()
此命令需要 ec2:DescribeInstances
权限。
boto3 还提供了resource
函数,提供更像对象的体验,例如:
instance = ec2_resource.Instance('id')
此类函数可以调用任意数量的底层 API 调用,因此确定此类调用所需的权限并不容易。
您可以使用 AWS CloudTrail 查看进行的基础 API 调用,以便确定权限。
我正在尝试 运行 在 python 脚本中使用一些 boto 函数。我需要创建一个具有执行这些 boto 功能所需的最低权限的 IAM 策略。有什么好的方法可以将这些 boto 函数与执行它们所需的 AWS IAM 权限相关联。
例如,这是我拥有的 boto 模块 (python)。用户 运行 需要哪些 IAM 权限?有什么好的方法可以找到吗?
boto.ec2.autoscale.connect_to_region
boto.ec2.elb.connect_to_region
boto.ec2.connect_to_region
boto.ec2.instance.Instance
boto.ec2.elb.loadbalancer.LoadBalancer
boto.ec2.autoscale.group.AutoScalingGroup
您列出的函数与对 AWS 的 API 调用之间没有 1:1 关联。
如果您使用 client
函数,则需要该函数的特定权限,例如:
response = ec2_client.describe_instances()
此命令需要 ec2:DescribeInstances
权限。
boto3 还提供了resource
函数,提供更像对象的体验,例如:
instance = ec2_resource.Instance('id')
此类函数可以调用任意数量的底层 API 调用,因此确定此类调用所需的权限并不容易。
您可以使用 AWS CloudTrail 查看进行的基础 API 调用,以便确定权限。