dullwhaleのメモ帳

何度も同じことを調べなくてよいように...

IAMキーの一覧をAWS CLIで出す

不要なIAMユーザを調べるために、そのIAMユーザのキーが最後に使用された日時と共に一覧を取得したいことがある。 このワンライナーはIAMユーザ名、IAMキーのID、最終使用日時を一覧出力する。 キーを逐次的に調べているので完了するまで時間がかかる。 大量のIAMユーザ(50以上ぐらいから?)がいるときにはこれを使わない方が良い。

while read USER KEY_ID; do LAST_USED=$(aws iam get-access-key-last-used --query 'AccessKeyLastUsed.LastUsedDate' --output text --access-key-id ${KEY_ID}); printf '%s\t%s\t%s\n' ${USER} ${KEY_ID} ${LAST_USED}; done < <(aws iam list-users --query 'Users[*].[UserName]' --output text | xargs -P16 -L1 -I{} aws iam list-access-keys --query 'AccessKeyMetadata[*].[UserName, AccessKeyId]' --output text --user-name {})