IAM の最終アクセス時間情報の表示 - AWS Identity and Access Management

IAM の最終アクセス時間情報の表示

AWS マネジメントコンソール、AWS CLI、または AWS API を使用して、IAM の最終アクセス時間情報を表示できます。最終アクセス時間情報には、Amazon S3 で最後にアクセスされたアクションに関する情報が含まれます。最終アクセス時間情報の詳細については、「最終アクセス時間情報を使用したアクセス許可の調整」を参照してください。

IAM では、各タイプのリソースに関する情報を表示できます。いずれの場合も、情報には、指定された報告期間に許可されたサービスが含まれます。

  • ユーザー – ユーザーが許可された各サービスへのアクセスを最後に試みた時間を表示します。

  • グループ – グループメンバーが許可された各サービスへのアクセスを最後に試みた時間に関する情報を表示します。また、このレポートには、アクセスを試みたメンバーの合計数も表示されます。

  • ロール – 許可された各サービスへのアクセスにおいて、ユーザーが最後にロールを使用した時間を表示します。

  • ポリシー – ユーザーまたはロールが許可された各サービスへのアクセスを最後に試みた時間に関する情報を表示します。また、このレポートには、アクセスを試みたエンティティの合計数も表示されます。

注記

IAM のリソースに関するアクセス情報を表示する前に、情報のレポート期間、レポート対象のエンティティ、評価対象のポリシータイプをご確認ください。詳細については、「最終アクセス時間情報について知っておくべきこと」を参照してください。

IAM の情報の表示 (コンソール)

IAM コンソールの [アクセスアドバイザー] タブで、IAM の最終アクセス時間情報を表示できます。

