我找不到用以下信息列出IAM用户的方法:
我尝试过aws iam list-users
,但这并不能告诉我很多。
使用AWS CLI可以吗?如果可以,怎么办?
答案 0 :(得分:1)
我要回答一个问题,因为有4人投票说,我认为这是不公平的。
简短的回答是,没有,您没有可用于执行此操作的命令,而且我可以理解为什么这会造成混乱和令人惊讶。
某些信息可以在凭证报告中找到,使用:
aws iam generate-credential-report
aws iam get-credential-report
有关如何以编程方式获取凭据报告(ref)的信息,请参阅文档。
从那里您可以得到:
可以在list-access-keys
子命令中找到一些其他信息:
▶ aws iam list-access-keys --user-name alex
{
"AccessKeyMetadata": [
{
"UserName": "alex",
"Status": "Active",
"CreateDate": "XXXX-XX-XXT01:33:31Z",
"AccessKeyId": "XXXXXXXX"
}
]
}
因此,您也可以使用以下命令从此处获取“状态”和“创建日期”:
aws iam list-access-keys --user-name alex \
--query "AccessKeyMetadata[].CreateDate" \
--output text
更多信息,请参见:
▶ aws iam get-login-profile --user-name alex
{
"LoginProfile": {
"UserName": "alex",
"CreateDate": "XXXX-XX-XXT01:33:31Z",
"PasswordResetRequired": false
}
}
您还可以通过以下方式获取访问密钥的上次使用日期:
access_key_id=$(aws iam list-access-keys \
--user-name alex \
--query "AccessKeyMetadata[].AccessKeyId" \
--output text)
aws iam get-access-key-last-used \
--access-key-id $access_key_id
例如输出:
{
"UserName": "alex",
"AccessKeyLastUsed": {
"Region": "XXXXXX",
"ServiceName": "iam",
"LastUsedDate": "XXXX-XX-XXT05:28:00Z"
}
}
我认为这涵盖了您询问的所有领域。显然,您需要围绕所有这些编写一些代码才能将它们整合在一起。