IAM ユーザーに対して AWS コンソールへ一時的なアクセスを制御する方法について

2023.02.17

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

困っていた内容

一部のユーザーには制限されたリソース アクセスでAWSコンソールアクセスを一時的に提供する予定です。
特定の日付が過ぎるとアクセスをできなくする方法を教えてください。

どう設定すればいいの?

IAMポリシーを設定することにより特定の時間帯内の対象サービスへのアクセス制限が可能です。

実行例

IAM ユーザーが 2023-02-01 (UTC) ~2023-02-03(UTC)すべてのアクションを許可する場合

{
    "Version": "2012-10-17",
    "Statement": {
        "Effect": "Allow",
        "Action": "*",
        "Resource": "*",
        "Condition": {
            "DateGreaterThan": {"aws:CurrentTime": "2023-02-01T00:00:00Z"},
            "DateLessThan": {"aws:CurrentTime": "2023-02-03T00:00:00Z"}
        }
    }
}

IAM ユーザーが2023-02-03(UTC)を過ぎるとすべてのアクションを拒否する場合

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "DateGreaterThan": {
                    "aws:CurrentTime": "2023-02-03T00:00:00Z" 
                }
            }
        }
    ]
}

参考資料

[1]AWS: 日付と時刻に基づいてアクセスを許可します
[2]IAM ポリシーの作成 (コンソール)