IAM の情報を表示するには (コンソール)

  1. AWS マネジメントコンソール にサインインし、IAM コンソール(https://console.aws.amazon.com/iam/)を開きます。

  2. ナビゲーションペインで、[グループ]、[ユーザー]、[ロール]、または [ポリシー] を選択します。

  3. 任意のユーザー、グループ、ロール、またはポリシーの名前をクリックして、その[概要] ページを開き、[アクセスアドバイザー] タブを選択します。選択したリソースに基づき、次の情報を表示します。

    • グループ – グループメンバー (ユーザー) がアクセスできるサービスのリストを表示します。また、メンバーが最後にサービスにアクセスした日時、使用したグループポリシー、リクエストを行ったグループメンバーも表示できます。ポリシーの名前を選択して、ポリシーが管理ポリシーかインライングループポリシーかを確認します。グループメンバーの名前を選択して、グループのすべてのメンバーと、サービスへの最終アクセス時間を選択します。

    • ユーザー – ユーザーがアクセスできるサービスのリストを表示します。また、最後にサービスにアクセスした日時と使用したポリシーも表示できます。ポリシーの名前を選択して、そのポリシーが管理ポリシー、インラインユーザーポリシー、グループのインラインポリシーのいずれであるかを確認します。

    • ロール – ロールでアクセスできるサービス、サービスへのロールの最終アクセス時間、および使用したポリシーのリストを表示します。ポリシーの名前を選択して、ポリシーが管理ポリシーかインラインロールポリシーかを確認します。

    • ポリシー – ポリシーで許可されたアクションを含むサービスのリストを表示します。また、サービスにアクセスするために最後にポリシーが使用された日時と、ポリシーを使用したエンティティ (ユーザーまたはロール) も表示できます。エンティティの名前を選択して、このポリシーがアタッチされているエンティティや、サービスへの最終アクセス時間を確認します。

  4. (オプション) テーブルの [サービス] 列で、[Amazon S3] を選択し、IAM エンティティがアクセスしようとした Amazon S3 管理アクションのリストを表示します。AWS リージョンと、ユーザーが最後にアクションを実行しようとした日時を示すタイムスタンプを表示できます。

  5. サービスおよび Amazon S3 管理アクションの [最終アクセス時間] 列が表示されます。この列で返される可能性のある次の結果を確認します。これらの結果は、サービスやアクションが許可されているかどうか、アクセスされたかどうか、および最終アクセス時間情報が AWS によって追跡されているかどうかによって異なります。

    <数値> 日前

    追跡期間中にサービスまたはアクションが使用されてから経過した日数。サービスの追跡期間は、過去 400 日間です。アクションの追跡期間は、2020 年 4 月 12 日に開始しました。各 AWS リージョンの追跡開始日の詳細については、「AWS が最終アクセス時間情報を追跡する場所」を参照してください。

    追跡期間内にアクセスがない

    追跡対象のサービスまたはアクションが、追跡期間中にエンティティによって使用されていません。

    リストに表示されないアクションに対するアクセス許可を持っている可能性があります。これは、アクションの追跡情報が現在 AWS によりサポートされていない場合に発生することがあります。追跡情報がないことだけに基づいてアクセス許可を決定しないでください。代わりに、この情報を使用して、最小限の権限を付与するという全体的な戦略を通知し、サポートすることをお勧めします。ポリシーをチェックして、アクセスレベルが適切であることを確認します。

IAM の情報の表示 (AWS CLI)

AWS CLI を使用して、IAM リソースが最後に AWS サービスと Amazon S3 アクションにアクセスしようとした時間に関する情報を取得できます。IAM リソースには、ユーザー、グループ、ロール、またはポリシーを選択できます。

IAM の情報を表示するには (AWS CLI)

  1. レポートを生成します。レポートで必要な IAM リソース (ユーザー、グループ、ロール、またはポリシー) の ARN がリクエストに含まれている必要があります。レポートで生成する粒度レベルを指定して、いずれかのサービス、またはサービスとアクションの両方のアクセスの詳細を表示できます。リクエストにより job-id が返されます。これを使用して、get-service-last-accessed-details および get-service-last-accessed-details-with-entities オペレーションを使用して、ジョブが完了するまで、job-status をモニタリングできます。

  2. 前のステップの job-id パラメータを使用して、レポートに関する詳細を取得します。

    このオペレーションでは、generate-service-last-accessed-details オペレーションでリクエストしたリソースのタイプと粒度レベルに基づき、次の情報が返されます。

    • ユーザー – 指定したユーザーがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、ユーザーが最後に試行した日時とユーザーの ARN を返します。

    • グループ – グループに関連付けられたポリシーを使用して、指定したグループのメンバーがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、グループメンバー (ユーザー) が最後に試行した日時を返します。また、そのユーザーの ARN と、サービスにアクセスしようとしたグループメンバーの合計数も返ります。GetServiceLastAccessedDetailsWithEntities オペレーションを使用して、すべてのメンバーのリストを取得します。

    • ロール – 指定したロールがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、ロールが最後に試行した日時とロールの ARN を返します。

    • ポリシー – 指定されたポリシーがアクセスを許可するサービスのリストを返します。各サービスについて、オペレーションは、エンティティ (ユーザーまたはロール) が最後にポリシーを使用してサービスにアクセスしようとした日時を返します。また、そのエンティティの ARN とアクセスを試みたエンティティの合計数も返ります。

  3. 特定のサービスにアクセスするためにグループまたはポリシーのアクセス許可を使用したエンティティについて説明します。このオペレーションは、各エンティティの ARN、ID、名前、パス、タイプ (ユーザーまたはロール)、および最後にサービスにアクセスしようとしたエンティティのリストを返します。このオペレーションは、ユーザーとロールに対しても使用できますが、そのエンティティに関する情報のみが返ります。

  4. 特定のサービスにアクセスする際にアイデンティティ (ユーザー、グループ、またはロール) が使用したアイデンティティベースのポリシーについて説明します。アイデンティティとサービスを指定すると、このオペレーションは、アイデンティティが指定されたサービスにアクセスするために使用できるアクセス許可ポリシーのリストを返します。このオペレーションは、ポリシーの現在の状態を示し、生成されたレポートには依存しません。また、他のポリシータイプ (例: リソースベースのポリシー、アクセスコントロールリスト、AWS Organizations ポリシー、IAM アクセス許可の境界、セッションポリシー) は返されません。詳細については、「ポリシータイプ」または「単一アカウント内のポリシーを評価する」を参照してください。

IAM の情報の表示 (AWS API)

AWS API を使用して、IAM リソースが最後に AWS サービスと Amazon S3 アクションにアクセスしようとした時間に関する情報を取得できます。IAM リソースには、ユーザー、グループ、ロール、またはポリシーを選択できます。レポートで生成する粒度レベルを指定して、いずれかのサービス、またはサービスとアクションの両方の詳細を表示できます。

IAM の情報を表示するには (AWS API)

  1. レポートを生成します。レポートで必要な IAM リソース (ユーザー、グループ、ロール、またはポリシー) の ARN がリクエストに含まれている必要があります。JobId が返ります。これを使用して、GetServiceLastAccessedDetails および GetServiceLastAccessedDetailsWithEntities オペレーションを使用して、ジョブが完了するまで、JobStatus をモニタリングできます。

  2. 前のステップの JobId パラメータを使用して、レポートに関する詳細を取得します。

    このオペレーションでは、GenerateServiceLastAccessedDetails オペレーションでリクエストしたリソースのタイプと粒度レベルに基づき、次の情報が返されます。

    • ユーザー – 指定したユーザーがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、ユーザーが最後に試行した日時とユーザーの ARN を返します。

    • グループ – グループに関連付けられたポリシーを使用して、指定したグループのメンバーがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、グループメンバー (ユーザー) が最後に試行した日時を返します。また、そのユーザーの ARN と、サービスにアクセスしようとしたグループメンバーの合計数も返ります。GetServiceLastAccessedDetailsWithEntities オペレーションを使用して、すべてのメンバーのリストを取得します。

    • ロール – 指定したロールがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、ロールが最後に試行した日時とロールの ARN を返します。

    • ポリシー – 指定されたポリシーがアクセスを許可するサービスのリストを返します。各サービスについて、オペレーションは、エンティティ (ユーザーまたはロール) が最後にポリシーを使用してサービスにアクセスしようとした日時を返します。また、そのエンティティの ARN とアクセスを試みたエンティティの合計数も返ります。

  3. 特定のサービスにアクセスするためにグループまたはポリシーのアクセス許可を使用したエンティティについて説明します。このオペレーションは、各エンティティの ARN、ID、名前、パス、タイプ (ユーザーまたはロール)、および最後にサービスにアクセスしようとしたエンティティのリストを返します。このオペレーションは、ユーザーとロールに対しても使用できますが、そのエンティティに関する情報のみが返ります。

  4. 特定のサービスにアクセスする際にアイデンティティ (ユーザー、グループ、またはロール) が使用したアイデンティティベースのポリシーについて説明します。アイデンティティとサービスを指定すると、このオペレーションは、アイデンティティが指定されたサービスにアクセスするために使用できるアクセス許可ポリシーのリストを返します。このオペレーションは、ポリシーの現在の状態を示し、生成されたレポートには依存しません。また、他のポリシータイプ (例: リソースベースのポリシー、アクセスコントロールリスト、AWS Organizations ポリシー、IAM アクセス許可の境界、セッションポリシー) は返されません。詳細については、「ポリシータイプ」または「単一アカウント内のポリシーを評価する」を参照してください。