IAM ポリシーの確認 - AWS Key Management Service

IAM ポリシーの確認

キーポリシーと許可に加え、IAM ポリシーを使用して KMS キーへのアクセスを許可することもできます。IAM ポリシーとキーポリシーがどのように連携するかについては、「AWS KMS アクセス許可のトラブルシューティング」を参照してください。

IAM ポリシーを使用して KMS キーに現在アクセスできるプリンシパルを特定するには、ブラウザベースの IAM Policy Simulator ツールを使用するか、IAM API にリクエストします。

IAM ポリシーシミュレーターを使用した IAM ポリシーの確認

IAM Policy Simulator は、IAM ポリシーを介して KMS キーにアクセスできるプリンシパルを学習するのに役立ちます。

IAM Policy Simulator を使用して KMS キーへのアクセスを特定するには
  1. AWS マネジメントコンソール にサインインし、https://policysim.aws.amazon.com/ で IAM Policy Simulator を開きます。

  2. [Users, Groups, and Roles] ペインで、ポリシーをシミュレートするユーザー、グループ、またはロールを選択します。

  3. (オプション) シミュレーションから除外するポリシーの横のチェックボックスをオフにします。すべてのポリシーをシミュレートする場合は、すべてのポリシーが選択された状態にします。

  4. [Policy Simulator] ペインで、以下のオペレーションを行います。

    1. [Select service] で、[Key Management Service] を選択します。

    2. 特定の AWS KMS アクションをシミュレートするには、[Select actions] でシミュレートするアクションを選択します。すべての AWS KMS アクションをシミュレートする場合は、[Select All] を選択します。

  5. (オプション) Policy Simulator が、デフォルトですべての KMS キーへのアクセスをシミュレートします。  特定の KMS キーへのアクセスをシミュレートするには、[Simulation Settings] (シミュレーション設定) を選択し、シミュレートする KMS キーの Amazon リソースネーム (ARN) を入力します。

  6. [Run Simulation (シミュレーションの実行)] を選択します。

シミュレーションの結果は、[Results] セクションに表示されます。AWS アカウント のすべてのユーザー、グループ、ロールについて、ステップ 2~6 を繰り返します。

IAM API を使用した IAM ポリシーの確認

IAM API を使用して、IAM ポリシーをプログラムで調べることができます。次のステップは、API でユーザーベースのポリシーを確認する方法の概要を示します。

  1. キーポリシーでプリンシパルとしてリストされる各 AWS アカウント ("Principal": {"AWS": "arn:aws:iam::111122223333:root"} 形式で指定された各 AWS アカウントプリンシパル) について、IAM API の ListUsers オペレーションと ListRoles オペレーションを使用して、アカウントのすべての IAM ユーザーとロールのリストを取得します。

  2. リスト内の各ユーザーとロールについて、IAM API の SimulatePrincipalPolicy オペレーションを使用し、以下のパラメータを渡します。

    • PolicySourceArn について、リストのユーザーやロールから Amazon リソースネーム (ARN) を指定します。PolicySourceArn は、各 SimulatePrincipalPolicy リクエストで 1 つしか指定できないため、このオペレーションは複数回 (リスト内のユーザーおよびロールごとに 1 回) 呼び出す必要があります。

    • ActionNames のリストについて、シミュレートするすべての AWS KMS API アクションを指定します。すべての AWS KMS API アクションをシミュレートするには、kms:* を使用します。AWS KMS API アクションを個別にテストするには、各 API アクションを「kms:", for example "kms:ListKeys」で実行します。AWS KMS API アクションの完全なリストについては、「AWS Key Management Service API リファレンス」の「Actions」を参照してください。

    • (オプション) ユーザーやロールが特定の KMS キーにアクセスできるかどうかを特定するために、ResourceArns パラメータを使用して KMS キーの Amazon リソースネーム (ARN) のリストを指定します。ユーザーまたはロールが KMS キーにアクセスできるかどうかを特定するために、ResourceArns パラメータを省略してください。

IAM は各 SimulatePrincipalPolicy リクエストに対して、、 allowed, explicitDeny, 、またはの評価決定で応答 implicitDenyします。allowed の評価決定を含む各応答には、許可された特定の AWS KMS API オペレーションの名前が含まれます。評価で使用した KMS キーの ARN がある場合は、これも含まれます。