繁体   English   中英

如何查询代入角色

[英]How to query Assumed Role

我的应用程序生成此错误消息:

arn:aws:sts::123456789012:assumed-role/my-service-role/aws-sdk-1111111111111 无权执行:secretsmanager:GetSecretValue

我如何才能看到更多关于哪些角色或权限附加到这个代入角色的信息?

我已尝试使用aws iam get-user / list-users / get-role / list-roles通过 AWS CLI 查询此内容,但两者都不存在。 我查看了 STS 下的查询,但看不到合适的选项。

我在 AWS 控制台中找不到这个角色。

我如何才能看到更多关于哪些角色或权限附加到这个代入角色的信息?

您可以通过多种方式访问此信息,如果您知道可以使用 IAM 服务的角色名称,这里是一个 boto3 示例:

import boto3
iam = boto3.resource('iam')
role = iam.Role('AWSServiceRoleForRDS')

for pol in role.attached_policies.iterator():
    print(pol)

对我来说,这给出了:

iam.Policy(arn='arn:aws:iam::aws:policy/aws-service-role/AmazonRDSServiceRolePolicy')

我附加到这个角色的唯一政策。 显然,您需要在此处替换您感兴趣的角色名称来代替'AWSServiceRoleForRDS'

通常,这将打印出附加到角色的所有策略(到标准输出)。

为了进行此查询,您需要作为有权访问 IAM 角色(或用户)的用户或角色进行身份验证。

更新:如何从 ARN 中找到角色的名称?

按照IAM 的 aws 文档标识,您可以从 arn 中识别 sts 假定角色的角色名称,它们遵循以下格式:

arn:aws:sts::account:assumed-role/role-name/role-session-name

根据发布的内容:

arn:aws:sts::123456789012:assumed-role/my-service-role/aws-sdk-1111111111111 无权执行:secretsmanager:GetSecretValue

看起来my-service-role是假定角色的名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM