我的要求是,我的代码将部署在 ec2 实例上。在某些时候,它需要执行该代码的 IAM 帐户的用户名。或者其会话当前在该 ec2 实例上处于活动状态。甚至可能吗?
仅供参考,我在这里从 AWS SDK 中阅读了答案 ,如何获取当前登录的用户名(或 IAM 用户)?,但它们没有多大用处
PS。我必须验证哪个 IAM 帐户正在执行 spark 作业
编辑:基于@John Rotenstein 的建议,添加更多细节
许多 IAM 用户可能会在提供 IP 时访问 ec2 实例。因此,基于哪些 IAM 用户已登录到 EC2 实例,并尝试spark job
在EMR
集群中运行。我想验证他是否有权执行代码(有一个单独的授权用户列表数据库,我将在数据库中搜索他的 IAM 用户名,如果找不到则抛出错误)。为此,我需要该 IAM 帐户的用户名。
aws-sdk 中是否有任何实用程序或在 IAM 用户启动 ec2 实例后创建的某种元数据?为了清楚起见,我知道操作系统用户的详细信息,而不关心他们。到目前为止,我们只对 os 用户执行此过程,但有了新的更改,我们需要从他们的 IAM 帐户用户名而不是 os 用户名验证用户。