如何查明当前 STS 角色会话的剩余持续时间?

mon*_*oos 5 amazon-web-services

我正在使用 AWS CLI 与我的 AWS 账户进行通信。我首先使用如下命令在我的 AWS 账户中扮演一个角色:

aws sts assume-role \
  --role-arn arn:aws:iam::000011112222:role/MyRole \
  --role-session-name my_session_name \
  --serial-number arn:aws:iam::333344445555:mfa/me \
  --token-code [redacted] \
  --duration-seconds 21600
Run Code Online (Sandbox Code Playgroud)

稍后,我想使用 AWS CLI 查询 AWS,以了解在角色到期之前我的角色还剩多少时间。

是否存在用于此目的的 AWS CLI 命令?

Joh*_*van 0

我还没有找到一个好的解决方案;但一个对我有用的黑客解决方案:

查看我的.aws/sso/cache/文件夹,我发现了许多 json 文件。

这些 JSON 文件代表最近的会话;它们包含一个属性expiresAt,该属性给出相关会话的到期日期。

在 Windows 设备上,您可以运行以下 PowerShell 来快速查看所有这些 JSON 文件中的内容:

gci "$env:userprofile\.aws\sso\cache" -filter '*.json' | %{get-content $_.FullName -raw | convertfrom-json | fl}