目的
IAMユーザーにはセッション切れがありません。
一度マネジメントコンソールにログインしたら、ブラウザを開いている間はずっとセッションが有効です。
※訂正:12時間で切れます。
https://aws.amazon.com/jp/console/faqs/#session_expire
それほど問題になるケースは無いかもしれませんが、例えば通常よりも強いAdminやPowerUserなどの権限を持つ"特権ユーザー"を利用する場合、ログインしっぱなしは防止したいところ。
ということで、擬似的にセッションタイムアウトさせてみます。
方法
ログインから一定時間経過後に、全ての権限を禁止(Deny)するポリシーを付与します。
尚、MFA必須です。他にログイン時間を基準にする方法がないので。
ポリシー例
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "*",
"Resource": "*",
"Condition": {
"NumericGreaterThanIfExists": {
"aws:MultiFactorAuthAge": "3600"
}
}
}
]
}
-
"aws:MultiFactorAuthAge"
は秒数です。
このポリシー例の場合は 3600秒 = 1時間。 - MFAなしでログインした場合は、"常に全てDeny"になります。
注意
- 「最後の操作から一定時間経過後」ではないことに注意。
何か作業途中であろうと、ログインから一定時間で問答無用で権限が剥奪されます。