IAM ロールの一時的なセキュリティ認証情報の取り消し
このページの手順に従うと、ロールを引き受けることによって作成された現在のセッションのすべてのユーザーは、すべての AWS アクションとリソースへのアクセスを拒否されます。その結果、保存されていない作業は失われます。
ユーザーが長いセッションの有効期間 (12 時間など) を使用して AWS Management Console にアクセスできるようにすると、一時的な認証情報がすぐに期限切れになることはありません。ユーザーが意図せずに認証情報を不正なサードパーティーに公開した場合、そのパーティーはセッションの期間アクセスできます。ただし、必要がある場合は、特定の時点より前に発行したロールの認証情報の、すべてのアクセス許可をすぐに取り消しできます。指定された時間より前に発行された、そのロールのすべての一時的な認証情報が無効になります。これにより、すべてのユーザーは新しい認証情報を再認証し、リクエストしなければならなくなります。
サービスにリンクされたロールのセッションを取り消すことはできません。
このトピックの手順を使用してロールのアクセス許可を取り消す場合、AWS は、すべてのアクションへのすべてのアクセス許可を拒否するロールに新しいインラインポリシーをアタッチします。このポリシーに含まれる条件によって制限が適用されるのは、アクセス許可が取り消される前にユーザーがロールを引き受けた場合のみです。アクセス許可が取り消された後にユーザーがロールを引き受けた場合、拒否ポリシーはそのユーザーに適用されません。
この拒否ポリシーは、期間が長いコンソールセッションを使用するユーザーにだけでなく、指定されたロールのすべてのユーザーに適用されます。
ロールからセッションアクセス許可を取り消すための最小限のアクセス許可
ロールから正常にセッションアクセス許可を取り消すには、ロールの PutRolePolicy
アクセス許可が必要です。これにより、AWSRevokeOlderSessions
インラインポリシーをロールにアタッチできます。
セッションアクセス許可のキャンセル
ロールからセッションアクセス許可を取り消すことができます。
ロール認証情報のすべての現在のユーザーの、すべてのアクセス許可をすぐに拒否するには
AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/
) を開きます。 -
[ ダッシュボード] のナビゲーションペインで、[ロール] に続いて、アクセス許可を取り消すロールの名前 (チェックボックスではありません) を選択します。
-
選択したロールの [Summary (概要)] ページで、[セッションの無効化] タブを選択します。
-
[セッションの無効化] タブで、[アクティブなセッションの無効化] を選択します。
-
AWS によってアクションを確認するよう求められます。[I acknowledge that I am revoking all active sessions for this role] (このロールのアクティブなセッションをすべて無効にすることに同意します) のチェックボックスをオンにして、ダイアログボックスの [Revoke active sessions] (アクティブなセッションの無効化) を選択します。
IAM が、ロールに
AWSRevokeOlderSessions
という名前のポリシーをすぐにアタッチします。このポリシーでは、[Revoke active sessions] (アクティブなセッションの無効化) を選択する前にロールを引き受けたユーザーへのすべてのアクセスを拒否します。[Revoke active sessions] (アクティブなセッションの無効化) を選択する後にロールを引き受けたユーザーは影響を受けません。ユーザーやリソースの新しいポリシーを適用すると、ポリシーの更新が有効になるまでに数分かかる場合があります。変更がすぐに表示されるとは限らない理由については、「行った変更がすぐに表示されないことがある」をご参照ください。
ポリシーの削除について覚えておく必要はありません。セッションの無効化後にロールを引き受けたユーザーは、ポリシーによる影響を受けません。後で再度 [Revoke Sessions] (セッションの無効化) を選択すると、ポリシーの日や時間のスタンプが更新され、新しく指定した時間より前にロールを引き受けたユーザーのアクセス権がすべて再度拒否されます。
この方法でセッションが取り消された有効なユーザーは、作業を続行するには新しいセッション用の一時的な認証情報を取得する必要があります。この AWS CLI は、期限切れになるまで認証情報をキャッシュします。有効でなくなった、キャッシュされている認証情報の削除と更新を CLI に強制するには、次のいずれかのコマンドを実行します。
Linux、macOS、または Unix
$
rm -r ~/.aws/cli/cache
Windows
C:\>
del /s /q %UserProfile%\.aws\cli\cache
詳細については、「一時的なセキュリティ認証情報のアクセス権限を無効にする」を参照してください。