给定AWS访问/密钥对,如何检索其IAM权限?

Big*_*ian 6 amazon-web-services amazon-iam aws-sdk

只需输入AWS Access Key和AWS Secret Key,我如何使用AWS SDK查找该帐户可以执行的权限类型?

我想为客户做XYZ,因此客户需要为我提供访问密钥和密钥以便以编程方式执行XYZ.但是,在尝试执行任何这些操作之前,我想验证他们给我的凭据是否可以访问某些权限,例如能够创建S3对象或能够启动EC2实例.

这样,我可以验证访问密钥和密钥是否有权在我代表他们做之前做某事.

Kha*_* T. 3

您可以使用SimulatePrincipalPolicy API 模拟附加到 IAM 实体的一组 IAM 策略如何与 API 操作和 AWS 资源列表配合使用,以确定策略的有效权限。

该实体可以是 IAM 用户、组或角色。如果您指定用户,则模拟还包括附加到该用户所属组的所有策略。

您需要提供“SimulatePrincipalPolicy”API,并将该用户的 ARN 作为PolicySourceArn输入参数(无需使用可选的CallerArn输入参数)。如果您拥有访问密钥 ID 和秘密访问密钥,则可以通过使用该用户凭证调用GetUser API来检索用户的 ARN ,即无需指定UserName输入参数。如果不包含用户名,则GetUser API 默认为发出请求的用户。