

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# IAM ポリシーの確認
<a name="determining-access-iam-policies"></a>

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

IAM ポリシーを使用して KMS キーに現在アクセスできるプリンシパルを特定するには、ブラウザベースの [IAM Policy Simulator](https://policysim.aws.amazon.com/) ツールを使用するか、IAM API にリクエストします。

**Contents**
+ [IAM ポリシーシミュレーターを使用した IAM ポリシーの確認](#determining-access-iam-policy-simulator)
+ [IAM API を使用した IAM ポリシーの確認](#determining-access-iam-api)

## IAM ポリシーシミュレーターを使用した IAM ポリシーの確認
<a name="determining-access-iam-policy-simulator"></a>

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

**IAM Policy Simulator を使用して KMS キーへのアクセスを特定するには**

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

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

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

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

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

   1. 特定の AWS KMS アクションをシミュレートするには、**アクションの選択**で、シミュレートするアクションを選択します。すべての AWS KMS アクションをシミュレートするには、**すべて選択**を選択します。

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

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

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

## IAM API を使用した IAM ポリシーの確認
<a name="determining-access-iam-api"></a>

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

1. キーポリシーにプリンシパルとして AWS アカウント リストされている各 (つまり、この形式で指定された各[AWS アカウントプリンシパル](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-accounts): `"Principal": {"AWS": "arn:aws:iam::111122223333:root"}`) について、IAM API の [ListUsers](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html) および [ListRoles](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListRoles.html) オペレーションを使用して、アカウントのすべてのユーザーとロールを取得します。

1. リスト内の各ユーザーとロールについて、IAM API の [SimulatePrincipalPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html) オペレーションを使用し、以下のパラメータを渡します。
   + `PolicySourceArn` について、リストのユーザーやロールから Amazon リソースネーム (ARN) を指定します。`PolicySourceArn` は、各 `SimulatePrincipalPolicy` リクエストで 1 つしか指定できないため、このオペレーションは複数回 (リスト内のユーザーおよびロールごとに 1 回) 呼び出す必要があります。
   + `ActionNames` リストで、シミュレートするすべての AWS KMS API アクションを指定します。すべての AWS KMS API アクションをシミュレートするには、 を使用します`kms:*`。個々の AWS KMS API アクションをテストするには、各 API アクションの前に`kms:`「」など「」を付け`kms:ListKeys`ます。 AWS KMS API アクションの完全なリストについては、「AWS Key Management Service API リファレンス」の「[Actions](https://docs.aws.amazon.com/kms/latest/APIReference/API_Operations.html)」を参照してください。
   + (オプション) ユーザーやロールが特定の KMS キーにアクセスできるかどうかを特定するために、`ResourceArns` パラメータを使用して KMS キーの Amazon リソースネーム (ARN) のリストを指定します。ユーザーまたはロールが KMS キーにアクセスできるかどうかを特定するために、`ResourceArns` パラメータを省略してください。

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