py_*_*_py 4 roles amazon-iam boto3
例如:当我登录我的 AWS 账户时,联合登录显示为myrole/usr1。用户user1不是 IAM 用户。client.get_caller_identity()尝试使用using模块获取身份sts。
当在 lambda 中运行时,它给出的是分配给 lambda 的角色,而不是我正在寻找的实际角色。如何获取角色信息myrole?
一般来说,从代码中获取角色名称的方法如下:
import boto3
s = boto3.Session(profile_name="some_profile_name")
c = s.client("sts")
c.get_caller_identity()
Run Code Online (Sandbox Code Playgroud)
您将得到如下回复{'UserId': '...', 'Account': '...', 'Arn': 'arn:aws:sts::...:assumed-role/.../federated_username_here', ...}
但是,这意味着您已经配置了名为 AWS CLI 配置文件的 AWS CLI 配置文件some_profile_name,为此,您需要通过 CLI 设置联合访问或知道角色的名称,据我所知,这是您想要获得的。先有鸡还是先有蛋的问题。
尝试使用AWS代码环境获取它也是如此,lambda将显示其角色,ec2以相同的方式。
因此,要从控制台查看它,您可以尝试转到页面https://console.aws.amazon.com/billing/home?#/account,并且如果您有权查看该页面,您的假定角色将被列为Account Name。
| 归档时间: |
|
| 查看次数: |
14039 次 |
| 最近记录: |