

# AWS リソースの アクセス管理
<a name="access"></a>

AWS Identity and Access Management (IAM) は、AWS リソースへのアクセスを安全に管理するためのウェブサービスです。AWS で[プリンシパル](https://docs.aws.amazon.com/glossary/latest/reference/glos-chap.html?icmpid=docs_homepage_addtlrcs#principal)がリクエストを行うと、AWS 強制コードは、プリンシパルが認証 (サインイン) され、許可されている (アクセス許可を持っている) かどうかをチェックします。AWS でアクセスを管理するには、ポリシーを作成して IAM ID や AWS リソースにアタッチします。ポリシーは、アイデンティティやリソースにアタッチして、そのアクセス許可を定義する、AWS の JSON ポリシードキュメントです。ポリシーのタイプと用途の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。

残りの認証と認可の詳細については、「[IAM の仕組み](intro-structure.md)」を参照してください 。

![\[AccessManagement_Diagram\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/access-diagram_800.png)


認可の間、AWS エンフォースメントコードでは、[リクエストコンテキスト](intro-structure.md#intro-structure-request)からの値に基づいて、一致するポリシーをチェックし、リクエストの許可または拒否を決定します。

AWS は、リクエストのコンテキストに該当する各ポリシーをチェックします。1 つのポリシーでリクエストが拒否されると、そのリクエストは AWS で全面的に拒否され、ポリシーの評価が停止します。このプロセスは*明示的な拒否*と呼ばれています。リクエストは*デフォルトで拒否*されるため、IAM では、リクエストのすべての部分が該当するポリシーによって許可された場合に限り、リクエストを承認します。単一アカウント内のリクエストの[評価ロジック](reference_policies_evaluation-logic.md)は、以下のルールに基づきます。
+ デフォルトでは、すべてのリクエストが明示的に拒否されます。(または、AWS アカウントのルートユーザー には、デフォルトでフルアクセス権が付与されています)。
+ アイデンティティベースのポリシーまたはリソースベースのポリシーに明示的な許可が含まれている場合、このデフォルト設定は上書きされます。
+ アクセス許可の境界、AWS Organizations SCP、またはセッションポリシーがある場合、この許可は明示的な拒否で上書きされる場合があります。
+ ポリシー内の明示的な拒否は、すべての許可に優先します。

リクエストが認証され承認された後で、AWS はリクエストを承認します。別のアカウントでリクエストする必要がある場合は、別のアカウントポリシーで、リソースへのアクセスを許可する必要があります。さらに、リクエストに使用する IAM エンティティに、そのリクエストを許可するアイデンティティベースのポリシーが必要です。

## アクセス管理リソース
<a name="access_resources"></a>

権限に関する詳細およびポリシーの作成に関する詳細については、以下のリソースを参照してください。

AWS セキュリティブログの以下のエントリは、Amazon S3 バケットおよびオブジェクトへのアクセスに関するポリシーを記述するための一般的な方法について説明しています。
+ [IAM ポリシーの記述: Amazon S3 バケットへのアクセス権を付与する方法](https://aws.amazon.com/blogs/security/writing-iam-policies-how-to-grant-access-to-an-amazon-s3-bucket/)
+ [ IAM ポリシーの記述: Amazon S3 バケット内のユーザー固有のフォルダへのアクセスを許可する方法](https://aws.amazon.com/blogs/security/writing-iam-policies-grant-access-to-user-specific-folders-in-an-amazon-s3-bucket/)
+ [IAM ポリシー、バケットポリシー、および ACL\$1 Oh, My\$1 (S3 リソースへのアクセス制御)](https://aws.amazon.com/blogs/security/iam-policies-and-bucket-policies-and-acls-oh-my-controlling-access-to-s3-resources/)
+ [RDS のリソース レベルのアクセス許可入門](https://aws.amazon.com/blogs/security/a-primer-on-rds-resource-level-permissions)
+ [EC2 リソースレベルアクセス許可とは](https://aws.amazon.com/blogs/security/demystifying-ec2-resource-level-permissions/)

# AWS Identity and Access Management でのポリシーとアクセス許可
<a name="access_policies"></a>

AWS でのアクセスを管理するには、ポリシーを作成し、IAM アイデンティティ (ユーザー、ユーザーのグループ、ロール) または AWS リソースにアタッチします。ポリシーは AWS のオブジェクトであり、アイデンティティやリソースに関連付けて、これらのアクセス許可を定義します。AWS は、IAM プリンシパル (ユーザーまたはロール) によってリクエストが行われると、それらのポリシーを評価します。ポリシーでの権限により、リクエストが許可されるか拒否されるかが決まります。ほとんどのポリシーは JSON ドキュメントとして AWS に保存されます。 AWS は、ID ベースのポリシー、リソースベースのポリシー、アクセス許可の境界、AWS Organizations のサービスコントロールポリシー (SCP)、AWS Organizations リソースコントロールポリシー (RCP)、アクセスコントロールリスト (ACL)、セッションポリシーのポリシータイプをサポートします。

IAM ポリシーは、オペレーションの実行方法を問わず、アクションの許可を定義します。例えば、[GetUser](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUser.html) アクションを許可するポリシーを適用されたユーザーは、AWS マネジメントコンソール、AWS CLI、または AWS API からユーザー情報を取得できます。IAM ユーザーを作成したら、コンソールまたはプログラムによるアクセスを許可するように選択できます。コンソールへのアクセスが許可されている場合、IAM ユーザーは、サインイン認証情報を使用してコンソールにサインインできます。プログラムによるアクセスが許可されている場合、ユーザーは、アクセスキーで CLI または API を使用します。

## ポリシータイプ
<a name="access_policy-types"></a>

AWS では、使用頻度の高いものから低いものの順にリストされた次のポリシータイプを使用できます。詳細については、以下のポリシータイプ別のセクションを参照してください。
+ **[ID ベースのポリシー](#policies_id-based)** – [管理](#managedpolicy)ポリシーと[インライン](#inline)ポリシーを IAM ID (ユーザー、ユーザーが所属するグループ、またはロール) に添付することができます。アイデンティティベースのポリシーでは、アクセス許可はアイデンティティに付与されます。
+ **[リソースベースのポリシー](#policies_resource-based)** – インラインポリシーをリソースにアタッチします。リソースベースのポリシーとして最も一般的な例は、Amazon S3 バケットポリシーと IAM ロールの信頼ポリシーです。リソースベースのポリシーでは、アクセス許可は、ポリシーで指定されているプリンシパルに付与されます。プリンシパルは、リソースと同じアカウントか、別のアカウントになります。
+ **[アクセス許可の境界](#policies_bound)** – IAM エンティティ (ユーザーまたはロール) のアクセス許可の境界として、管理ポリシーを使用します。このポリシーでは、アイデンティティベースのポリシーでエンティティに付与できるアクセス許可の上限を定義しますが、アクセス許可は付与されません。アクセス許可の境界では、リソースベースのポリシーでエンティティに付与できるアクセス許可の上限は定義されません。
+ **[AWS Organizations SCP](#policies_scp)** – AWS Organizations サービスコントロールポリシー (SCP) を使用して、組織または組織単位 (OU) のアカウント内の IAM ユーザーと IAM ロールの最大の許可を定義します。SCP は、ID ベースのポリシーまたはリソースベースのポリシーがアカウント内の IAM ユーザーまたは IAM ロールに付与する許可を制限します。SCP は許可を付与するものではありません。
+ **[AWS Organizations RCP](#policies_rcp)** – AWS Organizations リソースコントロールポリシー (RCP) を使用して、組織または組織単位 (OU) のアカウント内のリソースの最大の許可を定義します。RCP は、ID ベースのポリシーおよびリソースベースのポリシーが組織内のアカウントのリソースに付与できる許可を制限します。RCP は許可を付与するものではありません。
+ **[アクセスコントロールリスト (ACL)](#policies_acl)** – ACL を使用して、ACL がアタッチされているリソースにアクセスすることができる他のアカウントのプリンシパルを制御します。ACL は、リソースベースのポリシーと似ていますが、JSON ポリシードキュメント構造を使用しない唯一のポリシータイプです。ACL は、指定されたプリンシパルにアクセス許可を付与するクロスアカウントのアクセス許可ポリシーです。ACL では、同じアカウント内のエンティティにアクセス許可を付与することはできません。
+ **[セッションポリシー](#policies_session)** – AWS CLI または AWS API を使用して、ロールまたはフェデレーティッドユーザーを引き受ける場合に高度なセッションポリシーを渡します。セッションポリシーでは、ロールまたはユーザーのアイデンティティベースのポリシーでセッションに付与するアクセス許可を制限します。セッションポリシーでは、作成したセッションのアクセス許可が制限されますが、アクセス許可は付与されません。詳細については、「[セッションポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)」を参照してください。

### アイデンティティベースのポリシー
<a name="policies_id-based"></a>

アイデンティティベースのポリシーは、アイデンティティ (ユーザー、ユーザーのグループ、ロール) が実行できるアクション、リソース、および条件を制御する JSON アクセス許可ポリシードキュメントです。アイデンティティベースのポリシーはさらに次のように分類できます。
+ **管理ポリシー** - AWS アカウント 内の複数のユーザー、グループ、およびロールにアタッチできるスタンドアロンのアイデンティティベースのポリシーです。管理ポリシーには 2 種類あります。
  + **AWS 管理ポリシー** – AWS が作成および管理する管理ポリシー。
  + **カスタマー管理ポリシー** - AWS アカウント で作成および管理する管理ポリシー。カスタマー管理ポリシーでは、AWS 管理ポリシーに比べて、より正確にポリシーを管理できます。
+ **インラインポリシー** - 単一のユーザー、グループ、ロールに直接追加するポリシー。インラインポリシーは、ポリシーとIDの間の厳密な1対1の関係を維持します。これらは、ID を削除すると削除されます。

管理ポリシーとインラインポリシーを使い分ける方法については、「[管理ポリシーとインラインポリシーのいずれかを選択する](access_policies-choosing-managed-or-inline.md)」を参照してください。

### リソースベースのポリシー
<a name="policies_resource-based"></a>

リソースベースのポリシーは、Amazon S3 バケットなどのリソースにアタッチする JSON ポリシードキュメントです。これらのポリシーでは、そのリソースに対して特定のアクションを実行するために指定されたプリンシパルのアクセス許可を付与するとともに、このアクセス許可が適用される条件を定義します。リソースベースのポリシーはインラインポリシーです。マネージド型のリソースベースのポリシーはありません。

クロスアカウントアクセスを有効にするには、全体のアカウント、または別のアカウントの IAM エンティティを、リソースベースのポリシーのプリンシパルとして指定します。リソースベースのポリシーにクロスアカウントのプリンシパルを追加しても、信頼関係は半分しか確立されない点に注意してください。プリンシパルおよびリソースが別の AWS アカウント である場合は、アイデンティティベースのポリシーを使用して、リソースへのアクセス権をプリンシパルに付与する必要があります。ただし、リソースベースのポリシーで、同じアカウントのプリンシパルへのアクセス権が付与されている場合は、アイデンティティベースのポリシーをさらに付与する必要はありません。クロスサービスアクセスを許可する手順については、[IAM チュートリアル: AWS アカウント間の IAM ロールを使用したアクセスの委任](tutorial_cross-account-with-roles.md)。

IAM サービスは、ロールの*信頼ポリシー*と呼ばれるリソースベースのポリシーのタイプを 1 つのみサポートします。これが、IAM ロールにアタッチされています。IAM ロールは、リソースベースのポリシーをサポートするアイデンティティかつリソースです。そのため、信頼ポリシーとアイデンティティベースのポリシーのいずれも IAM ロールにアタッチする必要があります。信頼ポリシーでは、ロールを引き受けることができるプリンシパルエンティティ (アカウント、ユーザー、ロール、フェデレーティッドユーザー) を定義します。IAM ロールと、他のリソースベースのポリシーとの違いについては、「[IAM でのクロスアカウントのリソースへのアクセス](access_policies-cross-account-resource-access.md)」を参照してください。

リソースベースのポリシーをサポートするその他のサービスを確認するには､「[IAM と連携する AWS のサービス](reference_aws-services-that-work-with-iam.md)」を参照してください｡ リソースベースのポリシーの詳細については、「[アイデンティティベースおよびリソースベースのポリシー](access_policies_identity-vs-resource.md)」を参照してください。信頼ゾーン (信頼できる組織またはアカウント) 外にあるアカウントのプリンシパルにロールを引き受けるアクセス権があるかどうかについては、「[IAM Access Analyzer とは](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html)」を参照してください。

### IAM アクセス許可の境界
<a name="policies_bound"></a>

アクセス許可の境界は、アイデンティティベースのポリシーが IAM エンティティに付与できるアクセス許可の上限を設定する高度な機能です。エンティティのアクセス許可の境界を設定した場合、エンティティは、アイデンティティベースのポリシーとそのアクセス許可の境界の両方で許可されているアクセス許可のみ実行できます。リソースベースのポリシーのプリンシパル要素でロールセッションまたはユーザーを指定する場合、アクセス許可の境界における明示的な許可は必要ありません。ただし、リソースベースのポリシーのプリンシパル要素でロール ARN を指定する場合は、アクセス許可の境界における明示的な許可が必要です。いずれの場合も、アクセス許可の境界における明示的な拒否は有効です。これらのポリシーのいずれかを明示的に拒否した場合、許可は無効になります。アクセス許可の境界の詳細については、「[IAM エンティティのアクセス許可境界](access_policies_boundaries.md)」を参照してください

### AWS Organizations サービスコントロールポリシー (SCP)
<a name="policies_scp"></a>

組織内のすべての機能を有効にすると、サービスコントロールポリシー (SCP) を一部またはすべてのアカウントに適用できます。SCP は、組織または組織単位 (OU) のアカウント内の IAM ユーザーと IAM ロールの最大の許可を指定する JSON ポリシーです。SCP はメンバーアカウントのプリンシパルに対する許可を制限します (各 AWS アカウントのルートユーザー など)。これらのポリシーのいずれかにおける明示的な拒否は、他のポリシーにおける許可をオーバーライドします。

AWS Organizations および SCP の詳細については、 「*AWS Organizations ユーザーガイド*」の「[サービスコントロールポリシー (SCP)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)」を参照してください。

### AWS Organizations リソースコントロールポリシー (RCP)
<a name="policies_rcp"></a>

組織内のすべての機能を有効にすると、リソースコントロールポリシー (RCP) を使用して、複数の AWS アカウント におけるリソースに対して、アクセスコントロールを一元的に適用できます。RCP は、所有する各リソースにアタッチされた IAM ポリシーを更新することなく、アカウント内のリソースのために使用できる最大の許可を設定するために使用できる JSON ポリシーです。RCP は、メンバーアカウントのリソースの許可を制限し、組織に属するかどうかにかかわらず、AWS アカウントのルートユーザー を含む ID のための有効な許可に影響を及ぼす可能性があります。該当する RCP の明示的な拒否は、個々の ID またはリソースにアタッチされる可能性のある他のポリシーの許可をオーバーライドします。

RCP をサポートする AWS のサービス のリストを含む AWS Organizations と RCP の詳細については、「*AWS Organizations ユーザーガイド*」の「[リソースコントロールポリシー (RCP)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html)」を参照してください。

### アクセスコントロールリスト (ACL)
<a name="policies_acl"></a>

アクセスコントロールポリシー (ACL) は、リソースにアクセスできる別のアカウントのプリンシパルを制御できるサービスポリシーです。ACL を使用して、同じアカウント内のプリンシパルのアクセス権を制御することはできません。ACL は、リソースベースのポリシーと似ていますが、JSON ポリシードキュメント形式を使用しない唯一のポリシータイプです。Amazon S3、AWS WAF、および Amazon VPC は、ACL をサポートするサービスの例です。ACL の詳細については、「Amazon Simple Storage Service デベロッパーガイド」の「[アクセスコントロールリスト (ACL) の概要](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html)」を参照してください。

### セッションポリシー
<a name="policies_session"></a>

セッションポリシーは、ロールまたは AWS STS フェデレーションユーザーのプリンシパルに一時セッションをプログラムで作成する際、パラメータとして渡す高度なポリシーです。セッションのアクセス許可は、セッションの作成に使用する IAM エンティティ (ユーザーまたはロール) のアイデンティティベースのポリシーとセッションポリシーの共通部分です。また、リソースベースのポリシーから権限が派生する場合もあります。これらのポリシーのいずれかを明示的に拒否した場合、許可は無効になります。

API の `AssumeRole`、`AssumeRoleWithSAML`、または `AssumeRoleWithWebIdentity` オペレーションを使用して、ロールセッションを作成し、プログラムでセッションポリシーを渡すことができます。`Policy` パラメータを使用して単一の JSON インラインセッションポリシードキュメントを渡すことができます。`PolicyArns` パラメータを使用して、最大 10 個の管理セッションポリシーを指定できます。ロールセッションに関する詳細については、「[一時的なセキュリティ認証情報のアクセス許可](id_credentials_temp_control-access.md)」を参照してください。

AWS STS フェデレーションユーザーのプリンシパルセッションを作成する際、IAM ユーザーのアクセスキーを使用して `GetFederationToken` API オペレーションをプログラムで呼び出します。また、セッションポリシーも渡す必要があります。結果として得られるセッションのアクセス許可は、ID ベースのポリシーとセッションポリシーの共通部分です。フェデレーティッドユーザーセッションの作成に関する詳細については、「[カスタム ID ブローカーを通じた認証情報のリクエスト](id_credentials_temp_request.md#api_getfederationtoken)」を参照してください。

リソースベースのポリシーでは、プリンシパルとしてユーザーまたはロールの ARN を指定できます。その場合、セッションが作成される前に、リソースベースのポリシーのアクセス許可がロールまたはユーザーのアイデンティティベースのポリシーに追加されます。このセッションポリシーでは、リソースベースのポリシーおよびアイデンティティベースのポリシーによって付与されるアクセス許可の合計を制限します。結果として得られるセッションのアクセス許可は、セッションポリシーとリソースベースのポリシーの共通部分に加えて、セッションポリシーと ID ベースのポリシーの共通部分です。

![\[エンティティ ARN を指定するリソースベースのポリシーを含むセッションポリシーの評価\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/EffectivePermissions-session-rbp-id.png)


リソースベースのポリシーでは、プリンシパルとしてセッションの ARN を指定できます。その場合、リソースベースのポリシーのアクセス権限がセッションの作成後に追加されます。リソースベースのポリシーのアクセス許可は、セッションポリシーで制限されません。結果として得られるセッションには、リソースベースのポリシーのすべてのアクセス許可*に加えて*、アイデンティティベースのポリシーとセッションポリシーの共通部分があります。

![\[セッション ARN を指定するリソースベースのポリシーを含むセッションポリシーの評価\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/EffectivePermissions-session-rbpsession-id.png)


アクセス許可の境界で、セッションの作成に使用するユーザーまたはロールのアクセス許可の上限が設定されます。その場合、結果として得られるセッションのアクセス許可は、セッションポリシー、アクセス許可の境界、およびアイデンティティベースのポリシーの共通部分です。ただし、アクセス許可の境界では、結果として得られるセッションの ARN を指定するリソースベースのポリシーによって付与されたアクセス許可は制限されません。

![\[アクセス許可の境界を含むセッションポリシーの評価\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/EffectivePermissions-session-boundary-id.png)


## ポリシーとルートユーザー
<a name="access_policies-root"></a>

AWS アカウントのルートユーザー に影響するポリシータイプは限定されます。ルートユーザーにはアイデンティティベースのポリシーをアタッチできません。また、ルートユーザーにはアクセス許可の境界を設定できません。ただし、ルートユーザーはリソースベースのポリシーまたは ACL でプリンシパルとして指定できます。ルートユーザーは引き続きアカウントのメンバーです。そのアカウントが AWS Organizations の組織のメンバーの場合、ルートユーザーからアカウントの SCP および RCP の影響を受けます。

## JSON ポリシー概要
<a name="access_policies-json"></a>

大半のポリシーは JSON ドキュメントとして AWS に保存されます。アイデンティティベースのポリシーおよび境界のアクセス許可設定に使用されるポリシーは、ユーザーまたはロールにアタッチする JSON ポリシードキュメントです。リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。SCP と RCP は、AWS Organizations 組織ルート、組織単位 (OU)、またはアカウントにアタッチする、制限された構文を持つ JSON ポリシードキュメントです。ACL もリソースにアタッチしますが、別の構文を使用する必要があります。セッションポリシーは、ロールまたはフェデレーティッドユーザーセッションを引き受けるときに指定した JSON ポリシーです。

JSON 構文を理解する必要はありません。AWS マネジメントコンソール でビジュアルエディタを使用すると、JSON を一切使用することなく、カスタマー管理ポリシーを作成および編集できます。ただし、グループあるいは複雑なポリシーに対してインラインポリシーを使用する場合は、コンソールで JSON エディタを使用してポリシーを作成および編集する必要があります。ビジュアルエディタの詳細については、「[カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](access_policies_create.md)」および「[IAM ポリシーを編集する](access_policies_manage-edit.md)」を参照してください。

 JSON ポリシーを作成または編集するときに、IAM はポリシー検証を実行し、効果的なポリシーを作成するのに役立ちます。IAM は JSON 構文エラーを識別します。一方、IAM Access Analyzer は、ポリシーをさらに絞り込むのに役立つ推奨事項を含む追加のポリシーチェックを提供します。ポリシーの検証の詳細については、「[IAM ポリシーの検証](access_policies_policy-validator.md)」を参照してください。。IAM Access Analyzer のポリシーチェックと実用的な推奨事項の詳細については、「[IAM Access Analyzer ポリシーの検証](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)」IAM Access Analyzer ポリシーの検証を参照してください。

### JSON ポリシードキュメント構造
<a name="policies-introduction"></a>

次の図に示すように、JSON ポリシードキュメントは以下の要素で構成されます。
+ ドキュメントの最上部に記載されるポリシー全体の情報 (任意)
+ 1 つ以上の個別のステートメント**

各ステートメントには、1 つのアクセス許可に関する情報が含まれています。ポリシーに複数のステートメントが含まれている場合、AWS は評価時にステートメント全体に論理 `OR` を適用します。複数のポリシーが 1 つのリクエストに適用される場合、AWS は評価時にすべてのポリシーに論理 `OR` を適用します。

![\[JSON ポリシードキュメント構造\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/AccessPolicyLanguage_General_Policy_Structure.diagram.png)


ステートメントの情報は、一連の要素の中に含まれています。
+ **Version** – 使用するポリシー言語のバージョンを指定します。最新 `2012-10-17 ` バージョンの使用をお勧めします。詳細については、[IAM JSON ポリシー要素Version](reference_policies_elements_version.md)を参照してください。
+ **Statement** – このポリシーのメイン要素であり、以下の要素のコンテナになります。ポリシーには、複数のステートメントを含めることができます。
+ **Sid** (オプション) – 複数のステートメントを区別するための任意のステートメント ID が含まれます。
+ **Effect** – `Allow` または `Deny` を使用してポリシーで付与または拒否するアクセス許可を指定します。
+ **Principal** (一部の状況で必須) – リソースベースのポリシーを作成する場合、アクセスを許可または拒否するアカウント、ユーザー、ロール、AWS STS フェデレーションユーザーのプリンシパルを指定する必要があります。ユーザーまたはロールにアタッチする IAM アクセス許可ポリシーを作成する場合は、この要素を含めることはできません。プリンシパルは、そのユーザーまたはロールを暗黙に示しています。
+ **Action** – ポリシーで許可または拒否するアクションのリストが含まれます。
+ **Resource** (一部の状況で必須) IAM アクセス許可ポリシーを作成する場合は、アクションが適用されるリソースのリストを指定する必要があります。リソースベースのポリシーを作成する場合、この要素が必要かどうかについて、使用しているリソースによって異なります。
+ **Condition** (オプション) ポリシーでアクセス許可を付与する状況を指定します。

上記およびさらに詳細なポリシー要素の詳細については、「[IAM JSON ポリシー要素のリファレンス](reference_policies_elements.md)」を参照してください。

### 複数のステートメントと複数のポリシー
<a name="policies-syntax-multiples"></a>

エンティティ (ユーザーまたはロール) に対して複数のアクセス許可を定義する場合は、1 つのポリシーで複数のステートメントを使用することができます。また、複数のポリシーをアタッチすることもできます。1 つのステートメントで複数のアクセス許可を定義すると、ポリシーから期待するアクセス許可が付与されない場合があります。ポリシーをリソースタイプ別に分割することをお勧めします。

[ポリシーのサイズが制限されている](reference_iam-quotas.md)ために、複雑なアクセス許可には複数のポリシーが必要になる場合があります。機能別にアクセス許可をグループ化して別個のカスタマー管理ポリシーを作成することも有効です。たとえば、IAM ユーザー管理用、自己管理用、S3 バケット管理用に 3 つのポリシーを作成するとします。AWS では、複数のステートメントや複数のポリシーの組み合わせにかかわらず、ポリシーを同じ方法で[評価](reference_policies_evaluation-logic.md)します。

たとえば、次のポリシーには 3 つのステートメントがあります。ステートメント別に異なるアクセス許可セットが 1 つのアカウント内に定義されます。各ステートメントでは以下が定義されます。
+ 最初のステートメントは、`Sid` (ステートメント ID) が `FirstStatement` であり、ポリシーがアタッチされたユーザーに対して各自のパスワードを変更することを許可します。このステートメントの `Resource` 要素は「すべてのリソース」を意味する「`*`」です。しかし、実際に API オペレーション `ChangePassword` (CLI コマンド `change-password` に対応) が影響するのはリクエストを行うユーザーのパスワードのみです。
+ 2 つ目のステートメントでは、ユーザーは AWS アカウント のすべての Amazon S3 バケットを一覧表示できます。このステートメントの `Resource` 要素は「すべてのリソース」を意味する `"*"` です。ただし、ポリシーでは他のアカウントのリソースへのアクセスが許可されていないため、ユーザーは自分の AWS アカウント のバケットのみ一覧表示できます。
+ 3 番目のステートメントでは、`amzn-s3-demo-bucket-confidential-data` というバケット内の任意のオブジェクトを表示および取得することをユーザーに許可しますが、ユーザーが多要素認証 (MFA) で認証することが条件です。このポリシーの `Condition` 要素で MFA 認証が強制されます。

  ポリシーステートメントに `Condition` 要素が含まれている場合、このステートメントは `Condition` 要素が true に評価されたときにのみ有効になります。この例では、ユーザーが MFA 認証された場合に限り、`Condition` 要素が true に評価されます。ユーザーが MFA 認証されていない場合、この `Condition` は false に評価されます。この場合、このポリシーの 3 番目のステートメントは適用されず、ユーザーは `amzn-s3-demo-bucket-confidential-data` バケットにアクセスできません。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "FirstStatement",
      "Effect": "Allow",
      "Action": ["iam:ChangePassword"],
      "Resource": "*"
    },
    {
      "Sid": "SecondStatement",
      "Effect": "Allow",
      "Action": "s3:ListAllMyBuckets",
      "Resource": "*"
    },
    {
      "Sid": "ThirdStatement",
      "Effect": "Allow",
      "Action": [
        "s3:List*",
        "s3:Get*"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket-confidential-data",
        "arn:aws:s3:::amzn-s3-demo-bucket-confidential-data/*"
      ],
      "Condition": {"Bool": {"aws:MultiFactorAuthPresent": "true"}}
    }
  ]
}
```

------

### JSON ポリシー構文の例
<a name="policies-syntax-examples"></a>

次のIDベースのポリシーにより、暗黙のプリンシパルは `amzn-s3-demo-bucket` という名前の単一の Amazon S3 バケットをリストできます。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": "s3:ListBucket",
    "Resource": "arn:aws:s3:::amzn-s3-demo-bucket"
  }
}
```

------

次のリソースベースのポリシーは Amazon S3 バケットにアタッチできます。このポリシーでは、バケット `amzn-s3-demo-bucket` に対して Amazon S3 のすべてのアクションを実行することを、特定の AWS アカウント のメンバーに許可します。バケットやバケット内のオブジェクトに対して任意のアクションを実行できます。(このポリシーではアカウントに対してのみ信頼が付与されているため、指定された Amazon S3 アクションを実行するには、アクションへのアクセス許可をアカウント内の個々のユーザーに付与する必要があります。) 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::111122223333:root"
                ]
            },
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ]
        }
    ]
}
```

------

一般的なシナリオのポリシー例については、「[IAM アイデンティティベースのポリシーの例](access_policies_examples.md)」を参照してください。

## 最小特権アクセス許可を適用する
<a name="grant-least-priv"></a>

IAM ポリシーを作成する場合、*最小限のアクセス権*を付与するという標準的なセキュリティアドバイスに従うか、タスクの実行に必要なアクセス許可のみ付与します。ユーザー (およびロール) が何をする必要があるのかを決定してから、それらのタスクのみの実行を許可するポリシーを作成します。

最小限の許可からスタートし、必要に応じて追加の許可を付与します。この方法は、寛容過ぎる許可から始めて、後から厳しくしようとするよりも安全です。

最小限のアクセス許可の代わりに、[AWS 管理対象ポリシー](access_policies_managed-vs-inline.md#aws-managed-policies)またはワイルドカード `*` アクセス許可を持つポリシーを使用して、ポリシーの使用を開始できます。プリンシパルにジョブに必要な以上のアクセス許可を付与すると、セキュリティ上のリスクを考慮してください。これらのプリンシパルをモニタリングして、使用しているアクセス許可を確認します。次に、最小限の特権ポリシーを記述します。

IAM には、付与するアクセス許可を絞り込むのに役立つオプションがいくつか用意されています。
+ **アクセスレベルのグループ化** – ポリシーが付与するアクセスレベルを把握できます。[ポリシーアクション](reference_policies_elements_action.md)は、`List`、`Read`、`Write`、`Permissions management`、または `Tagging` として分類されています。たとえば、`List` や `Read` アクセスレベルからアクションを選択し、ユーザーに読み取り専用のアクセスレベルを付与することができます。アクセスレベルの権限を理解するためにポリシーの概要を使用するには「[ポリシー概要のアクセスレベル](access_policies_understand-policy-summary-access-level-summaries.md)」をご覧ください。
+ **ポリシーの検証**— JSON ポリシーを作成および編集するときに、IAM Access Analyzer を使用してポリシーの検証を実行できます。既存のすべてのポリシーを確認および検証することをお勧めします。IAM Access Analyzer では、ポリシーを検証するために 100 を超えるポリシーチェックが提供されます。ポリシー内のステートメントで、過度に許容されるアクセスを許可すると、セキュリティ警告が生成されます。最小限の特権の付与に向けて作業するときに、セキュリティ警告によって提供される実用的な推奨事項を使用できます。IAM Access Analyzer で提供されるポリシーチェックの詳細については、「[IAM Access Analyzer ポリシーの検証](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)」を参照してください。。
+ **アクセスアクティビティに基づくポリシーの生成**— 付与するアクセス権限を調整するために、IAM エンティティ (ユーザーまたはロール) のアクセスアクティビティに基づく IAM ポリシーを生成できます。IAM Access Analyzer は AWS CloudTrail ログを確認し、指定した日付範囲内のロールが使用したアクセス許可を含むポリシーテンプレートを生成します。テンプレートを使用して、きめ細かなアクセス権限で管理ポリシーを作成し、それを IAM エンティティにアタッチできます。これにより、特定のユースケースでロールが AWS リソースとインタラクションするために必要なアクセス権限のみを付与します。詳細については、「[IAM Access Analyzer ポリシーの生成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-generation.html)」を参照してください。
+ **最終アクセス情報を使用** — 最低限のアクセス許可で役立つもう 1 つの機能は、*最終アクセス情報*です。IAM ユーザー、グループ、ロール、ポリシーのこの情報は、IAM コンソールの詳細ページの [**アクセスアドバイザー**] に表示されます。最終アクセス情報には、Amazon EC2、IAM、Lambda、Amazon S3 など、一部のサービスで最後にアクセスされたアクションに関する情報も含まれます。AWS Organizations 管理アカウントの認証情報を使用してサインインすると、IAM コンソールの [**AWS Organizations**] セクションでサービスの最終アクセス情報を表示できます。AWS CLI または AWS API を使用して、IAM または AWS Organizations のエンティティまたはポリシーの最終アクセス時間情報のレポートを取得するために使用することもできます。この情報を使用して不要なアクセス許可を識別し、最小権限の原則により良く準拠するよう IAM または AWS Organizations ポリシーを改善することができます。詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。
+ **AWS CloudTrail のアカウントイベントを確認** - アクセス許可をさらに削減するには、AWS CloudTrail の**イベント履歴**でアカウントのイベントを表示できます。CloudTrail のイベントログには、ポリシーのアクセス許可を減らすために使用できる詳細なイベント情報が含まれます。ログには、IAM エンティティが必要とするアクションとリソースのみが含まれます。詳細については、*AWS CloudTrail ユーザーガイド*の [CloudTrail イベント履歴でのイベントの表示](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events-console.html)を参照してください。



詳細については、以下の各サービスのポリシートピックを参照してください。サービス固有のリソースに対するポリシーの書き方の例を挙げています。
+ 「*Amazon DynamoDB デベロッパーガイド*」の「[DynamoDB のリソースベースのポリシーの使用](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-resource-based.html)」
+ 「*Amazon Simple Storage Service ユーザーガイド*」の「[Amazon S3 のバケットポリシー](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html)」
+ 『*Amazon Simple Storage Service ユーザーガイド*』の「[アクセスコントロールリスト (ACL) の概要](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html)」

# 管理ポリシーとインラインポリシー
<a name="access_policies_managed-vs-inline"></a>

IAM ID のアクセス許可を設定する必要がある場合は、AWS 管理ポリシー、カスタマー管理ポリシー、またはインラインポリシーを使用するかどうかを決定します。以下のトピックでは、各種のアイデンティティベースのポリシーとそれぞれの用途について詳しく説明します。

次の表は、これらのポリシーの概要を示しています。


| ポリシータイプ | 説明 | 誰がポリシーを管理しますか? | アクセス許可を変更しますか? | ポリシーに適用されたプリンシパルの数 | 
| --- | --- | --- | --- | --- | 
| [AWS マネージドポリシー](#aws-managed-policies) | AWS によって作成および管理されるスタンドアロンポリシー。 | AWS | 不可 | 多数 | 
| [カスタマー管理ポリシー](#customer-managed-policies) | 特定のユースケースのために作成したポリシーは、何度でも変更や更新が可能です。 | You | はい | 多数 | 
| [インラインポリシー](#inline-policies) | ポリシーとアイデンティティの間に一対一リレーションシップを維持する、単一の IAM アイデンティティ (ユーザー、グループ、またはロール) 用に作成されたポリシー。 | You | はい | 1 | 

**Topics**
+ [AWS マネージドポリシー](#aws-managed-policies)
+ [カスタマー管理ポリシー](#customer-managed-policies)
+ [インラインポリシー](#inline-policies)
+ [管理ポリシーとインラインポリシーのいずれかを選択する](access_policies-choosing-managed-or-inline.md)
+ [インラインポリシーを管理ポリシーに変換する](access_policies-convert-inline-to-managed.md)
+ [非推奨の AWS 管理ポリシー](access_policies_managed-deprecated.md)

## AWS マネージドポリシー
<a name="aws-managed-policies"></a>

*AWS 管理ポリシー*は、AWS が作成および管理するスタンドアロンポリシーです。スタンドアロンポリシーとは、ポリシー名が含まれている独自の Amazon リソースネーム (ARN) の付いたポリシーです。たとえば、`arn:aws:iam::aws:policy/IAMReadOnlyAccess` は AWS 管理ポリシーです。ARN の詳細については、[IAM ARN](reference_identifiers.md#identifiers-arns)を参照してください。AWS のサービス に対する AWS マネージドポリシーのリストについては、「[AWS マネージドポリシー](https://docs.aws.amazon.com//aws-managed-policy/latest/reference/policy-list.html)」を参照してください。

AWS 管理ポリシーは、ユーザー、IAM グループおよびロールに適切な権限を割り当てるのに便利です。ポリシーを自分で作成するよりも簡単で、多くの一般的なユースケースに対応したアクセス許可が含まれています。

AWS 管理ポリシーで定義されているアクセス許可は変更できません。AWS は、AWS 管理ポリシーで定義されているアクセス許可を不定期に更新します。AWS によるこの更新は、ポリシーがアタッチされているすべてのプリンシパルエンティティ (IAM ユーザー、IAM グループ、および IAM ロール) に影響を与えます。AWS は、新しい AWS サービスが開始されたときや既存のサービスで新しい API コールが利用可能になったときに、AWS 管理ポリシーを更新する可能性が最も高くなります。例えば、**ReadOnlyAccess** という AWS マネージドポリシーは、すべての AWS のサービスとリソースへの読み取り専用アクセスを許可します。AWS は新しいサービスを開始すると、AWS により **ReadOnlyAccess** ポリシーを更新して、新しいサービスに対する読み取り専用アクセス許可を追加します。更新されたアクセス権限は、ポリシーがアタッチされているすべてのプリンシパルエンティティに適用されます。

フルアクセス AWS マネージドポリシー: フルアクセスをサービスに付与して、サービス管理者のアクセス許可を定義します。以下に例を示します。
+ [AmazonDynamoDBFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonDynamoDBFullAccess.html)
+ [IAMFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/IAMFullAccess.html)

AWS パワーユーザーマネージドポリシー: AWS のサービスとリソースへのフルアクセスを提供しますが、ユーザーと IAM グループの管理は許可しません。以下に例を示します。
+ [AWSCodeCommitPowerUser](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSCodeCommitPowerUser.html) 
+ [AWSKeyManagementServicePowerUser](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSKeyManagementServicePowerUser.html)

部分的なアクセス AWS マネージドポリシー: [アクセス許可管理](access_policies_understand-policy-summary-access-level-summaries.md#access_policies_access-level)アクセスレベルの許可を与えることなく、AWS のサービスに特定のアクセスレベルを付与します。以下に例を示します。
+ [AmazonMobileAnalyticsWriteOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonMobileAnalyticsWriteOnlyAccess.html)
+ [AmazonEC2ReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEC2ReadOnlyAccess.html) 

ジョブ機能 AWS マネージドポリシー: IT 業界でよく使用されているジョブ機能と密接に連携し、簡単な操作でそうしたジョブ機能に対するアクセス許可を付与できます。ジョブ機能ポリシーを使用する重要な利点としては、新しいサービスとして AWS によってこれらの保守や更新が行われ、API オペレーションが導入されることが 1 つ挙げられます。たとえば、[AdministratorAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AdministratorAccess.html) ジョブ関数は、AWS の各サービスおよびリソースへのフルアクセスを許可し、アクセス許可の委任が可能です。このポリシーは、アカウント管理者のみに使用することをお勧めします。IAM と AWS Organizations への制限されたアクセスを除き、すべてのサービスへのフルアクセスを必要とするパワーユーザーの場合は、[PowerUserAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/PowerUserAccess.html) ジョブ関数を使用します。ジョブ機能ポリシーのリストと説明については、[AWSジョブ機能の 管理ポリシー](access_policies_job-functions.md) を参照してください。

次の図は AWS 管理ポリシーを示しています。図には、**AdministratorAccess**、**PowerUserAccess**、**AWS CloudTrailReadOnlyAccess** の 3 つの AWS 管理ポリシーが示されています。1 つの AWS 管理ポリシーを複数の AWS アカウント のプリンシパルエンティティに、また、1 つの AWS アカウント の複数のプリンシパルエンティティにアタッチできることに注意してください。

![\[AWS 管理ポリシーの図\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-aws-managed-policies.diagram.png)


## カスタマー管理ポリシー
<a name="customer-managed-policies"></a>

プリンシパルエンティティ ((IAM ユーザー、IAM グループ、および IAM ロール) にアタッチできる単独のポリシーを独自の AWS アカウント に作成することができます。これらの*カスタマー管理ポリシーは*、特定のユースケースに合わせて作成し、何度でも変更および更新が可能です。AWS 管理ポリシーのように、プリンシパルエンティティにアタッチすると、ポリシーで定義されたアクセス権限がエンティティに付与されます。ポリシーに含まれるアクセス許可が更新されると、その変更はポリシーがアタッチされているすべてのプリンシパルエンティティに適用されます。

お客様が管理するポリシーを作成する優れた方法は、既存の AWS 管理ポリシーをコピーして開始することです。この方法で、最初の段階でポリシーが正しいことがわかっていれば、ご使用の環境に合わせて必要なカスタマイズを行うことができます。

次の図は、カスタマー管理ポリシーを示しています。各ポリシーは、IAM 内の独自の [Amazon リソースネーム (ARN)](reference_identifiers.md#identifiers-arns) (ポリシー名を含む) を持つエンティティです。同じポリシーを複数のプリンシパルエンティティにアタッチできること (たとえば、同じ **DynamoDB-books-app** ポリシーが異なる 2 つの IAM ロールにアタッチされていること) に注目してください。

詳細については、[カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](access_policies_create.md)を参照してください。

![\[カスタマー管理ポリシーの図\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-customer-managed-policies.diagram.png)


## インラインポリシー
<a name="inline-policies"></a>

インラインポリシーは、1 つの IAM アイデンティティ (ユーザー、ユーザーグループ、ロール) に埋め込まれたポリシーです。インラインポリシーは、ポリシーとIDの間の厳密な1対1の関係を維持します。これらは、ID を削除すると削除されます。ID の作成時、またはそれ以降で、ポリシーを作成して ID に埋め込むことができます。ポリシーが複数のエンティティに適用される可能性がある場合は、管理ポリシーを使用することをお勧めします。

次の図はインラインポリシーを示しています。各ポリシーは本質的にユーザー、グループ、またはロールの一部です。2 つのロールが同じポリシー (**DynamoDB-books-app** ポリシー) を含んでいますが、1 つのポリシーを共有していないことに注意してください。各ロールには、独自のポリシーのコピーがあります。

![\[インラインポリシーの図\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-inline-policies.diagram.png)


# 管理ポリシーとインラインポリシーのいずれかを選択する
<a name="access_policies-choosing-managed-or-inline"></a>

管理ポリシーとインラインポリシーのどちらを選ぶかは、ユースケースを考慮して決定します。通常、インラインポリシーではなく、管理ポリシーを使用することをお勧めします。

**注記**  
管理ポリシーとインラインポリシーの両方を併用して、プリンシパルエンティティに共通および固有のアクセス許可を定義することができます。

管理ポリシーは次の機能を備えています。

**再利用可能性**  
1 つの管理ポリシーを複数のプリンシパルエンティティ (ユーザー、グループ、ロール) にアタッチすることができます。AWS アカウント にとって有用なアクセス許可を定義するポリシーのライブラリを作成し、これらのポリシーを必要に応じてプリンシパルエンティティにアタッチできます。

**一元化された変更管理**  
管理ポリシーを変更すると、変更はポリシーがアタッチされているすべてのプリンシパルエンティティに適用されます。例えば、新しい AWS API のアクセス許可を追加する場合、カスタマー管理ポリシーを更新するか、AWS 管理ポリシーを関連付けてアクセス許可を追加します。AWS 管理ポリシーを使用している場合は、AWS がポリシーを更新します。管理ポリシーが更新されると、変更はその管理ポリシーがアタッチされているすべてのプリンシパルエンティティに適用されます。一方、インラインポリシーを変更するには、そのインラインポリシーを含む各アイデンティティを個別に編集する必要があります。たとえば、グループとロールの両方に同じインラインポリシーがある場合、両方のプリンシパルエンティティを個別に編集して、ポリシーを変更する必要があります。

**バージョニングとロールバック**  
カスタマー管理ポリシーを変更しても、変更されたポリシーによって既存のポリシーが上書きされることはありません。代わりに、IAM は管理ポリシーの新しいバージョンを作成します。IAM は、最大 5 つのバージョンのカスタマー管理ポリシーを保存します。ポリシーバージョンを使用し、必要に応じてポリシーを以前のバージョンに戻すことができます。  
ポリシーのバージョンは、`Version` ポリシーの要素とは異なります。`Version` ポリシー要素は、ポリシー内で使用され、ポリシー言語のバージョンを定義します。ポリシーのバージョンの詳細については、「[IAM ポリシーのバージョニング](access_policies_managed-versioning.md)」を参照してください。`Version` ポリシー要素の詳細については、「[IAM JSON ポリシー要素Version](reference_policies_elements_version.md)」を参照してください。

**アクセス許可管理の委任**  
ポリシーで定義されたアクセス許可を制御しながら、AWS アカウント のユーザーにポリシーのアタッチとデタッチを許可できます。これを行うには、一部のユーザーを完全な権限を持つ管理者 (ポリシーの作成、更新、削除が可能な管理者) として指定します。次に、権限が制限された管理者として他のユーザーを指定できます。他のプリンシパルエンティティにポリシーをアタッチできる限定管理者ですが、アタッチを許可したポリシーに限ります。  
アクセス許可の委任の詳細については、「[ポリシーへのアクセスの制御](access_controlling.md#access_controlling-policies)」を参照してください。

**より大きいポリシー文字制限**  
管理ポリシーの最大文字サイズ制限は、グループインラインポリシーの文字制限よりも大きいです。インラインポリシーの文字サイズの上限に達した場合は、さらに IAM グループを作成し、管理ポリシーをそのグループにアタッチできます。  
クォータと制限の詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

**AWS 管理ポリシーの自動更新**  
AWS は、AWS 管理ポリシーを維持し、新しい AWS サービスのアクセス許可を追加するなど、必要に応じて更新することで、お客様が変更することなく、サービスを提供することができます。更新は、AWS 管理ポリシーをアタッチしているプリンシパルエンティティに自動的に適用されます。

## 管理ポリシーで開始する
<a name="access_policies-get-started-managed-policy"></a>

[最小権限を付与する](access_policies.md#grant-least-priv)ポリシーを使用するか、タスクの実行に必要なアクセス許可のみを付与することをお勧めします。最小特権を付与する最も安全な方法は、チームに必要な権限のみを使用してカスタマー管理ポリシーを作成することです。必要に応じて、チームがより多くの権限を要求できるようにプロセスを作成する必要があります。チームに必要な権限のみを提供する [IAM カスタマーマネージドポリシーを作成する](access_policies_create-console.md)には時間と専門知識が必要です。

IAM ID (ユーザー、ユーザーのグループ、およびロール) にアクセス許可を追加するために、[AWS マネージドポリシー](access_policies_managed-vs-inline.md#aws-managed-policies) を使用できます。AWS 管理ポリシーは、最小特権のアクセス許可を付与しません。プリンシパルにジョブに必要な以上のアクセス許可を付与すると、セキュリティ上のリスクを考慮する必要があります。

ジョブ機能を含む AWS 管理ポリシーを任意の IAM ID にアタッチできます。詳細については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。

最小特権のアクセス許可に切り替えるには、AWS Identity and Access Management and Access Analyzer を実行して、AWS マネージドポリシーでプリンシパルをモニタリングします。どのアクセス許可を使用しているかを学習したら、チームに必要なアクセス許可のみを持つカスタマー管理ポリシーを作成または生成することができます。これは安全性が低くなりますが、チームが AWS をどのように使用しているかを学習するにつれて柔軟性が高まります。詳細については、「[IAM Access Analyzer ポリシーの生成](access-analyzer-policy-generation.md)」を参照してください。

AWS 管理ポリシーは、多くの一般的ユースケースでアクセス許可を提供できるように設計されています。特定のジョブ機能用に設計された AWS 管理ポリシーの詳細については、[AWSジョブ機能の 管理ポリシー](access_policies_job-functions.md) を参照してください。

AWS 管理ポリシーの一覧については、「[AWS 管理ポリシーリファレンスガイド](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/about-managed-policy-reference.html)」を参照してください。

## インラインポリシーの使用
<a name="policies-using-inline-policies"></a>

インラインポリシーは、ポリシーとそれが適用されている ID との厳密な 1 対 1 の関係を維持する必要がある場合に便利です。たとえば、ポリシー内のアクセス許可が意図したアイデンティティ以外のアイデンティティに間違って割り当てられないようにする必要がある場合などです。インラインポリシーを使用すると、ポリシーのアクセス許可が間違ったアイデンティティにアタッチされることはありません。また、AWS マネジメントコンソール を使用してアイデンティティを削除すると、そのアイデンティティに組み込まれたポリシーもプリンシパルエンティティの一部であるため、同様に削除されます。

# インラインポリシーを管理ポリシーに変換する
<a name="access_policies-convert-inline-to-managed"></a>

アカウントにインラインポリシーがある場合は、管理ポリシーに変換することができます。これを行うには、ポリシーを新しい管理ポリシーにコピーします。次に、インラインポリシーを持つ ID に新しいポリシーをアタッチします。次に、インラインポリシーを削除します。

## インラインポリシーを管理ポリシーに変換する
<a name="access_policies-convert-inline-to-managed-procedure"></a>

**インラインポリシーを管理ポリシーに変換するには**

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

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

1. リストで、削除するポリシーを持つユーザーグループ、ユーザー、またはロールの名前を選択します。

1. [**アクセス許可**] タブを選択します。

1. IAM グループで、削除するインラインポリシーの名前を選択します。ユーザーおよびロールで、[**Show *n* more**] を選択し、 必要であれば、削除するインラインポリシーを展開します。

1. [**コピー**] を選択し、ポリシーの JSON ポリシードキュメントをコピーします。

1. ナビゲーションペインで、**ポリシー** を選択してください。

1. [**ポリシーの作成**] を選択し、[**JSON**] オプションを選択します。

1. 既存のテキストを JSON ポリシーテキストに置き換え、[**次へ**] を選択します。

1. ポリシーの名前と説明 (省略可能) を入力し、**[ポリシーを作成]** を選択します。

1. ナビゲーションペインで、[**ユーザーグループ**]、[**ユーザー**]、または [**ロール**] を選択し、削除するポリシーを含むグループ、ユーザー、またはロールの名前を再度選択します。

1. [**アクセス許可**] タブを選択してから、[**アクセス許可を追加**] を選択します。

1. IAM グループで、新しいポリシーの名前の横にあるチェックボックスをオンにし、**[アクセス許可の追加]** に続いて **[ポリシーのアタッチ]** を選択します。ユーザーまたはロールで、[**アクセス許可の追加**] を選択します。次のページで、**[既存のポリシーを直接アタッチ]** を選択し、新しいポリシーの名前の横にあるチェックボックスをオンにしたら、**[次へ]**、**[アクセス許可を追加]** の順に選択します。

   ユーザーグループ、ユーザー、またはロールの [**概要**] ページに戻ります。

1. 削除するインラインポリシーの横にあるチェックボックスをオンにして、**[削除]** を選択します。

# 非推奨の AWS 管理ポリシー
<a name="access_policies_managed-deprecated"></a>

アクセス許可の割り当てを簡素化するために、AWS は[管理ポリシー](access_policies_managed-vs-inline.md)を提供します。このポリシーは、IAM ユーザー、グループ、およびロールへのアタッチが可能な状態の事前定義されたポリシーです。

新しいサービスの導入時など、AWS で既存のポリシーに新しいアクセス許可を追加する必要が生じる場合があります。既存のポリシーに新しいアクセス権限を追加しても、機能や働きを中断または削除されることはありません。

ただし、既存のポリシーに必要な変更を適用した場合にそれらが顧客に影響するときに、AWS で*新しい*ポリシーを作成してもかまいません。たとえば、既存のポリシーからアクセス許可を削除すると、そのアクセス許可に依存していたすべての IAM エンティティまたはアプリケーションのアクセス許可が破棄されて、重大なオペレーションを中断する可能性があります。

したがって、このような変更が必要な場合、AWS では完全に新しいポリシーを作成して必要な変更を適用し、顧客が使用できるようにします。古いポリシーは、*非推奨*としてマークされます。マネージドポリシーの詳細については、「AWS マネージドポリシーリファレンスガイド」の「[非推奨の AWS 管理ポリシー](https://docs.aws.amazon.com//aws-managed-policy/latest/reference/about-managed-policy-reference.html#deprecated-managed-policies)」を参照してください。

# データ境界を使用してアクセス許可のガードレールを確立する
<a name="access_policies_data-perimeters"></a>

データ境界ガードレールは、さまざまな AWS アカウントやリソースでデータを保護するための、常時オンの境界として機能します。データ境界は、IAM セキュリティのベストプラクティスに従い、[複数のアカウントにまたがるアクセス許可ガードレールを確立します](best-practices.md#bp-permissions-guardrails)。このような組織全体のアクセス許可ガードレールは、既存のきめ細かいアクセスコントロールに取って代わるものではありません。その代わり、ユーザー、ロール、リソースが定義された一連のセキュリティ標準に準拠するようにすることで、セキュリティ戦略の改善に役立つ、**粗粒度のアクセスコントロール**の役割を果たします。

データ境界は、信頼できる ID だけが想定されるネットワークから信頼できるリソースにアクセスできるようにするための、AWS 環境内のアクセス許可ガードレールのセットです。
+ 信頼できる ID: AWS アカウントのプリンシパル (IAM ロールまたはユーザー)、およびユーザーに代わって動作する AWS サービス。
+ 信頼できるリソース: AWS アカウントまたはユーザーに代わって動作する AWS サービスが所有するリソース。
+ 想定されるネットワーク: オンプレミスデータセンターおよび仮想プライベートクラウド (VPC)、またはユーザーに代わって動作する AWS サービスのネットワーク。

**注記**  
場合によっては、信頼できるビジネスパートナーによるアクセスも含めるために、データ境界の拡張が必要になることがあります。会社および AWS のサービス の使用に固有の信頼できる ID、信頼できるリソース、想定されるネットワークの定義を作成する際には、想定されるすべてのデータアクセスパターンを考慮する必要があります。

データ境界コントロールは、情報セキュリティおよびリスク管理プログラムにおける他のセキュリティコントロールと同様に扱う必要があります。つまり、脅威分析を行ってクラウド環境内の潜在的なリスクを特定し、独自のリスク許容基準に基づいて、適切なデータ境界コントロールを選択して実装する必要があります。データ境界を実装するための反復的なリスクベースのアプローチをより効果的に理解するには、データ境界コントロールによって対処されるセキュリティリスクおよび脅威ベクトルと、セキュリティの優先事項を理解する必要があります。

## データ境界コントロール
<a name="access_policies_data-perimeters-controls"></a>

データ境界の粗粒度のコントロールでは、[ポリシータイプ](access_policies.md#access_policy-types)および[条件キー](reference_policies_condition-keys.md)のさまざまな組み合わせを実装することで、3 つのデータ境界で 6 つの異なるセキュリティ目標を達成できます。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access_policies_data-perimeters.html)

データ境界は、意図しないアクセスパターンを防ぐためにデータの周囲に強固な境界を作ることと考えることができます。データ境界は広範囲にわたる意図しないアクセスを防ぐことができますが、それでもきめ細かなアクセスコントロールに関する決定を行う必要があります。データ境界を設定しても、[最小特権](best-practices.md#grant-least-privilege)の実現に向けた取り組みの一環として [IAM Access Analyzer](what-is-access-analyzer.md) などのツールを使用してアクセス許可を継続的に微調整する必要性が軽減されることはありません。

現在 RCP によってサポートされていないリソースに対してデータ境界コントロールを強制適用するには、リソースに直接アタッチされているリソースベースのポリシーを使用できます。RCP とリソースベースのポリシーをサポートするサービスのリストについては、「[Resource control policies (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html)」および「[IAM と連携する AWS のサービス](reference_aws-services-that-work-with-iam.md)」を参照してください。

ネットワーク境界コントロールを適用するために、アクセスを制限する対象のすべてのサービスが現在サポートされている場合に限り、`aws:VpceOrgID`、`aws:VpceOrgPaths`、および `aws:VpceAccount` を使用することをお勧めします。サポートされていないサービスでこれらの条件キーを使用すると、意図しない認可結果につながる可能性があります。キーをサポートするサービスのリストについては、「[AWS グローバル条件コンテキストキー](reference_policies_condition-keys.md)」を参照してください。より広い範囲のサービスにコントロールを適用する必要がある場合は、代わりに `aws:SourceVpc` と `aws:SourceVpce` を使用することを検討してください。

## ID 境界
<a name="access_policies_data-perimeters-identity"></a>

ID 境界は、信頼できる ID だけがリソースにアクセスでき、信頼できる ID だけがネットワークから許可されるようにするための、粗粒度の予防的アクセスコントロールのセットです。信頼できる ID には、通常は AWS アカウントのプリンシパル (ロールまたはユーザー)、およびユーザーに代わって動作する AWS サービスが含まれます。それ以外のすべての ID は信頼できないと見なされ、明示的な例外が付与されない限り ID 境界によって阻止されます。

以下のグローバル条件キーは、信頼できる ID の定義に基づいて ID 境界コントロールを適用するのに役立ちます。これらのキーをリソースコントロールポリシーで使用してリソースへのアクセスを制限したり、[VPC エンドポイントポリシー](https://docs.aws.amazon.com//vpc/latest/privatelink/vpc-endpoints-access.html)でネットワークへのアクセスを制限したりします。

### ユーザーが所有する ID
<a name="data-perimeters-identity-owned-by-you"></a>

以下の条件キーを使用して、AWS アカウント で作成および管理する IAM プリンシパルを定義できます。
+ [aws:PrincipalOrgID](reference_policies_condition-keys.md#condition-keys-principalorgid) — この条件キーを使用して、リクエストを行う IAM プリンシパルが AWS Organizations の指定された組織に属していることを確認できます。
+ [aws:PrincipalOrgPaths](reference_policies_condition-keys.md#condition-keys-principalorgpaths) – この条件キーを使用し、リクエストを行う IAM ユーザー、IAM ロール、AWS STS フェデレーションユーザーのプリンシパル、SAML フェデレーティッドプリンシパル、OICD フェデレーティッドプリンシパル、AWS アカウントのルートユーザー が指定されたの AWS Organizations 組織単位 (OU) に属していることを確認できます。
+ [aws:PrincipalAccount](reference_policies_condition-keys.md#condition-keys-principalaccount) — この条件キーを使用して、ポリシーで指定したプリンシパルアカウントだけがリソースにアクセスできることを確認できます。

### ユーザーに代わって動作する AWS サービスの ID
<a name="data-perimeters-identity-owned-by-service"></a>

以下の条件キーを使用して、AWS サービスがユーザーに代わって動作する場合に独自の ID を使用してリソースにアクセスすることを許可できます。
+ [aws:PrincipalIsAWSService](reference_policies_condition-keys.md#condition-keys-principalisawsservice) および [aws:SourceOrgID](reference_policies_condition-keys.md#condition-keys-sourceorgid) (または [aws:SourceOrgPaths](reference_policies_condition-keys.md#condition-keys-sourceorgpaths) および [aws:SourceAccount](reference_policies_condition-keys.md#condition-keys-sourceaccount)) – これらの条件キーを使用すると、[AWS のサービス プリンシパル](reference_policies_elements_principal.md#principal-services)がリソースにアクセスするときに、指定された組織、組織単位、または AWS Organizations のアカウントのリソースに代わってのみアクセスすることを確認できます。

詳細については、「[Establishing a data perimeter on AWS: Allow only trusted identities to access company data](https://aws.amazon.com/blogs/security/establishing-a-data-perimeter-on-aws-allow-only-trusted-identities-to-access-company-data/)」を参照してください。

## リソース境界
<a name="access_policies_data-perimeters-resource"></a>

リソース境界は、ID が信頼できるリソースにのみアクセスし、信頼できるリソースにのみネットワークからアクセスできるようにするための、粗粒度の予防的アクセスコントロールのセットです。信頼できるリソースには、通常は AWS アカウントまたはユーザーに代わって動作する AWS サービスが所有するリソースが含まれます。

以下のグローバル条件キーは、信頼できるリソースの定義に基づいてリソース境界コントロールを適用するのに役立ちます。[サービスコントロールポリシー](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)でこれらのキーを使用して、ID がアクセスできるリソースを制限したり、[VPC エンドポイントポリシー](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)でネットワークからアクセスできるリソースを制限したりします。

### 所有するリソース
<a name="data-perimeters-resource-owned-by-you"></a>

以下の条件キーを使用して、AWS アカウント で作成および管理する AWS リソースを定義できます。
+ [aws:ResourceOrgID](reference_policies_condition-keys.md#condition-keys-resourceorgid) — この条件キーを使用して、アクセスされているリソースが、AWS Organizations で指定された組織に属していることを確認できます。
+ [aws:ResourceOrgPaths](reference_policies_condition-keys.md#condition-keys-resourceorgpaths) — この条件キーを使用して、アクセスされているリソースが、AWS Organizations で指定された組織単位 (OU) に属していることを確認できます。
+ [aws:ResourceAccount](reference_policies_condition-keys.md#condition-keys-resourceaccount) – この条件キーを使用して、アクセスされているリソースが、指定された AWS アカウント に属していることを確認できます。

### ユーザーに代わって動作する AWS サービスのリソース
<a name="data-perimeters-resource-owned-by-service"></a>

場合によっては、AWS 所有リソース (組織に属さず、プリンシパルまたはユーザーに代わって動作する AWS サービスがアクセスするリソース) へのアクセスの許可が必要になることがあります。これらのシナリオの詳細については、「[Establishing a data perimeter on AWS: Allow only trusted resources from my organization](https://aws.amazon.com/blogs/security/establishing-a-data-perimeter-on-aws-allow-only-trusted-resources-from-my-organization/)」を参照してください。

## ネットワーク境界
<a name="access_policies_data-perimeters-network"></a>

ネットワーク境界とは、ID が想定されるネットワークからのリソースにのみアクセスし、リソースには想定されるネットワークからのみアクセスできるようにするための、粗粒度の予防的アクセスコントロールのセットです。想定されるネットワークには、通常はオンプレミスデータセンター、仮想プライベートクラウド (VPC)、およびユーザーに代わって動作する AWS サービスのネットワークが含まれます。

以下のグローバル条件キーは、想定されるネットワークの定義に基づいてネットワーク境界コントロールを適用するのに役立ちます。これらのキーを[サービスコントロールポリシー](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)で使用して ID の通信元となるネットワークを制限したり、[リソースコントロールポリシー (RCP)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) でリソースアクセスを想定されるネットワークに制限したりします。

### ユーザーが所有するネットワーク
<a name="data-perimeters-network-owned-by-you"></a>

次の条件キーを使用して、従業員やアプリケーションがリソースへのアクセスに使用する 企業 IP CIDR 範囲や VPC などのネットワークを定義できます。
+ [aws:SourceIp](reference_policies_condition-keys.md#condition-keys-sourceip) — この条件キーを使用して、リクエスト元の IP アドレスが指定の IP 範囲内にあることを確認できます。
+ [aws:SourceVpc](reference_policies_condition-keys.md#condition-keys-sourcevpc) — この条件キーを使用して、リクエストが通過する VPC エンドポイントが指定の VPC に属していることを確認できます。
+ [aws:SourceVpce](reference_policies_condition-keys.md#condition-keys-sourcevpce) — この条件キーを使用して、リクエストが指定された VPC エンドポイントを通過することを確認できます。
+ [aws:VpceAccount](reference_policies_condition-keys.md#condition-keys-vpceaccount) – この条件キーを使用して、リクエストが、指定された AWS アカウントが所有する VPC エンドポイントを通過することを確認できます。
+ [aws:VpceOrgPaths](reference_policies_condition-keys.md#condition-keys-vpceorgpaths) – この条件キーを使用して、リクエストを行う IAM プリンシパルが AWS Organizations の指定された組織単位 (OU) に属していることを確認できます。
+ [aws:VpceOrgID](reference_policies_condition-keys.md#condition-keys-vpceorgid) – この条件キーを使用して、リクエストが、AWS Organizations の指定された組織のアカウントが所有する VPC エンドポイントを通過することを確認できます。

`aws:VpceAccount`、`aws:VpceOrgPaths`、および `aws:VpceOrgID` は、新しいエンドポイントを作成するときにポリシーを更新することなく、VPC エンドポイントの使用状況に合わせて自動的にスケールするネットワーク境界コントロールを実装する場合に特に役立ちます。これらのキーをサポートする AWS のサービス のリストについては、「[AWS グローバル条件コンテキストキー](reference_policies_condition-keys.md)」を参照してください。

### ユーザーに代わって動作する AWS サービスのネットワーク
<a name="data-perimeters-network-owned-by-service"></a>

以下の条件キーを使用して、AWS サービスがユーザーに代わって動作する場合にネットワークからリソースにアクセスすることを許可できます。
+ [aws:ViaAWSService](reference_policies_condition-keys.md#condition-keys-viaawsservice) — この条件キーを使用すると、AWS のサービスが[転送アクセスセッション](access_forward_access_sessions.md) (FAS) を使用するプリンシパルに代わってリクエストを送信できることを確認できます。
+ [aws:PrincipalIsAWSService](reference_policies_condition-keys.md#condition-keys-principalisawsservice) — この条件キーを使用して、AWS のサービスが [AWS サービスプリンシパル](reference_policies_elements_principal.md#principal-services)を使用してリソースにアクセスできることを確認できます。

 ネットワークの外部からリソースにアクセスする AWS のサービスへのアクセスを許可する必要があるシナリオは他にもあります。詳細については、「[Establishing a data perimeter on AWS: Allow access to company data only from expected networks](https://aws.amazon.com/blogs/security/establishing-a-data-perimeter-on-aws-allow-access-to-company-data-only-from-expected-networks/)」を参照してください。

## データ境界について詳しく学ぶためのリソース
<a name="access_policies_data-perimeters-resources"></a>

次のリソースは、AWS 全体のデータ境界について詳しく学ぶのに役立ちます。
+ [Data perimeters on AWS](https://aws.amazon.com/identity/data-perimeters-on-aws/) — データ境界およびその利点と使用例について説明します。
+  [Blog Post Series: Establishing a Data Perimeter on AWS](https://aws.amazon.com/identity/data-perimeters-blog-post-series/) — これらのブログ記事では、セキュリティや実装に関する重要な考慮事項など、データ境界を大規模に確立するための規範的なガイダンスを取り上げています。
+  [Data perimeter policy examples](https://github.com/aws-samples/data-perimeter-policy-examples/tree/ce06665ca8b2f07debee7bed5153c3be0f31c73c) — この GitHub リポジトリには、AWS でデータ境界を実装するのに役立つ、いくつかの一般的なパターンをカバーするポリシー例が含まれています。
+ [Data perimeter helper](https://github.com/aws-samples/data-perimeter-helper/tree/main?tab=readme-ov-file) — このツールは、[AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) ログ内のアクセスアクティビティを分析することで、データ境界コントロールの設計と影響の予測に役立ちます。

# IAM エンティティのアクセス許可境界
<a name="access_policies_boundaries"></a>

AWS は、IAM エンティティ (ユーザーまたはロール) の*アクセス許可の境界*をサポートしています。アクセス許可の境界は、管理ポリシーを使用してアイデンティティベースのポリシーが IAM エンティティに付与できるアクセス許可の上限を設定する高度な機能です。エンティティのアクセス許可の境界により、エンティティは、アイデンティティベースのポリシーとそのアクセス許可の境界の両方で許可されているアクションのみを実行できます。

ポリシーの詳細については、「[ポリシータイプ](access_policies.md#access_policy-types)」を参照してください。

**重要**  
アクセス許可の境界ポリシーがアタッチされている IAM ユーザーまたはロールに対する `Deny` 効果を持つ `NotPrincipal` ポリシー要素を含むリソースベースのポリシーステートメントは使用しないでください。`Deny` 効果のある `NotPrincipal` 要素は、`NotPrincipal` 要素で指定されている値に関係なく、アクセス許可の境界ポリシーがアタッチされている IAM プリンシパルを常に拒否します。これにより、本来であればリソースにアクセスできたはずの IAM ユーザーまたはロールの一部がアクセスを失うことになります。リソースベースのポリシーステートメントを変更して、`NotPrincipal` 要素ではなく [`aws:PrincipalArn`](reference_policies_condition-keys.md#condition-keys-principalarn) コンテキストキーで条件演算子 [`ArnNotEquals`](reference_policies_elements_condition_operators.md#Conditions_ARN) を使用してアクセスを制限することをおすすめします。`NotPrincipal` 要素の詳細については、「[AWS JSON ポリシーの要素: NotPrincipal](reference_policies_elements_notprincipal.md)」を参照してください。

IAM エンティティ (ユーザーまたはロール) の境界を設定するには、AWS 管理ポリシーまたはカスタマー管理ポリシーを使用します。このポリシーでは、ユーザーやロールのアクセス許可の上限を設定します。

たとえば、`Shirley` という名前の IAM ユーザーが Amazon S3、Amazon CloudWatch、および Amazon EC2 のみを管理できるようにする必要があるとします。このルールを適用するには、次のポリシーを使用して `Shirley` ユーザーのアクセス許可の境界を設定できます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:*",
                "cloudwatch:*",
                "ec2:*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

ポリシーを使用してユーザーのアクセス許可の境界を設定する場合、このポリシーではユーザーのアクセス許可は制限しますが、それ自体のアクセス許可は提供しません。この例のポリシーでは、`Shirley` のアクセス許可の上限を Amazon S3、CloudWatch、および Amazon EC2 のすべてのオペレーションに設定します。Shirley は、IAM を含む他のどのサービスでもオペレーションを実行することはできません。実行を許可するアクセス許可ポリシーが適用されている場合でも同様です。たとえば、`Shirley` ユーザーに次のポリシーを追加できます。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": "iam:CreateUser",
    "Resource": "*"
  }
}
```

------

このポリシーでは、IAM のユーザーの作成を許可します。このアクセス許可ポリシーを `Shirley` ユーザーにアタッチすると、Shirley はユーザーを作成しようとしても、オペレーションは失敗します。アクセス許可の境界で `iam:CreateUser` オペレーションが許可されていないため、失敗します。これら 2 つのポリシーを考慮すると、Shirley には AWS でのオペレーションを実行するアクセス許可がありません。Amazon S3 などの他のサービスでのアクションを許可するには、別のアクセス許可ポリシーを追加する必要があります。または、IAM のユーザーの作成を許可するように、アクセス許可の境界を更新します。

## 境界を設定した場合の有効なアクセス許可の評価
<a name="access_policies_boundaries-eval-logic"></a>

IAM エンティティ (ユーザーまたはロール) のアクセス許可の境界では、エンティティに許可されるアクセス許可の上限が設定されます。これにより、ユーザーやロールの有効なアクセス許可が変わる場合があります。エンティティの有効なアクセス許可は、ユーザーやロールに影響するすべてのポリシーによって付与されるアクセス許可です。エンティティのアクセス許可は、アカウント内で、アイデンティティベースのポリシー、リソースベースのポリシー、アクセス許可の境界、AWS Organizations SCP、またはセッションポリシーの影響を受ける場合があります。各種ポリシーの詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。

これらのいずれかのポリシータイプによって、オペレーションへのアクセスが明示的に拒否された場合、そのリクエストは拒否されます。複数のアクセス許可タイプによってエンティティに付与されたアクセス許可はさらに複雑です。AWS でのポリシーの評価の詳細については、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。

**アイデンティティベースのポリシー (境界あり)** – アイデンティティベースのポリシーは、ユーザー、ユーザーのグループ、またはロールにアタッチされているインラインポリシーまたは管理ポリシーです。アイデンティティベースのポリシーはエンティティにアクセス許可を付与し、アクセス許可の境界は、それらのアクセス許可を制限します。有効なアクセス許可は、両方のポリシータイプの共通部分です。これらのポリシーのいずれかを明示的に拒否した場合、その許可は無効になります。

![\[アイデンティティベースのポリシーとアクセス許可の境界の評価\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/permissions_boundary.png)


**リソースベースのポリシー** – リソースベースのポリシーでは、指定されたプリンシパルが、ポリシーがアタッチされているリソースにアクセスする方法を制御します。

*IAM ユーザー用のリソースベースのポリシー*  
同じアカウント内では、IAM ユーザー ARN (AWS STS フェデレーションユーザーのプリンシパルセッションではないもの) へのアクセス許可を付与しているリソースベースのポリシーは、ID ベースのポリシーまたはアクセス許可の境界の暗黙的な拒否によって制限されません。  

![\[リソースベースのポリシー、アクセス許可の境界、およびアイデンティティベースのポリシーの評価\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/EffectivePermissions-rbp-boundary-id.png)


*IAM ロール用のリソースベースのポリシー*  
**IAM ロール**— IAM ロール ARN にアクセス許可を与えるリソースベースのポリシーは、アクセス許可の境界またはセッションポリシーの暗黙的な拒否によって制限されます。  
**IAM ロールセッション** — 同じアカウント内で、IAM ロールセッション ARN にアクセス許可を与えるリソースベースのポリシーは、引き受けたロールセッションに、直接アクセス許可を与えます。セッションに直接付与されるアクセス許可は、ID ベースのポリシー、アクセス許可の境界、またはセッションポリシーの暗黙的な拒否によって制限されません。ロールを引き受けてリクエストを行う場合、リクエストを行うプリンシパルは IAM ロールセッション ARN であり、ロールそれ自体の ARN ではありません。

*AWS STS フェデレーションユーザーのプリンシパルセッション向けリソースベースのポリシー*  
**AWS STS フェデレーションユーザーのプリンシパルセッション** – AWS STS フェデレーションユーザーのプリンシパルセッションは、[`GetFederationToken`](id_credentials_temp_request.md#api_getfederationtoken) を呼び出して作成されるセッションです。フェデレーティッドユーザーがリクエストを行う場合、リクエストを行うプリンシパルはフェデレーティッドユーザー ARN であり、フェデレーションした IAM ユーザーの ARN ではありません。同じアカウント内で、フェデレーティッドユーザー ARN にアクセス許可を与えるリソースベースのポリシーは、セッションに直接アクセス許可を与えます。セッションに直接付与されるアクセス許可は、ID ベースのポリシー、アクセス許可の境界、またはセッションポリシーの暗黙的な拒否によって制限されません。  
ただし、リソースベースのポリシーがフェデレーションした IAM ユーザーの ARN にアクセス許可を与えた場合、セッション中に AWS STS フェデレーションユーザーによって行われたリクエストは、アクセス許可の境界またはセッションポリシーの暗黙的な拒否によって制限されます。

**AWS Organizations SCP** – SCP は全体の AWS アカウント に適用されます。この場合、アカウント内のプリンシパルによって行われるすべてのリクエストのアクセス許可が制限されます。IAM エンティティ (ユーザーまたはロール) は、SCP、アクセス許可の境界、およびアイデンティティベースのポリシーの影響を受けるリクエストを行うことができます。この場合、そのリクエストは、その 3 つすべてのポリシータイプで許可されている場合にのみ許可されます。有効なアクセス許可は、その 3 つすべてのポリシータイプの共通部分です。これらのポリシーのいずれかを明示的に拒否した場合、権限は無効になります。

![\[SCP、アクセス許可の境界、アイデンティティベースのポリシーの評価\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/EffectivePermissions-scp-boundary-id.png)


[自分のアカウントが AWS Organizations の組織のメンバーであるかどうか](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_details.html#orgs_view_account)を確認できます。組織のメンバーは、SCP による影響を受ける可能性があります。AWS CLI コマンドまたは AWS API オペレーションを使用してこのデータを表示するには、AWS Organizations エンティティに対する `organizations:DescribeOrganization` アクションのアクセス許可が必要です。AWS Organizations コンソールでオペレーションを実行するには、追加のアクセス許可が必要です。SCP が特定のリクエストへのアクセスを拒否しているかどうかを確認する、または有効なアクセス権限を変更するには、AWS Organizations 管理者に連絡してください。

**セッションポリシー** - セッションポリシーは、ロールまたはフェデレーションユーザーの一時的なセッションをプログラムで作成する際にパラメータとして渡す高度なポリシーです。セッションのアクセス許可は、セッションの作成に使用する IAM エンティティ (ユーザーまたはロール) と、セッションポリシーから派生します。エンティティのアイデンティティベースのポリシーのアクセス許可は、セッションポリシーとアクセス許可の境界で制限されています。この一連のポリシータイプの有効なアクセス許可は、その 3 つすべてのポリシータイプの共通部分です。これらのポリシーのいずれかを明示的に拒否した場合、権限は無効になります。セッションポリシーの詳細については、「[セッションポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)」を参照してください。

![\[セッションポリシー、アクセス許可の境界、およびアイデンティティベースのポリシーの評価\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/EffectivePermissions-session-boundary-id.png)


## アクセス許可の境界を使用した他のユーザーへの責任の委任
<a name="access_policies_boundaries-delegate"></a>

アクセス許可の境界を使用して、アクセス許可の管理タスク (ユーザーの作成など) をアカウントの IAM ユーザーに委任できます。これにより、アクセス許可の特定の境界内で、ユーザーの代わりに他のユーザーがタスクを実行できます。

例えば、María は X-Company の AWS アカウント の管理者であるとします。彼女は、ユーザーの作成業務を Zhang を委任したいと考えます。しかし、Zhang が以下の社内ルールに従ってユーザーを作成することを確認する必要があります。
+ ユーザーは、IAM を使用して管理ユーザー、グループ、グループロール、またはポリシーを作成できません。
+ ユーザーは、Amazon S3 `logs` バケットへのアクセスを拒否される。また、Amazon EC2 インスタンス `i-1234567890abcdef0` にはアクセスできない。
+ ユーザーは各自の境界ポリシーを削除できない。

これらのルールを適用するために、María は以下のタスクを実行します (各タスクの詳細は後述します)。

1. María は、`XCompanyBoundaries` 管理ポリシーを作成し、これをアカウントのすべての新しいユーザーに対するアクセス許可の境界として使用します。

1. María は、`DelegatedUserBoundary` 管理ポリシーを作成し、これを Zhang のアクセス許可の境界として割り当てます。Maria は、管理者 ユーザーの ARN を書き留め、それをポリシーで使用して、Zhang がアクセスできないようにします。

1. María は、`DelegatedUserPermissions` 管理ポリシーを作成し、これを Zhang のアクセス許可ポリシーとしてアタッチします。

1. María は、Zhang に新しい責任と制限を伝えます。

**タスク 1**: María は、最初に管理ポリシーを作成して、新しいユーザーの境界を定義する必要があります。María は、必要なアクセス許可ポリシーをユーザーに付与することを Zhang に許可しますが、これらのユーザーを制限したいと思います。これを行うには、次のカスタマー管理ポリシーを `XCompanyBoundaries` という名前で作成します。このポリシーは以下の処理を実行します。
+ 複数のサービスへのフルアクセスをユーザーに許可する
+ IAM コンソールでの制限された自己管理アクセスを許可する つまり、ユーザーはコンソールにサインインした後にパスワードを変更できます。初期パスワードを設定することはできません。これを許可するには、`"*LoginProfile"` アクションを `AllowManageOwnPasswordAndAccessKeys` ステートメントに追加します。
+ Amazon S3 ログバケットまたは `i-1234567890abcdef0` Amazon EC2 インスタンスへのユーザーアクセスを拒否します

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ServiceBoundaries",
            "Effect": "Allow",
            "Action": [
                "s3:*",
                "cloudwatch:*",
                "ec2:*",
                "dynamodb:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowIAMConsoleForCredentials",
            "Effect": "Allow",
            "Action": [
                "iam:ListUsers",
                "iam:GetAccountPasswordPolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowManageOwnPasswordAndAccessKeys",
            "Effect": "Allow",
            "Action": [
                "iam:*AccessKey*",
                "iam:ChangePassword",
                "iam:GetUser",
                "iam:*ServiceSpecificCredential*",
                "iam:*SigningCertificate*"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "DenyS3Logs",
            "Effect": "Deny",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::logs",
                "arn:aws:s3:::logs/*"
            ]
        },
        {
            "Sid": "DenyEC2Production",
            "Effect": "Deny",
            "Action": "ec2:*",
            "Resource": "arn:aws:ec2:*:*:instance/i-1234567890abcdef0"
        }
    ]
}
```

------

ステートメントごとに用途は異なります。

1. このポリシーの `ServiceBoundaries` ステートメントでは、指定された AWS のサービスへのフルアクセスを許可します。つまり、これらのサービスにおける新しいユーザーのアクションは、ユーザーにアタッチされているアクセス許可ポリシーによってのみ制限されます。

1. `AllowIAMConsoleForCredentials` ステートメントは、すべての IAM ユーザーを一覧表示するためのアクセス権を付与します。このアクセス権は、AWS マネジメントコンソール で [**ユーザー**] ページに移動するために必要です。また、このアクセス権では、アカウントのパスワード要件を表示することができます。これは、自分のパスワードを変更する場合に必要です。

1. `AllowManageOwnPasswordAndAccessKeys` ステートメントは、自分のパスワードおよびプログラムを使用したアクセスキーのみの管理を許可します。これは、Zhang や別の管理者が IAM へのフルアクセスを許可するアクセス許可ポリシーを新しいユーザーに割り当てる場合に重要です。この場合、そのユーザーが自分や他のユーザーのアクセス許可を変更することができます。このステートメントで、これを防止します。

1. `DenyS3Logs` ステートメントでは、`logs` バケットへのアクセスを明示的に拒否します。

1. `DenyEC2Production` ステートメントでは、`i-1234567890abcdef0` インスタンスへのアクセスを明示的に拒否します。

**タスク 2**: María は、すべての X-Company ユーザーを作成することを Zhang に許可しますが、条件として `XCompanyBoundaries` をアクセス許可の境界とします。そのために、次のカスタマー管理ポリシーを `DelegatedUserBoundary` という名前で作成します。このポリシーでは、Zhang に許可されるアクセス許可の上限を定義します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CreateOrChangeOnlyWithBoundary",
            "Effect": "Allow",
            "Action": [
                "iam:AttachUserPolicy",
                "iam:CreateUser",
                "iam:DeleteUserPolicy",
                "iam:DetachUserPolicy",
                "iam:PutUserPermissionsBoundary",
                "iam:PutUserPolicy"
            ],
            "Resource": "*",
            "Condition": {
               "StringEquals": {
                 "iam:PermissionsBoundary": "arn:aws:iam::123456789012:policy/XCompanyBoundaries"
                }
            }
        },
        {
            "Sid": "CloudWatchAndOtherIAMTasks",
            "Effect": "Allow",
            "Action": [
              "cloudwatch:*",
              "iam:CreateAccessKey",
              "iam:CreateGroup",
              "iam:CreateLoginProfile",
              "iam:CreatePolicy",
              "iam:DeleteGroup",
              "iam:DeletePolicy",
              "iam:DeletePolicyVersion",
              "iam:DeleteUser",
              "iam:GetAccountPasswordPolicy",
              "iam:GetGroup",
              "iam:GetLoginProfile",
              "iam:GetPolicy",
              "iam:GetPolicyVersion",
              "iam:GetRolePolicy",
              "iam:GetUser",
              "iam:GetUserPolicy",
              "iam:ListAccessKeys",
              "iam:ListAttachedRolePolicies",
              "iam:ListAttachedUserPolicies",
              "iam:ListEntitiesForPolicy",
              "iam:ListGroups",
              "iam:ListGroupsForUser",
              "iam:ListMFADevices",
              "iam:ListPolicies",
              "iam:ListPolicyVersions",
              "iam:ListRolePolicies",
              "iam:ListSSHPublicKeys",
              "iam:ListServiceSpecificCredentials",
              "iam:ListSigningCertificates",
              "iam:ListUserPolicies",
              "iam:ListUsers",
              "iam:SetDefaultPolicyVersion",
              "iam:SimulateCustomPolicy",
              "iam:SimulatePrincipalPolicy",
              "iam:UpdateGroup",
              "iam:UpdateLoginProfile",
              "iam:UpdateUser"
            ],
            "NotResource": "arn:aws:iam::123456789012:user/Maria"
        },
        {
            "Sid": "NoBoundaryPolicyEdit",
            "Effect": "Deny",
            "Action": [
                "iam:CreatePolicyVersion",
                "iam:DeletePolicy",
                "iam:DeletePolicyVersion",
                "iam:SetDefaultPolicyVersion"
            ],
            "Resource": [
                "arn:aws:iam::123456789012:policy/XCompanyBoundaries",
                "arn:aws:iam::123456789012:policy/DelegatedUserBoundary"
            ]
        },
        {
            "Sid": "NoBoundaryUserDelete",
            "Effect": "Deny",
            "Action": "iam:DeleteUserPermissionsBoundary",
            "Resource": "*"
        }
    ]
}
```

------

ステートメントごとに用途は異なります。

1. `CreateOrChangeOnlyWithBoundary` ステートメントでは、IAM ユーザーを作成することを Zhang に許可します。ただし、`XCompanyBoundaries` ポリシーを使用してアクセス許可の境界を設定することを条件とします。また、このステートメントでは、既存のユーザーにアクセス許可の境界を設定することを Zhang に許可します。ただし、同じポリシーを使用することを条件とします。最後に、このステートメントでは、このアクセス許可の境界が設定されたユーザーのアクセス許可ポリシーを管理することを Zhang に許可します。

1. `CloudWatchAndOtherIAMTasks` ステートメントでは、他のユーザー、グループ、およびポリシーの管理タスクを実行することを Zhang に許可します。Zhang には、`NotResource` ポリシー要素にリストされていないすべての IAM ユーザーのパスワードをリセットして、アクセスキーを作成する許可があります。これにより、ユーザーのサインインの問題を支援できます。

1. `NoBoundaryPolicyEdit` ステートメントでは、`XCompanyBoundaries` ポリシーを更新するためのアクセスを Zhang に拒否します。自分自身や他のユーザーのアクセス許可の境界を設定するために使用されているポリシーを変更することは許可されません。

1. `NoBoundaryUserDelete` ステートメントは、Zhang が自分自身あるいは他のユーザーのアクセス許可境界を削除するためにアクセスすることを拒否します。

次に María は、`Zhang` ユーザーの[アクセス許可の境界](id_users_change-permissions.md#users_change_permissions-set-boundary-console)として `DelegatedUserBoundary` ポリシーを割り当てます。

**タスク 3**: アクセス許可の境界ではアクセス許可の上限を設定するだけで、それ自体はアクセスを付与しないため、Maria は Zhang のアクセス許可ポリシーを作成する必要があります。次のポリシーを `DelegatedUserPermissions` という名前で作成します。このポリシーでは、設定された境界内で、Zhang が実行できるオペレーションを定義します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "IAM",
            "Effect": "Allow",
            "Action": "iam:*",
            "Resource": "*"
        },
        {
            "Sid": "CloudWatchLimited",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:GetDashboard",
                "cloudwatch:GetMetricData",
                "cloudwatch:ListDashboards",
                "cloudwatch:GetMetricStatistics",
                "cloudwatch:ListMetrics"
            ],
            "Resource": "*"
        },
        {
            "Sid": "S3BucketContents",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::ZhangBucket"
        }
    ]
}
```

------

ステートメントごとに用途は異なります。

1. このポリシーの `IAM` ステートメントでは、IAM へのフルアクセスを Zhang に許可します。ただし、許可される IAM オペレーションはアクセス許可の境界で制限されます。有効な IAM アクセス許可を制限するのはアクセス許可の境界のみです。

1. `CloudWatchLimited` ステートメントでは、CloudWatch で 5 つのアクションを実行することを Zhang に許可します。アクセス許可の境界ですべての CloudWatch アクションが許可されるため、有効な CloudWatch アクセス許可はアクセス許可ポリシーでのみ限定されます。

1. `S3BucketContents` ステートメントでは、Amazon S3 バケット `ZhangBucket` を表示することを Zhang に許可します。ただし、アクセス許可の境界で一切の Amazon S3 アクションが許可されないため、アクセス許可ポリシーにかかわらず、S3 オペレーションを実行することはできません。
**注記**  
Zhang のポリシーにより、彼は自分がアクセスできない Amazon S3 リソースにアクセスできるユーザーを作成できます。これらの管理アクションを委任することによって、Maria は Zhang に Amazon S3 へのアクセス権を効果的に信頼します。

次に María は、`DelegatedUserPermissions` ユーザーのアクセス許可ポリシーとして `Zhang` ポリシーをアタッチします。

**タスク 4**: María は、新しいユーザーを作成する手順を Zhang に伝えます。新しいユーザーを作成して必要なアクセス権を付与できますが、アクセス許可の境界として `XCompanyBoundaries` ポリシーを割り当てる必要があることを説明します。

Zhang は以下のタスクを実行します。

1. Zhang は AWS マネジメントコンソール を使用してユーザーを作成します。ユーザー名として「`Nikhil`」と入力し、このユーザーに対してコンソールへのアクセスを有効にします。上記のポリシーではユーザーが IAM コンソールにサインインした後にのみパスワードを変更できるため、**[Requires password reset]** (パスワードのリセットが必要) の横にあるチェックボックスをオフにします。

1. [**アクセス許可の設定**] ページで、Zhang は Nikhil にタスクの実行を許可するアクセス許可ポリシーとして [**IAMFullAccess**] と [**AmazonS3ReadOnlyAccess**] を選択します。

1. Zhang は、María に教えられた手順を忘れて、[**Set permissions boundary (アクセス許可の境界の設定)**] セクションをスキップします。

1. Zhang はユーザーの詳細を確認し、[**ユーザーの作成**] を選択します。

   オペレーションは失敗し、アクセスが拒否されます。Zhang の `DelegatedUserBoundary` アクセス許可の境界では、作成するユーザーにアクセス許可の境界として `XCompanyBoundaries` ポリシーが必要です。

1. Zhang は前のページに戻ります。[**Set permissions boundary (アクセス許可の境界の設定)**] セクションで、`XCompanyBoundaries` ポリシーを選択します。

1. Zhang はユーザーの詳細を確認し、[**ユーザーの作成**] を選択します。

   ユーザーが作成されます。

Nikhil は、サインインすると、アクセス許可の境界で拒否されているオペレーションを除いて、IAM と Amazon S3 にアクセスできます。たとえば、IAM で自分のパスワードは変更できますが、別のユーザーを作成したり、自分のポリシーを編集したりすることはできません。Nikhil は Amazon S3 への読み取り専用アクセス権を持っています。

リソースベースのポリシーを `logs` バケットに追加して Nikhil がそのバケットにオブジェクトを配置できるようにしても、Nikhil はこのバケットにアクセスできません。理由は、`logs` バケットのアクションはすべて、彼のアクセス許可の境界によって明示的に拒否されているためです。いずれかのポリシータイプで明示的に拒否されていると、リクエストは拒否されます。ただし、Secrets Manager シークレットにアタッチされているリソースベースのポリシーで、`secretsmanager:GetSecretValue` アクションの実行を Nikhil に許可している場合、Nikhil は、そのシークレットを取得して復号できます。これは、Secrets Manager オペレーションは、彼のアクセス許可境界によって明示的に拒否されており、アクセス許可の境界の暗黙的な拒否により、リソースベースのポリシーが制限されないためです。

# アイデンティティベースおよびリソースベースのポリシー
<a name="access_policies_identity-vs-resource"></a>

ポリシーは AWS のオブジェクトであり、アイデンティティやリソースに関連付けられると、これらの許可を定義します。アクセス許可ポリシーを作成してリソースへのアクセスを制限する場合、*アイデンティティベースのポリシー*または*リソースベースのポリシー*を選択できます。

**アイデンティティベースのポリシー**は、IAM ユーザー、グループ、ロールにアタッチされます。これらのポリシーを使用すると、そのアイデンティティが実行できる内容 (そのアクセス許可) を指定できます。たとえば、John という名前の IAM ユーザーに Amazon EC2 `RunInstances` アクションを実行することを許可するポリシーをアタッチできます。このポリシーでは、John は、`MyCompany` という名前の Amazon DynamoDB テーブルからアイテムを取得することもできます。また、John は、自分の IAM セキュリティ認証情報を管理することもできます。ID ベースのポリシーは[管理またはインライン](access_policies_managed-vs-inline.md)とすることができます。

**リソースベースのポリシー**をリソースにアタッチします。例えば、リソースベースのポリシーをAmazon S3 バケット、Amazon SQS キュー、VPC エンドポイント、AWS Key Management Service 暗号化キー、Amazon DynamoDB テーブルとストリームにアタッチできます。リソースベースのポリシーをサポートするサービスのリストについては、「[IAM と連携する AWS のサービス](reference_aws-services-that-work-with-iam.md)」を参照してください。

リソースベースのポリシーによって、誰がリソースにアクセスでき、彼らがリソースでどのようなアクションを実行できるかを指定できます。信頼ゾーン (信頼できる組織またはアカウント) 外にあるアカウントのプリンシパルにロールを引き受けるアクセス権があるかどうかについては、「[IAM Access Analyzer とは](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html)」を参照してください。リソースベースのポリシーはインラインのみで、管理ポリシーはありません。

**注記**  
*リソースベース*のポリシーは、*リソースレベル*のアクセス許可とは異なっています。リソースベースのポリシーは、このトピックで説明しているように、リソースに直接アタッチできます。リソースレベルのアクセス許可は、[ARN](reference_identifiers.md#identifiers-arns) を使用してポリシー内で個別のリソースを指定する機能のことです。リソースベースのポリシーは、一部の AWS サービスでのみサポートされます。リソースベースのポリシーおよびリソースレベルのアクセス許可をサポートするサービスのリストについては、「[IAM と連携する AWS のサービス](reference_aws-services-that-work-with-iam.md)」を参照してください。

ID ベースのポリシーとリソースベースのポリシーが同じアカウント内でどのように相互作用するかについては、「[単一のアカウント内のリクエストのポリシー評価](reference_policies_evaluation-logic_policy-eval-basics.md)」を参照してください

アカウント間でポリシーがどのようにやり取りされるかについては、[クロスアカウントポリシーの評価論理](reference_policies_evaluation-logic-cross-account.md)を参照してください。

これらの概念を深く理解するには、以下の図を確認します。`123456789012` アカウントの管理者は、*アイデンティティベースのポリシー*を `John`、`Carlos`、および `Mary` ユーザーにアタッチしました。これらのポリシーのアクションの一部は、特定のリソースで実行できます。たとえば、ユーザー `John` は、一部のアクションを `Resource X` で実行できます。これは、アイデンティティベースのポリシーの*リソースレベルのアクセス許可*です。また、管理者は、*リソースベースのポリシー*を `Resource X`、`Resource Y`、および `Resource Z` に追加しました。リソースベースのポリシーでは、リソースにアクセスできるユーザーを指定することができます。たとえば、`Resource X` のリソースベースのポリシーでは、`John` および `Mary` ユーザーは、リソースへのアクセス権を表示し、読み取ることができます。

![\[アイデンティティベースのポリシーとリソースベースのポリシー\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/Types_of_Permissions.diagram.png)


`123456789012` アカウントの例では、次のユーザーは、表示されたアクションを実行することができます。
+ **John** – John は、`Resource X` のアクションを表示して、読み取ることができます。ユーザーにはアイデンティティベースのポリシー、`Resource X` にはリソースベースのポリシーによってこのアクセス許可が付与されます。
+ **Carlos** – Carlos は、`Resource Y` のアクションの一覧表示、読み取り、書き込みを行うことができますが、`Resource Z` へのアクセスは拒否されています。Carlos のアイデンティティベースのポリシーでは、`Resource Y` のアクションの一覧表示および読み取りを行うことができます。`Resource Y` リソースベースのポリシーでは、アクセス許可の書き込みを行うことができます。ただし、アイデンティティベースのポリシーでは、`Resource Z` にアクセスすることができ、`Resource Z` リソースベースのポリシーでは、そのアクセスは拒否されます。明示的な `Deny` によって、`Allow` は上書きされ、`Resource Z` へのアクセスは拒否されます。詳細については、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。
+ **Mary** – Mary は、`Resource X`、`Resource Y`、および `Resource Z` のオペレーションの一覧表示、読み取り、および書き込みを行うことができます。Mary のアイデンティティベースのポリシーでは、リソースベースのポリシーよりも多くのリソースで追加のアクションを実行できますが、アクセスが拒否されることはありません。
+ **Zhang** – Zhang は、`Resource Z` に対する完全なアクセス許可が付与されています。Zhang にはアイデンティティベースのポリシーはありませんが、`Resource Z` リソースベースのポリシーでは、そのリソースにフルアクセスすることができます。Zhang は、`Resource Y` でリストアクションと読み取りアクションを実行することもできます。

アイデンティティベースのポリシーとリソースベースのポリシーはいずれも、アクセス許可ポリシーであり、一緒に評価されます。アクセス許可ポリシーのみが適用されるリクエストの場合、AWS はすべてのポリシーで `Deny` がないかチェックします。存在する場合、リクエストは拒否されます。AWS によって、それぞれの `Allow` がないかどうか確認されます。1 つ以上のポリシーステートメントで、リクエストのアクションが許可されている場合、そのリクエストは許可されます。`Allow` がアイデンティティベースのポリシーか、リソースベースのポリシーであるかは関係ありません。

**重要**  
このロジックは、リクエストが単一の AWS アカウント 内で行われた場合にのみ適用されます。あるアカウントから別のアカウントに行われるリクエストの場合、`Account A` のリクエスタには、`Account B` のリソースへのリクエストを許可するアイデンティティベースのポリシーが必要です。また、`Account B` のリソースベースのポリシーを使用して、`Account A` のリクエスタによるリソースへのアクセスを許可する必要があります。両方のアカウントに、オペレーションを許可するポリシーが必要です。それ以外の場合、リクエストは失敗します。クロスアカウントアクセスでリソースベースのポリシーを使用する方法の詳細については、「[IAM でのクロスアカウントのリソースへのアクセス](access_policies-cross-account-resource-access.md)」を参照してください。

特定のアクセス許可を持つユーザーが、アクセス許可ポリシーが関連付けられたリソースを要求する場合があります。このような場合、AWS がリソースへのアクセスを許可するかどうかを判断する際、両方のアクセス許可セットが評価されます。ポリシーの評価方法に関する詳細については、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。

**注記**  
Amazon S3 では、アイデンティティベースのポリシーとリソースベースのポリシー (*バケットポリシーと呼ばれます*) をサポートしています。さらに、Amazon S3 は、IAM ポリシーおよびアクセス許可から独立した、*アクセスコントロールリスト (ACL)* と呼ばれるアクセス許可メカニズムをサポートしています。IAM ポリシーは、Amazon S3 ACL と組み合わせて使用できます。Amazon S3 アクセス許可に関する詳細は、*Amazon Simple Storage Service ユーザーガイド*の「[Access Control](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingAuthAccess.html)」を参照してください。

# ポリシーを使用して AWS リソースへのアクセスを制御します。
<a name="access_controlling"></a>

ポリシーを使用して、IAM や AWS のすべてのサービスのリソースへのアクセスをコントロールできます。

[ポリシー](access_policies.md)を使用して AWS へのアクセスを制御するには、AWS がアクセスを許可する方法を理解する必要があります。AWS は*リソース*の集合で構成されています。IAM ユーザーはリソースです。Amazon S3 バケットはリソースです。AWS API、AWS CLI、または AWS マネジメントコンソール を使用してオペレーション (ユーザーの作成など) を実行する場合、このオペレーションに対する*リクエスト*を送信します。リクエストでは、アクション、リソース、*プリンシパルエンティティ* (ユーザーまたはロール)、*プリンシパルアカウント*、および必要なリクエスト情報を指定します。これらのすべての情報により、*コンテキスト*が提供されます。

次に、AWSはユーザー (プリンシパル) が認可され (サインイン済み)、指定されたリソースで指定されたアクションの実行が許可されている (権限を持っている) ことを確認します。認可時、AWS は、リクエストのコンテキストに該当するすべてのポリシーをチェックします。通常、ポリシーは [JSON ドキュメント](access_policies.md#access_policies-json)として AWS に保存され、プリンシパルエンティティのアクセス許可を指定します。ポリシーのタイプと用途の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。

AWS は、リクエストの各部分がポリシーで認可されている場合のみ、リクエストを許可します。このプロセスの図を表示するには、「[IAM の仕組み](intro-structure.md)」を参照してください。AWS でリクエストを承認するかどうかの決定方法の詳細については、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。

IAM ポリシーを作成するときは、以下へのアクセスを制御できます。
+ **[プリンシパル](#access_controlling-principals)** – リクエストを行っているユーザー（[プリンシパル](https://docs.aws.amazon.com/glossary/latest/reference/glos-chap.html?icmpid=docs_homepage_addtlrcs#principal)）に許可される操作を制御します。
+ **[IAM ID](#access_controlling-identities)** – どの IAM ID (IAM グループ、ユーザー、ロール) にどのようにアクセスできるかを制御します。
+ **[IAM ポリシー](#access_controlling-policies)** – だれがカスタマー管理ポリシーを作成、編集、削除でき、だれがすべての管理ポリシーをアタッチおよびデタッチできるかを制御します。
+ **[AWS リソース](#access_controlling-resources)** – アイデンティティベースのポリシーまたはリソースベースのポリシーを使用して、リソースにアクセスできるユーザーを制御します。
+ **[AWS アカウント](#access_controlling-principal-accounts)** – リクエストを特定のアカウントのメンバーのみに許可するかどうか制御します。

ポリシーは、誰が AWS リソースにアクセスできるか、またそれらのリソース上でどのようなアクションを実行できるかを指定することを可能にします。すべての IAM ユーザーには、初期状態ではアクセス許可はありません。言い換えると、デフォルト設定では、ユーザーは何もできず、そのユーザーのアクセスキーを参照することすらできません。ユーザーに何かの操作を実行するアクセス許可を付与する場合は、そのユーザーにアクセス許可を追加できます (つまり、ポリシーをユーザーにアタッチします)。または、目的のアクセス許可を持つユーザーグループにユーザーを追加できます。

例えば、自らのアクセスキーをリスト化するためのユーザー権限を付与することができます。また、権限を拡大し、各ユーザーが自らのキーを作成、更新、および削除できるようにすることもできます。

アクセス許可をユーザーグループに付与することで、そのユーザーグループ内のすべてのユーザーにアクセス許可を与えることができます。例えば、AWS アカウント のリソースに対してすべての IAM アクションを実行するアクセス許可を Administrators グループに付与できます。その他の例: AWS アカウント の Amazon EC2 インスタンスを定義するアクセス許可を Managers ユーザーグループに付与できます。

ユーザー、IAM グループ、およびロールに基本的な権限を委任する方法については、「[他の IAM リソースにアクセスするのに必要なアクセス許可](access_permissions-required.md)」を参照してください。基本的な権限を示すポリシーのさらに多くの例については、「[IAM リソースの管理に関するポリシーの例](id_credentials_delegate-permissions_examples.md)」を参照してください。

## プリンシパルへのアクセスの制御
<a name="access_controlling-principals"></a>

リクエスト元 (プリンシパル) に許可される操作を制御するには、ポリシーを使用します。そのためには、リクエスト元のアイデンティティ (ユーザー、ユーザーグループ、またはロール) にアイデンティティベースのポリシーをアタッチする必要があります。また、[アクセス許可の境界](access_policies_boundaries.md)を使用して、エンティティ (ユーザーまたはロール) に付与することのできるアクセス許可の上限を設定することもできます。

たとえば、CloudWatch、Amazon DynamoDB、Amazon EC2、および Amazon S3 に対するフルアクセスをユーザー Zhang Wei に許可するとします。この場合、2 つの異なるポリシーを作成し、後で別のユーザーにアクセス許可セットの 1 つが必要になった場合に、ポリシーを分割できます。または、両方のアクセス許可を 1 つのポリシーにまとめて、このポリシーを Zhang Wei という IAM ユーザーにアタッチできます。また、Zhang が属しているユーザーグループや、Zhang が引き受けることができるロールにポリシーをアタッチすることもできます。その結果、Zhang が S3 バケットのコンテンツを表示する場合、リクエストは許可されます。新しい IAM ユーザーを作成しようとすると、必要なアクセス許可がないため、このリクエストは拒否されます。

S3 バケット `amzn-s3-demo-bucket1` へのアクセスを完全に遮断するには、Zhang に対してアクセス許可の境界を設定できます。そのためには、Zhang に付与するアクセス許可の*上限*を決定します。この場合、ユーザーの操作を制御するために、アクセス許可ポリシーを使用します。ここで必要なことは、ユーザーが機密バケットにアクセスしないことだけです。したがって、以下のポリシーを使用して Zhang の境界を定義し、Amazon S3 と他のいくつかのサービスに対するすべての AWS アクションを許可する一方で、S3 バケット `amzn-s3-demo-bucket1` へのアクセスを拒否します。このアクセス許可の境界では、一切の IAM アクションが許可されないため、Zhang は自分 (または他のいかなるユーザー) の境界も削除できません。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "PermissionsBoundarySomeServices",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:*",
                "dynamodb:*",
                "ec2:*",
                "s3:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "PermissionsBoundaryNoConfidentialBucket",
            "Effect": "Deny",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket1",
                "arn:aws:s3:::amzn-s3-demo-bucket1/*"
            ]
        }
    ]
}
```

------

このようなポリシーをユーザーのアクセス許可の境界として割り当てる場合、境界自体はアクセス許可を付与しないことに注意してください。アイデンティティベースのポリシーで IAM エンティティに付与することのできるアクセス許可の上限を設定します。アクセス許可の境界の詳細については、「[IAM エンティティのアクセス許可境界](access_policies_boundaries.md)」を参照してください

前述の手順の詳細については、以下のリソースを参照してください。
+ プリンシパルにアタッチできる IAM ポリシーの作成の詳細については、「[カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](access_policies_create.md)」を参照してください。
+ IAM ポリシーをプリンシパルにアタッチする方法については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。
+ EC2 へのフルアクセス許可を付与するポリシーの例を参照するには、「[Amazon EC2: 特定のリージョンでの完全な EC2 アクセスをプログラムによりコンソールで許可する](reference_policies_examples_ec2_region.md)」を参照してください。
+ S3 バケットへの読み取り専用アクセスを許可するには、「[Amazon S3: S3 バケットのオブジェクトへの読み取りおよび書き込みアクセスをプログラムによりコンソールで許可する](reference_policies_examples_s3_rw-bucket-console.md)」のポリシー例の最初の 2 つのステートメントを使用します。
+ コンソールパスワード、プログラムによるアクセスキー、MFA デバイスなどの認証情報の設定をユーザーに許可するポリシー例を確認するには、「[AWS: MFA で認証された IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします](reference_policies_examples_aws_my-sec-creds-self-manage.md)」を参照してください。

## アイデンティティへのアクセスコントロール
<a name="access_controlling-identities"></a>

IAM ポリシーを使用して、ユーザーグループ経由ですべてのユーザーにアタッチするポリシーを作成することで、アイデンティティに対してユーザーが実行できる操作を制御できます。これを行うには、アイデンティティに対して実行できる操作や、アイデンティティにアクセスできるユーザーを制限するポリシーを作成します。

たとえば、**AllUsers** という名前のユーザーグループを作成し、そのグループをすべてのユーザーにアタッチできます。ユーザーグループを作成するときに、前のセクションで説明したように、認証情報を設定するアクセス許可をすべてのユーザーに付与できます。次に、ポリシーの条件にユーザー名が含まれていない限り、ユーザーグループを変更するアクセス許可を拒否するポリシーを作成できます。ただし、ポリシーのその部分では、リストされたユーザーを除くすべてのユーザーへのアクセスが拒否されます。また、ユーザーグループのすべてのユーザーに、すべてのユーザーグループ管理アクションを許可するアクセス許可も含める必要があります。最後に、このポリシーをユーザーグループにアタッチし、すべてのユーザーに適用されるようにします。その結果、ポリシーで指定されていないユーザーがユーザーグループに変更を加えようとすると、リクエストは拒否されます。

**ビジュアルエディタを使用してこのポリシーを作成するには**

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

1. 左側のナビゲーションペインで、**[ポリシー]** を選択します。

   初めて **[ポリシー]** を選択する場合には、**[管理ポリシーにようこそ]** ページが表示されます。**[Get Started]** (今すぐ始める) を選択します。

1. **[Create policy]** (ポリシーを作成) を選択します。

1. **[ポリシーエディタ]** セクションで、**[ビジュアル]** オプションを選択します。

1. [**サービスを選択**] で [**IAM**] を選択します。

1. [**許可されたアクション**] で、検索ボックスに **group** を入力します。ビジュアルエディタで、`group` という語を含むすべての IAM アクションが表示されます。すべてのチェックボックスをオンにします。

1. [**リソース**] を選択して、ポリシーのリソースを指定します。選択したアクションに基づいて、[**グループ**] および [**ユーザー**] のリソースタイプが表示されます。
   + **グループ** – [**ARN を追加**] を選択します。[**リソース**] で、[**任意のアカウント**] オプションを選択します。**[パス付きの任意のグループ名]** チェックボックスをオンにし、ユーザーグループ名 **AllUsers** を入力します。次に、**[ARN を追加]** を選択します。
   + **[ユーザー]** – **[このアカウント内のすべて]** の横にあるチェックボックスをオンにします。

   選択したアクションの 1 つである `ListGroups` は、特定のリソースの使用をサポートされていません。そのアクションに対して [**All resources (すべてのリソース)**] を選択する必要はありません。[**JSON**] エディタでポリシーを保存するか、ポリシーを表示すると、IAM によって自動的に新しいアクセス許可ブロックが作成され、すべてのリソースでこのアクションにアクセス許可が付与されることがわかります。

1. 別のアクセス許可ブロックを追加するには、[**さらにアクセス許可を追加する**] を選択します。

1. [**サービスを選択**] を選択してから、[**IAM**] を選択します。

1. [**許可されるアクション**]、[**Sアクセス許可の拒否に切り替え**] の順に選択します。この操作を行うと、ブロック全体を使用してアクセス許可が拒否されます。

1. 検索ボックスに「**group**」と入力します。ビジュアルエディタで、`group` という語を含むすべての IAM アクションが表示されます。次のアクションの横にあるチェックボックスをオンにします。
   + **CreateGroup**
   + **DeleteGroup**
   + **RemoveUserFromGroup**
   + **AttachGroupPolicy**
   + **DeleteGroupPolicy**
   + **DetachGroupPolicy**
   + **PutGroupPolicy**
   + **UpdateGroup**

1. [**リソース**] を選択して、ポリシーのリソースを指定します。選択したアクションに基づいて、[**グループ**] リソースタイプが表示されます。[**ARN を追加**] を選択します。[**リソース**] で、[**任意のアカウント**] オプションを選択します。[**パス付きグループ名**] にユーザーグループ名「**AllUsers**」を入力します。次に、**[ARN を追加]** を選択します。

1. [**リクエスト条件 - オプション**] を選択してから、[**別の条件を追加**] を選択します。次の値をフォームに入力します。
   + **条件キー** — **aws:username** を選択
   + [**限定条件**] – [**Default (デフォルト**)] を選択します。
   + [**演算子**] – [**StringNotEquals**] を選択します。
   + **値** –「**srodriguez**」と入力し、[**追加**] を選択します。「**mjackson**」と入力し、[**追加**] を選択して、別の値を入力します。「**adesai**」と入力し、[**条件を追加**] を選択します。

   この条件により、呼び出しを実行しているユーザーがリストに含まれていない場合、アクセスは指定したユーザーグループ管理アクションに対して拒否されます。これによりアクセス許可が明示的に拒否されるため、ユーザーにアクションの呼び出しを許可した以前のブロックは上書きされます。リストのユーザーはアクセスを拒否され、最初のアクセス許可ブロックでアクセス許可を付与されるため、ユーザーはユーザーグループを完全に管理できます。

1. 完了したら、[**Next**] を選択します。
**注記**  
いつでも **[Visual]** と **[JSON]** エディタオプションを切り替えることができます。ただし、**[Visual]** エディタで変更を行うか **[次へ]** を択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

1. [**確認および作成**] ページで、[**ポリシー名**] に「**LimitAllUserGroupManagement**」と入力します。[**Description (説明)**] に、「**Allows all users read-only access to a specific user group, and allows only specific users access to make changes to the user group**」と入力します。[**このポリシーで定義されているアクセス許可**] を確認し、意図したアクセス許可を付与したことを確認します。次に、[**ポリシーの作成**] を選択して新しいポリシーを保存します。

1. ユーザーグループにポリシーをアタッチします。詳細については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。

また、この JSON ポリシードキュメント例を使用して、同じポリシーを作成できます。この JSON ポリシーを表示するには、「[IAM:: 特定の IAM ユーザーによるグループの管理をプログラムによりコンソールで許可する](reference_policies_examples_iam_users-manage-group.md)」を参照してください。JSON ドキュメントを使用してポリシーを作成する詳細な手順については、「[JSON エディターを使用したポリシーの作成](access_policies_create-console.md#access_policies_create-json-editor)」を参照してください。

## ポリシーへのアクセスの制御
<a name="access_controlling-policies"></a>

ユーザーが AWS 管理ポリシーを適用する方法を制御できます。これを行うには、すべてのユーザーにこのポリシーをアタッチします。理想的には、ユーザーグループを使用してこれを行うことができます。

たとえば、[IAMUserChangePassword](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/job-function/IAMUserChangePassword) と [PowerUserAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/job-function/PowerUserAccess) の AWS 管理ポリシーのみを新しい IAM ユーザー、ユーザーグループ、またはロールにアタッチするポリシーを作成できます。

カスタマー管理ポリシーの場合、それらのポリシーを作成、更新、削除できるユーザーを制御できます。プリンシパルエンティティ (IAM グループ、ユーザー、ロール) との間でポリシーをアタッチおよびデタッチできるユーザーを制御できます。ユーザーにどのエンティティのどのポリシーのアタッチまたはデタッチを許可するかも制御できます。

たとえば、アカウント管理者にポリシーを作成、更新、削除する権限を付与できます。次に、チームリーダーまたはその他の制限付き管理者に、管理対象となるプリンシパルエンティティのポリシーをアタッチおよびデタッチする権限を付与します。

詳細については、以下のリソースを参照してください。
+ プリンシパルにアタッチできる IAM ポリシーの作成の詳細については、「[カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](access_policies_create.md)」を参照してください。
+ IAM ポリシーをプリンシパルにアタッチする方法については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。
+ 管理ポリシーの使用を制限するポリシー例については、「[IAM: ユーザー、グループ、またはロールに適用できる管理ポリシーを制限する](reference_policies_examples_iam_limit-managed.md)」を参照してください。

### カスタマー管理ポリシーを作成、更新、削除する権限の制御
<a name="policies-controlling-access-create-update-delete"></a>

[IAM ポリシー](access_policies.md)を使用して、だれが AWS アカウント のカスタマー管理ポリシーを作成、更新、削除できるかをコントロールできます。ポリシーまたはポリシーのバージョンの作成、更新、削除に直接関連する API オペレーションを以下に示します。
+ [CreatePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreatePolicy.html)
+ [CreatePolicyVersion](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreatePolicyVersion.html)
+ [DeletePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicy.html)
+ [DeletePolicyVersion](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicyVersion.html)
+ [SetDefaultPolicyVersion](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SetDefaultPolicyVersion.html)

以上の API オペレーションは、IAM ポリシーを使用して許可または拒否できる (権限を付与できる) アクションに対応しています。

次のポリシー例を考えます。この例では、AWS アカウント のすべてのカスタマー管理ポリシーのデフォルトバージョンを作成、更新 (新しいポリシーバージョンの作成)、削除、および設定することをユーザーに許可します。このポリシーの例では、ユーザーにポリシーの一覧表示とポリシーの取得も許可しています。この例の JSON ポリシードキュメントを使用してポリシーを作成する方法については、「[JSON エディターを使用したポリシーの作成](access_policies_create-console.md#access_policies_create-json-editor)」を参照してください。

**Example すべてのポリシーの作成、更新、削除、一覧表示、取得、デフォルトバージョンの設定を許可するポリシーの例**    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "iam:CreatePolicy",
      "iam:CreatePolicyVersion",
      "iam:DeletePolicy",
      "iam:DeletePolicyVersion",
      "iam:GetPolicy",
      "iam:GetPolicyVersion",
      "iam:ListPolicies",
      "iam:ListPolicyVersions",
      "iam:SetDefaultPolicyVersion"
    ],
    "Resource": "*"
  }
}
```

指定した管理ポリシーのみに適用するポリシーを作成して、これらの API オペレーションの使用を制限することもできます。たとえば、特定のカスタマー管理ポリシーのみを対象にして、ユーザーにデフォルトバージョンの設定とポリシーバージョンの削除を許可することが考えられます。これは、権限を付与するポリシーの `Resource` 要素にポリシー ARN を指定することで実行できます。

次のポリシー例では、ポリシーバージョンを削除してデフォルトバージョンを設定することをユーザーに許可します。ただし、これらのアクションが許可されるのは、パス /TEAM-A/ が含まれているカスタマー管理ポリシーに限られます。カスタマー管理ポリシー ARN は、ポリシーの `Resource` 要素で指定されています (この例では、ARN にパスとワイルドカードが含まれているため、パス /TEAM-A/ を含むすべてのカスタマー管理ポリシーに一致します)。この例の JSON ポリシードキュメントを使用してポリシーを作成する方法については、「[JSON エディターを使用したポリシーの作成](access_policies_create-console.md#access_policies_create-json-editor)」を参照してください。

カスタマー管理ポリシーの名前にパスを使用する場合の詳細については、「[フレンドリ名とパス](reference_identifiers.md#identifiers-friendly-names)」を参照してください。

**Example 特定のポリシーのみを対象にして、ポリシーバージョンの削除とデフォルトバージョンの設定を許可するポリシーの例**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:DeletePolicyVersion",
            "iam:SetDefaultPolicyVersion"
        ],
        "Resource": "arn:aws:iam::111122223333:policy/TEAM-A/*"
    }
}
```

### 管理ポリシーをアタッチおよびデタッチする権限の制御
<a name="policies-controlling-access-attach-detach"></a>

また、IAM ポリシーを使用して、ユーザーが特定の管理ポリシーのみで作業することを許可できます。実際には、ユーザーがどのアクセス許可を他のプリンシパルエンティティに付与できるかをコントロールできます。

プリンシパルエンティティの管理ポリシーのアタッチとデタッチに直接関連する API オペレーションを以下に示します。
+  [AttachGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachGroupPolicy.html)
+ [AttachRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachRolePolicy.html)
+ [AttachUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachUserPolicy.html)
+ [DetachGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachGroupPolicy.html)
+ [DetachRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachRolePolicy.html)
+ [DetachUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachUserPolicy.html)

指定した管理ポリシーおよびプリンシパルエンティティのみに適用するポリシーを作成して、これらの API オペレーションの使用を制限することができます。たとえば、指定した管理ポリシーのみを対象にして、ユーザーに管理ポリシーのアタッチを許可することが考えられます。あるいは、指定したプリンシパルエンティティのみを対象にして、ユーザーに管理ポリシーのアタッチを許可することも考えられます。

以下のポリシー例では、ユーザーに、パス /TEAM-A/ を含む IAM グループとロールのみに対して管理ポリシーのアタッチを許可します。ユーザーグループとロールの ARN はポリシーの `Resource` 要素で指定します (この例では、ARN にはパスとワイルドカード文字が含まれているため、パス /TEAM-A/ を含むすべての IAM グループとロールに一致します)。この例の JSON ポリシードキュメントを使用してポリシーを作成する方法については、「[JSON エディターを使用したポリシーの作成](access_policies_create-console.md#access_policies_create-json-editor)」を参照してください。

**Example 特定のユーザーグループまたはロールのみに対する管理ポリシーのアタッチを許可するポリシー**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:AttachGroupPolicy",
            "iam:AttachRolePolicy"
        ],
        "Resource": [
            "arn:aws:iam::111122223333:group/TEAM-A/*",
            "arn:aws:iam::111122223333:role/TEAM-A/*"
        ]
    }
}
```

前の例のアクションをさらに制限して、特定のポリシーにのみ影響を与えられるようにすることができます。つまり、ポリシーに条件を追加することで、ユーザーが他のプリンシパルエンティティにアタッチできる権限を制御できます。

次の例では、条件により、アタッチしたポリシーが指定したポリシーのいずれかに一致した場合のみに `AttachGroupPolicy` と `AttachRolePolicy` の権限を許可します。条件では、`iam:PolicyARN` [条件キー](reference_policies_elements_condition.md)を使用して、どのポリシーをアタッチできるかを決定しています。次のポリシー例は、前の例を拡張したものです。この例では、パス /TEAM-A/ が含まれている管理ポリシーを、パス /TEAM-A/ が含まれている IAM グループとロールにのみアタッチすることをユーザーに許可します。この例の JSON ポリシードキュメントを使用してポリシーを作成する方法については、「[JSON エディターを使用したポリシーの作成](access_policies_create-console.md#access_policies_create-json-editor)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:AttachGroupPolicy",
            "iam:AttachRolePolicy"
        ],
        "Resource": [
            "arn:aws:iam::111122223333:group/TEAM-A/*",
            "arn:aws:iam::111122223333:role/TEAM-A/*"
        ],
        "Condition": {
            "ArnLike": {
                "iam:PolicyARN": "arn:aws:iam::111122223333:policy/TEAM-A/*"
            }
        }
    }
}
```

------

このポリシーでは、`ArnLike` 条件演算子を使用することもできますが、これら2つの条件演算子が同じように動作するため、`ArnEquals` 条件演算子を使用することもできます。`ArnLike` および `ArnEquals` の詳細については、「[Amazon リソースネーム (ARN) の条件演算子](reference_policies_elements_condition_operators.md#Conditions_ARN)ポリシー要素リファレンス*」の「*条件の種類*」セクションの「*」を参照してください。

たとえば、アクションの使用を制限して、指定した管理ポリシーのみを対象にすることもできます。これは、権限を付与するポリシーの `Condition` 要素にポリシー ARN を指定することで実行できます。たとえば、カスタマー管理ポリシーの ARN を指定するには、次のようにします。

```
"Condition": {"ArnEquals": 
  {"iam:PolicyARN": "arn:aws:iam::123456789012:policy/POLICY-NAME"}
}
```

または、ポリシーの `Condition` 要素で AWS 管理ポリシーの ARN を指定することもできます。AWS 管理ポリシーの ARN では、以下の例に示すように、アカウント ID の代わりにポリシー ARN で `aws` という特別なエイリアスを使用します。

```
"Condition": {"ArnEquals": 
  {"iam:PolicyARN": "arn:aws:iam::aws:policy/AmazonEC2FullAccess"}
}
```

## リソースへのアクセスの制御
<a name="access_controlling-resources"></a>

アイデンティティベースのポリシーまたはリソースベースのポリシーを使用してリソースにアクセスできるユーザーを制御できます。アイデンティティベースのポリシーでは、ポリシーをアイデンティティにアタッチし、そのアイデンティティがアクセスできるリソースを指定します。リソースベースのポリシーでは、制御するリソースにポリシーをアタッチします。ポリシーでは、リソースにアクセスできるプリンシパルを指定します。ポリシーの両方のタイプの詳細については、「[アイデンティティベースおよびリソースベースのポリシー](access_policies_identity-vs-resource.md)」を参照してください。

詳細については、以下のリソースを参照してください。
+ プリンシパルにアタッチできる IAM ポリシーの作成の詳細については、「[カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](access_policies_create.md)」を参照してください。
+ IAM ポリシーをプリンシパルにアタッチする方法については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。
+ Amazon S3 は、バケットでリソースベースのポリシーの使用をサポートします。詳細については、「[バケットポリシーの例](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html)」を参照してください。
<a name="NoDefaultPermissions"></a>
**リソース作成者であっても自動的にアクセス権限を有するわけではない**  
AWS アカウントのルートユーザー 認証情報を使用してサインインする場合、そのアカウントに属するリソースであらゆるアクションを実行する権限があります。ただし、それは IAM ユーザーには当てはまりません。IAM ユーザーはリソースを作成するためのアクセス許可を付与されることはありますが、そのユーザーの権限は、たとえ自ら作成したリソースに対するものであっても、明示的に付与された権限に限定されます。つまり、IAM ロールなどのリソースを作成するだけでは、そのロールを編集または削除するアクセス許可は自動的には与えられません。さらに、アクセス許可は、アカウント所有者またはユーザー権限を管理するアクセス許可を付与されたその他のユーザーによって、いつでも無効にすることができます。

## 特定のアカウント内のプリンシパルへのアクセスの制御
<a name="access_controlling-principal-accounts"></a>

お客様は自らのアカウント内の IAM ユーザーに対し、お客様のリソースへのアクセス権限を直接付与できます。別のアカウントのユーザーがお客様のリソースへのアクセスを必要としている場合は、IAM ロールを作成できます。ロールは、アクセス許可を含むが、特定のユーザーに関連付けられていないエンティティです。これにより他のアカウントのユーザーはロールを引き受けて、ロールに割り当てられた権限に応じてリソースにアクセスできます。詳細については、「[所有している別の AWS アカウント内の IAM ユーザーに対するアクセス](id_roles_common-scenarios_aws-accounts.md)」を参照してください。

**注記**  
一部のサービスは、[アイデンティティベースおよびリソースベースのポリシー](access_policies_identity-vs-resource.md) で説明されているリソースベースのポリシーをサポートしています (Amazon S3、Amazon SNS、Amazon SQS など)。これらのサービスでは、ロールを使用する代わりに、共有するリソース（バケット、トピック、またはキュー）にポリシーをアタッチします。リソースベースのポリシーでは、AWSアカウントで、リソースへのアクセス許可を持ちます。

# タグを使用した IAM ユーザーおよびロールへのアクセスとそのユーザーおよびロールのアクセスの制御
<a name="access_iam-tags"></a>

次のセクションの情報を使用して、IAM ユーザーおよびロールにアクセスできるユーザーと、ユーザーとロールがアクセスできるリソースを制御します。他の IAM リソースを含め、他の AWS リソースへのアクセスを制御するための一般的な情報と例については、「[AWS Identity and Access Management リソースのタグ](id_tags.md)」を参照してください。

**注記**  
タグキーとタグキー値での大文字と小文字の区別の詳細については、「[Case sensitivity](id_tags.md#case-sensitivity)」を参照してください。

タグは、IAM *リソース*にアタッチするか、*リクエスト*で渡すか、リクエストを行う*プリンシパル*にアタッチすることができます。IAM ユーザーまたはロールは、リソースとプリンシパルの両方にすることができます。たとえば、ユーザーのグループを一覧表示することをユーザーに許可するポリシーを記述できます。このオペレーションは、リクエストを行うユーザー (プリンシパル)に、表示しようとしているユーザーと同じ `project=blue` タグがある場合にのみ許可されます。この例では、ユーザーは、同じプロジェクトで作業している限り、自分自身を含む任意のユーザーのグループメンバーシップを表示できます。

タグに基づいてアクセスを制御するには、ポリシーの[条件要素](reference_policies_elements_condition.md)でタグ情報を提供します。IAM ポリシーを作成するときは、IAM タグおよび関連付けられたタグ条件キーを使用して、以下のいずれかへのアクセスを制御できます。
+ **[リソース](access_tags.md#access_tags_control-resources)** – ユーザーまたはロールへのアクセスをそれらのタグに基づいて制御します。これを行うには、**aws:ResourceTag/*key-name*** 条件キーを使用して、リソースにアタッチする必要があるタグのキーバリューのペアを指定します。詳細については、「[AWS のリソースへのアクセスの制御](access_tags.md#access_tags_control-resources)」を参照してください。
+ **[リクエスト](access_tags.md#access_tags_control-requests)** – IAM リクエストで渡すことができるタグを制御します。そのためには、**aws:RequestTag/*key-name*** 条件キーを使用して、IAM ユーザーまたはロールに対して追加、変更、または削除できるタグを指定します。このキーは、IAM リソースと他の AWS リソースでも同じ方法で使用されます。詳細については、「[AWS リクエスト時のアクセスの制御](access_tags.md#access_tags_control-requests)」を参照してください。
+ **[プリンシパル](#access_iam-tags_control-principals)** – 個人の IAM ユーザーまたはロールにアタッチされたタグに基づき、リクエストを行っている個人 (プリンシパル) が実行できる操作を制御します。そのためには、**aws:PrincipalTag/*key-name*** 条件キーを使用して、リクエストを許可する前に、IAM ユーザーまたはロールにアタッチする必要のあるタグを指定します。
+ **[認可プロセスの一部](#access_iam-tags_control-tag-keys)** – **aws:TagKeys** 条件キーを使用して、特定のタグキーをリクエストまたはプリンシパルで使用できるかどうかを制御します。この場合、キーバリューは重要ではありません。このキーは、IAM およびその他の AWS サービスでも同様に動作します。ただし、IAM でユーザーにタグを付けると、これにより、プリンシパルが任意のサービスに対してリクエストを行うことができるかどうかも制御されます。詳細については、「[タグキーに基づいたアクセスの制御](access_tags.md#access_tags_control-tag-keys)」を参照してください。

ビジュアルエディタまたは JSON を使用するか、既存の管理ポリシーをインポートして、IAM ポリシーを作成できます。詳細については、「[カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](access_policies_create.md)」を参照してください。

**注記**  
IAM ロールを引き受けるとき、またはユーザーをフェデレートするときに、[セッションタグ](id_session-tags.md)を渡すこともできます。これらは、セッションの長さに対してのみ有効です。

## IAM プリンシパルへのアクセスの制御
<a name="access_iam-tags_control-principals"></a>

ユーザーのアイデンティティに付けられたタグに基づき、プリンシパルが実行できる操作を制御できます。

この例では、同じプロジェクトで作業している限り、このアカウントのすべてのユーザーが自分自身を含むすべてのユーザーのグループメンバーシップを表示できるようにする ID ベースのポリシーを作成する方法を示しています。このオペレーションは、ユーザーのリソースタグと、プリンシパルのタグのタグキー `project` の値が同じである場合にのみ許可されます。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "iam:ListGroupsForUser",
            "Resource": "arn:aws:iam::111222333444:user/*",
            "Condition": {
                "StringEquals": {"aws:ResourceTag/project": "${aws:PrincipalTag/project}"}
            }
        }]
}
```

------

## タグキーに基づいたアクセスの制御
<a name="access_iam-tags_control-tag-keys"></a>

IAM ポリシーでタグを使用して、リクエストまたはプリンシパルで特定のタグキーを使用できるかどうかを制御できます。

この例は、`temporary` キーを持つタグのみをユーザーから削除できる ID ベースのポリシーを作成する方法を示しています。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": "iam:UntagUser",
        "Resource": "*",
        "Condition": {"ForAllValues:StringEquals": {"aws:TagKeys": ["temporary"]}}
    }]
}
```

------

# タグを使用した AWS リソースへのアクセスの制御
<a name="access_tags"></a>

タグ付けをサポートしている AWS リソース (IAM リソースを含む) へのアクセスを制御するには、タグを使用します。IAM ユーザーとロールにタグ付けして、アクセスできるユーザートロールを制御することができます。IAM ユーザーとロールにタグ付けするには、「[AWS Identity and Access Management リソースのタグ](id_tags.md)」を参照してください。さらに、以下の IAM リソースへのアクセスを制御できます。カスタマー管理ポリシー、IAM ID プロバイダー、インスタンスプロファイル、サーバー証明書、仮想 MFA デバイス。プリンシパルタグを持つ IAM ロールが、一致するタグを持つリソースにアクセスすることを許可するポリシーを作成およびテストするためのチュートリアルを表示するには、「[IAM チュートリアル: タグに基づいて AWS リソースにアクセスするためのアクセス許可を定義する](tutorial_attribute-based-access-control.md)」を参照してください 。IAM ユーザーやロールにタグ付けせずに、他の AWS リソース (IAM リソースを含む) へのアクセスを制御するには、次のセクションの情報を使用します。

タグを使用して AWS リソースへのアクセスを制御する前に、AWS がアクセスを許可する方法を理解する必要があります。AWS は*リソース*の集合で構成されています。Amazon EC2 インスタンスはリソースです。Amazon S3 バケットはリソースです。AWS API、AWS CLI、または AWS マネジメントコンソール を使用して、Amazon S3 でのバケットの作成などのオペレーションを実行できます。これを行う際、そのオペレーションの*リクエスト*を送信します 。リクエストでは、アクション、リソース、*プリンシパルエンティティ* (ユーザーまたはロール)、*プリンシパルアカウント*、および必要なリクエスト情報を指定します。これらのすべての情報により、*コンテキスト*が提供されます。

次に、AWS はユーザー (プリンシパルエンティティ) が認証され (サインイン済み)、指定されたリソースで指定されたアクションの実行が許可されている (アクセス許可がある) ことを確認します。認可時、AWS は、リクエストのコンテキストに該当するすべてのポリシーをチェックします。通常、ポリシーは [JSON ドキュメント](access_policies.md#access_policies-json)として AWS に保存され、プリンシパルエンティティのアクセス許可を指定します。ポリシーのタイプと用途の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。

AWS は、リクエストの各部分がポリシーで認可されている場合のみ、リクエストを許可します。図を表示して IAM インフラストラクチャの詳細について学習するには、「[IAM の仕組み](intro-structure.md)」を参照してください。IAM でリクエストの許可を決定する方法の詳細については、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。

タグは、このプロセスにおけるもう 1 つの考慮事項です。これらは、リソースにアタッチするか、タグ付けをサポートするサービスへのリクエストで渡すことができるからです。タグに基づいてアクセスを制御するには、ポリシーの[条件要素](reference_policies_elements_condition.md)でタグ情報を提供します。AWS サービスがタグを使用したアクセスの制御をサポートしているかどうか確認するには、「[IAM と連携する AWS のサービス](reference_aws-services-that-work-with-iam.md)」を参照し、「**ABAC**」列に「**はい**」と表示されているサービスを探します。サービスの名前を選択すると、そのサービスの認可とアクセスコントロールに関するドキュメントが表示されます。

その後、そのリソースのタグに基づいてリソースへのアクセスを許可または拒否する IAM ポリシーを作成できます。そのポリシーでは、タグ条件キーを使用して以下のいずれかへのアクセスを制御できます。
+ **[リソース](#access_tags_control-resources)** – それらのリソースのタグに基づいて、AWS サービスリソースへのアクセスを制御します。これを行うには、**aws:ResourceTag/*key-name*** 条件キーを使用して、リソースにアタッチされたタグに基づいてリソースへのアクセスを許可するかどうか決定します。
+ **[リクエスト](#access_tags_control-requests)** – リクエストで渡すことができるタグを制御します。これを行うには、**aws:RequestTag*/key-name*** 条件キーを使用して、AWS リソースのタグ付けを行うリクエストで渡すことができるタグキーバリューのペアを指定します。
+ **[認可プロセスの一部](#access_tags_control-tag-keys)** – **aws:TagKeys** 条件キーを使用して、特定のタグキーがリクエストに存在することができるかどうかを制御します。

JSON を使用するか、既存の管理ポリシーをインポートして、IAM ポリシーを視覚的に作成できます。詳細については、「[カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](access_policies_create.md)」を参照してください。

**注記**  
一部のサービスでは、リソースを作成するアクションを使用するアクセス許可があれば、リソースを作成する際にタグを指定することができます。

## AWS のリソースへのアクセスの制御
<a name="access_tags_control-resources"></a>

IAM ポリシーで条件を使用して、そのリソースのタグに基づき、AWS リソースへのアクセスを制御できます。これを行うには、グローバルの `aws:ResourceTag/tag-key` 条件キー、またはサービス固有のキーを使用します。一部のサービスでは、このキーのサービス固有のバージョンのみがサポートされ、グローバルバージョンはサポートされていません。

**警告**  
ロールをタグ付けした後に、`iam:PassRole` アクションでポリシー内の `ResourceTag` 条件キーを使用してロールを渡せるユーザーを制御しないようにしてください。このアプローチでは信頼できる結果は得られません。ロールをサービスに渡すのに必要なアクセス許可の詳細については、「[AWS サービスにロールを渡すアクセス許可をユーザーに付与する](id_roles_use_passrole.md)」を参照してください。

 この例では、Amazon EC2 インスタンスの起動または停止を許可する ID ベースのポリシーを作成する方法を示します。これらのオペレーションは、インスタンスのタグ `Owner`がそのユーザーのユーザー名の値を含む場合に限り、許可されます。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:StartInstances",
                "ec2:StopInstances"
            ],
            "Resource": "arn:aws:ec2:*:*:instance/*",
            "Condition": {
                "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"}
            }
        },
        {
            "Effect": "Allow",
            "Action": "ec2:DescribeInstances",
            "Resource": "*"
        }
    ]
}
```

------

このポリシーはアカウントの IAM ユーザーにアタッチできます。`richard` というユーザーが Amazon EC2 インスタンスを起動しようとした場合、そのインスタンスには `Owner=richard` または `owner=richard` というタグが付けられている必要があります。それ以外の場合、アクセスは拒否されます。条件キー名では大文字と小文字は区別されないため、タグキー `Owner` は `Owner` と `owner` に一致します。詳細については、「[IAM JSON ポリシー要素Condition](reference_policies_elements_condition.md)」を参照してください。

この例は、リソース ARN で `team` プリンシパルタグを使用する ID ベースポリシーを作成する方法を示しています。このポリシーでは、Amazon Simple Queue Service キューを削除する許可が付与されますが、キュー名がチーム名で始まり、`-queue` が続く場合に限られます。例えば、`qa` が `team` プリンシパルタグのチーム名なら `qa-queue` です。

------
#### [ JSON ]

****  

```
{
      "Version":"2012-10-17",		 	 	 
      "Statement": {
        "Sid": "AllQueueActions",
        "Effect": "Allow",
        "Action": "sqs:DeleteQueue",
        "Resource": "arn:aws:sqs:us-east-2:111122223333:${aws:PrincipalTag/team}-queue"
      }
}
```

------

## AWS リクエスト時のアクセスの制御
<a name="access_tags_control-requests"></a>

IAM ポリシーで条件を使用すると、リクエストでどのようなタグのキー値ペアを渡して、AWS リソースにタグを適用するかを制御できます。

この例では、Amazon EC2 `CreateTags` アクションを使用してタグをインスタンスにアタッチできるようにする、ID ベースのポリシーを作成する方法を示しています。タグをアタッチできるのは、タグに `environment` キーと `preprod` または `production` の値が含まれている場合だけです。必要に応じて、`ForAllValues` 修飾子を `aws:TagKeys` 条件キーとともに使用して、リクエストでキー `environment` のみが許可されることを示します。これにより、`environment` の代わりに誤って `Environment` を使用するなど、ユーザーが他のキーを含めることがなくなります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": "ec2:CreateTags",
        "Resource": "arn:aws:ec2:*:*:instance/*",
        "Condition": {
            "StringEquals": {
                "aws:RequestTag/environment": [
                    "preprod",
                    "production"
                ]
            },
            "ForAllValues:StringEquals": {"aws:TagKeys": "environment"}
        }
    }
}
```

------

## タグキーに基づいたアクセスの制御
<a name="access_tags_control-tag-keys"></a>

IAM ポリシーで条件を使用して、リクエストで特定のタグキーを使用できるかどうか制御できます。

ベストプラクティスとして、ポリシーでタグを使用してアクセスを制御する場合、[`aws:TagKeys` 条件キー](reference_policies_condition-keys.md#condition-keys-tagkeys)を使用することをお勧めします。タグをサポートする AWS のサービスでは、大文字小文字のみが異なる複数のタグキー名を作成できる可能性があります。たとえば、Amazon EC2 インスタンスに `stack=production` および `Stack=test` タグを付けるなどです。ポリシー条件のキー名では、大文字と小文字は区別されません。つまり、ポリシーの条件要素で `"aws:ResourceTag/TagKey1": "Value1"` で指定した場合、その条件は `TagKey1` または `tagkey1` という名前のリソースタグキーに一致しますが、その両方には一致しません。大文字小文字のみが異なるキーを使用したタグの重複を防ぐには、`aws:TagKeys` 条件を使用して、ユーザーが適用できるタグキーを定義するか、AWS Organizations で利用できるタグポリシーを使用します。詳細については、「*AWS Organizations ユーザーガイド*」の「[タグポリシー](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html)」を参照してください。

この例では、Secrets Manager のシークレットの作成とタグ付けを許可する IDベースのポリシーを作成する方法を示していますが、タグキー `environment` または `cost-center` のみを使用します。`Null` 条件を使用すると、リクエストにタグがない場合に条件が `false` と評価されます。

```
{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:CreateSecret",
            "secretsmanager:TagResource"
        ],
        "Resource": "*",
        "Condition": {
            "Null": {
                "aws:TagKeys": "false"
            },
            "ForAllValues:StringEquals": {
                "aws:TagKeys": [
                    "environment",
                    "cost-center"
                ]
            }
        }
}
```

# IAM でのクロスアカウントのリソースへのアクセス
<a name="access_policies-cross-account-resource-access"></a>

一部の AWS サービスでは、IAM を使用してリソースへのクロスアカウントアクセスを許可できます。これを行うには、共有するリソースにポリシーを直接アタッチするか、ロールをプロキシとして使用します。

リソースを直接共有するには、共有するリソースで[リソースベースのポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_access-management.html#intro-access-resource-based-policies)がサポートされている必要があります。ロールの ID ベースのポリシーとは異なり、リソースベースのポリシーは、そのリソースにアクセスできるユーザー (プリンシパル) を指定します。

リソースベースのポリシーがサポートされていない別のアカウントのリソースにアクセスする場合は、ロールをプロキシとして使用します。

これらのポリシータイプの違いの詳細については、「[アイデンティティベースおよびリソースベースのポリシー](access_policies_identity-vs-resource.md)」を参照してください。

**注記**  
IAM ロールとリソースベースのポリシーは、単一のパーティション内のアカウント間でのみアクセスを委任します。例えば、標準 `aws` パーティションの米国西部 (北カリフォルニア) にアカウントがあるとします。`aws-cn` パーティションの中国にもアカウントがあります。中国のアカウントのリソースベースのポリシーを使用して、標準 AWS アカウントのユーザーにアクセスを許可することはできません。

## ロールを使用したクロスアカウントアクセス
<a name="access_policies-cross-account-using-roles"></a>

すべての AWS のサービスがリソースベースのポリシーをサポートしているわけではありません。これらのサービスでは、複数のサービスへのクロスアカウントアクセスを提供する際に、クロスアカウント IAM ロールを使用して許可管理を一元化できます。クロスアカウント IAM ロールとは、別の AWS アカウントの IAM プリンシパルがそのロールを引き受けることを許可する[信頼ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#term_trust-policy)を含む IAM ロールです。簡単に言えば、ある AWS アカウントで、特定のアクセス許可を別の AWS アカウントに委任するロールを作成できます。

ポリシーを IAM ID にアタッチする方法については、「[IAM ポリシーを管理する](access_policies_manage.md)」を参照してください。

**注記**  
プリンシパルがロールのアクセス許可の一時的な使用のためにそのロールに切り替えた場合、プリンシパルは元のアクセス許可を放棄して、引き受けたロールに割り当てられたアクセス許可を引き継ぎます。

では、ユーザーアカウントにアクセスする必要がある APN パートナーソフトウェアに適用されるプロセス全体を見ていきましょう。

1. ユーザーは、APN パートナーが必要とする、Amazon S3 リソースへのアクセスを許可するポリシーを含む IAM ロールを、自分のアカウントに作成します。この例では、ロール名は `APNPartner` です。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "s3:*",
               "Resource": [
                   "arn:aws:s3:::bucket-name"
               ]
           }
       ]
   }
   ```

------

1. 次に、ユーザーは、`APNPartner` ロールの[信頼ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html)に APN パートナーの AWS アカウント ID を提供して、パートナーの AWS アカウントがそのロールを引き受けることができるように指定します。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:role/APN-user-name"
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

1. ユーザーはロールの Amazon リソースネーム (ARN) を APN パートナーに渡します。ARN はロールの完全修飾名です。

   ```
   arn:aws:iam::Customer-Account-ID:role/APNPartner
   ```
**注記**  
マルチテナントの状況では、外部 ID を使用することをお勧めします。詳細については、「[第三者が所有する AWS アカウント へのアクセス](id_roles_common-scenarios_third-party.md)」を参照してください。

1. APN パートナーのソフトウェアがユーザーのアカウントにアクセスする必要がある場合、ソフトウェアはユーザーのアカウント内のロールの ARN を指定して AWS Security Token Service の [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) API を呼び出します。STS は、ソフトウェアが処理を実行できるようにする一時的な AWS 認証情報を返します。

ロールを使用してクロスアカウントアクセスを付与する別の例については、「[所有している別の AWS アカウント内の IAM ユーザーに対するアクセス](id_roles_common-scenarios_aws-accounts.md)」を参照してください。「[IAM チュートリアル: AWS アカウント間の IAM ロールを使用したアクセスの委任](tutorial_cross-account-with-roles.md)」の手順に従うこともできます。

## リソースベースのポリシーを使用したクロスアカウントアクセス
<a name="access_policies-cross-account-using-resource-based-policies"></a>

あるアカウントがリソースベースのポリシーを使用して別のアカウント経由でリソースにアクセスする場合、プリンシパルは引き続き信頼されたアカウントで動作するため、ロールのアクセス許可を受け取るためにプリンシパル自体のアクセス許可を放棄する必要はありません。つまり、プリンシパルは信頼されたアカウントのリソースに引き続きアクセスできるだけでなく、信頼されたアカウントのリソースにもアクセスできます。これは、他のアカウントに属する共有リソースから、また共有リソースへと情報をコピーするといったタスクにおいて便利です。

リソースベースのポリシーで指定できるプリンシパルには、アカウント、IAM ユーザー、AWS STS フェデレーションユーザーのプリンシパル、SAML フェデレーティッドプリンシパル、OIDC フェデレーティッドプリンシパル、IAM ロール、引き受けたロールのセッション、AWS サービスが含まれています。詳細については、「[プリンシパルの指定](https://docs.aws.amazon.com//IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying)」を参照してください。

信頼ゾーン (信頼された組織またはアカウント) 外にあるアカウントのプリンシパルにロールを引き受けるアクセス権があるかどうかについては、「[外部エンティティと共有されているリソースを識別する](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html#what-is-access-analyzer-resource-identification)」を参照してください。

リソースベースのポリシーをサポートする AWS サービスの一部を以下に示します。プリンシパルではなくリソースへのアクセス許可ポリシーのアタッチをサポートする AWS サービスの数が増えている完全なリストについては、[IAM と連携する AWS のサービス](reference_aws-services-that-work-with-iam.md) をご参照の上、[**リソースベース**] 列で [**はい**] のあるサービスをお探しください。
+ **Amazon S3 バケット** – ポリシーはバケットにアタッチされますが、ポリシーによってバケットとバケット内のオブジェクトの両方へのアクセスが制御されます。詳細については、「Amazon Simple Storage Service ユーザーガイド」の「[Amazon S3 のバケットポリシー](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html)」を参照してください。状況によっては、Amazon S3 へのクロスアカウントアクセスにロールを使うのが最適な場合もあります。詳細については、*Amazon Simple Storage Service ユーザーガイド*の「[チュートリアル例」](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-walkthroughs-managing-access.html)を参照してください。
+ **Amazon Simple Notiﬁcation Service (Amazon SNS) のトピック** – 詳細については、「*Amazon Simple Notification Service デベロッパーガイド*」の「[Amazon SNS アクセスコントロールのケース例](https://docs.aws.amazon.com//sns/latest/dg/sns-access-policy-use-cases.html)」を参照してください。
+ **Amazon Simple Queue Service (Amazon SQS) キュー** — 詳細については、[Amazon Simple Queue Service 開発者ガイド](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html)の「*付録:アクセスポリシー言語*」を参照してください。

## リソースベースのポリシーで AWS アクセス許可を委任する
<a name="access_policies-cross-account-delegating-resource-based-policies"></a>

リソースがアカウントのプリンシパルにアクセス許可を付与する場合は、そのアクセス許可を特定の IAM ID に委任できます。ID とは、ユーザー、ユーザーのグループ、またはアカウント内のロールです。アクセス許可を委任するには、ポリシーを ID にアタッチします。リソース所有アカウントによって許可される最大数のアクセス許可を付与できます。

**重要**  
クロスアカウントアクセスでは、プリンシパルは ID ポリシー**および**リソースベースのポリシー内に `Allow` を必要とします。

リソースベースのポリシーにより、アカウント内のすべてのプリンシパルがリソースへの完全な管理アクセスを許可するとします。すると、AWS アカウントで、プリンシパルへの完全アクセス、読み取り専用アクセス、またはその他の部分的なアクセスを委任できます。また、リソースベースのポリシーでリストアクセス許可のみが許可される場合は、リストアクセスのみを委任できます。アカウントが保持しているものよりも多くのアクセス許可を委任しようとしても、プリンシパルが保持できるのは一覧表示アクセスのみになります。

これらの決定方法の詳細については、「[アカウント内でのリクエストの許可または拒否の決定](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic_policy-eval-denyallow.html)」を参照してください。

**注記**  
IAM ロールとリソースベースのポリシーは、単一のパーティション内のアカウント間でのみアクセスを委任します。たとえば、標準 `aws` パーティションのアカウントと `aws-cn` パーティションのアカウントの間にクロスアカウントアクセスを追加することはできません。

たとえば、`AccountA` と `AccountB` を管理するとします。AccountA には、`BucketA` という名前の Amazon S3 バケットがあります。

![\[Amazon S3 バケット用に作成されたリソースベースのポリシーにより、AccountA に AccountB のアクセス許可が提供されます。\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/access_policies-cross-account.png)


1. AccountB のすべてのプリンシパルにバケット内のオブジェクトへのフルアクセスを許可するリソースベースのポリシーを `BucketA` にアタッチします。プリンシパルは、そのバケット内の任意のオブジェクトを作成、読み取り、または削除できます。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "PrincipalAccess",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:root"
               },
               "Action": "s3:*",
               "Resource": "arn:aws:s3:::BucketA/*"
           }
       ]
   }
   ```

------

   AccountA は、リソースベースのポリシーで AccountB をプリンシパルとして指定することにより、AccountB に BucketA へのフルアクセスを許可します。その結果、AccountB は BucketA に対してあらゆるアクションを実行する権限が与えられるため、AccountB の管理者は AccountB のユーザーにアクセスを委任できるようになります。

   AccountB ルートユーザーは、アカウントに付与されるすべてのアクセス許可を保持しています。したがって、ルートユーザーは BucketA へのフルアクセスを保持しています。

1. AccountB で、User2 という名前の IAM ユーザーにポリシーをアタッチします。このポリシーにより、ユーザーは BucketA 内のオブジェクトへの読み取り専用アクセスが許可されます。つまり、User2 はオブジェクトを表示できますが、オブジェクトの作成、編集、または削除を行うことはできません。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect" : "Allow", 
               "Action" : [ 
                   "s3:Get*", 
                   "s3:List*" ], 
                   "Resource" : "arn:aws:s3:::BucketA/*" 
           } 
       ]
   }
   ```

------

   AccountB が委任できるアクセスの最大レベルは、アカウントに付与されるアクセスレベルです。この場合、リソースベースのポリシーにより AccountB  へのフルアクセスが付与されますが、User2 は読み取り専用アクセスのみが付与されます。

   AccountB の管理者は、User1 にはアクセス権を付与しません。デフォルトでは、ユーザーは明示的に付与されたアクセス許可以外のアクセス許可を保持していないため、User1 は BucketA にアクセスできません。

IAM では、プリンシパルがリクエストを行った時点でプリンシパルのアクセス許可が評価されます。ワイルドカード (\$1) を使用してリソースへのフルアクセスをユーザーに付与すると、プリンシパルは AWS アカウントがアクセスできるすべてのリソースにアクセスできます。これは、ユーザーのポリシーの作成後に追加またはアクセスを得るリソースに対しても当てはまります。

前の例では、AccountB がすべてのアカウントのすべてのリソースへのフルアクセスを許可するポリシーを User2 にアタッチしていた場合、User2 は AccountB がアクセスできるすべてのリソースに自動的にアクセスできるようになります。これには、BucketA へのアクセスと AccountA のリソースベースのポリシーによって付与されたその他のリソースへのアクセスが含まれます。

アプリケーションやサービスへのアクセス権の付与など、ロールの複雑な使用方法の詳細については、「[IAM ロールによく見られるシナリオ](id_roles_common-scenarios.md)」を参照してください。

**重要**  
信頼できるエンティティにだけアクセスを許可し、必要最少レベルのアクセスを提供します。信頼されたエンティティが別の AWS アカウントである場合は常に、任意の IAM プリンシパルにリソースへのアクセスを許可できます。信頼された AWS アカウントは、アクセス権を付与された範囲でのみアクセス権を委任できますが、アカウント自身に付与された範囲を超えるアクセス権を委任することはできません。

権限、ポリシー、ポリシーを作成するのに使用するアクセス許可ポリシー言語の詳細については、「[AWS リソースの アクセス管理](access.md)」を参照してください。

# 転送アクセスセッション
<a name="access_forward_access_sessions"></a>

転送アクセスセッション (FAS) は、AWS サービスがユーザーに代わってリクエストを行ったときに ID、権限、セッション属性を渡すために AWS サービスが使用する IAM テクノロジーです。FAS は、AWS サービスを呼び出す ID の権限を使用し、AWS サービスの ID と組み合わせて、ダウンストリームのサービスに対してリクエストを行います。FAS リクエストは、他の AWS サービスやリソースとのやり取りを完了する必要があるリクエストをサービスが受信した後、IAM プリンシパルに代わって AWS サービスに対してのみ行われます。FAS リクエストが行われた場合:
+ IAM プリンシパルから最初のリクエストを受け取るサービスは、IAM プリンシパルの権限を確認します。
+ 後続の FAS リクエストを受信するサービスも、同じ IAM プリンシパルの権限を確認します。

例えば、[SSE-KMS](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) を使用してオブジェクトを暗号化した場合、Amazon S3 は FAS を使用してオブジェクトを復号化するための呼び出しを AWS Key Management Service に対して行います。SSE-KMS 暗号化オブジェクトをダウンロードするとき、**data-reader** という名前のロールは Amazon S3 に対してオブジェクトの GetObject を呼び出し、直接 AWS KMS は呼び出しません。GetObject リクエストを受け取り、data-reader を承認すると、Amazon S3 は Amazon S3 オブジェクトを復号化するために FAS リクエストを AWS KMS に送信します。KMS は FAS リクエストを受信すると、ロールの権限を確認し、data-reader が KMS キーに対して正しい権限を持っている場合にのみ復号化リクエストを承認します。Amazon S3 と AWS KMS の両方へのリクエストは、ロールの権限を使用して承認され、data-reader が Amazon S3 オブジェクトと AWS KMS キーの両方に対する権限を持っている場合にのみ成功します。

![\[IAM ロールがプリンシパルとして Amazon S3 に渡されてから AWS KMS に渡されるフロー図。\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/access-fas-example.png)


**注記**  
FAS リクエストを受け取ったサービスによって、追加の FAS リクエストを行うことができます。このような場合、要求元のプリンシパルは、FAS によって呼び出されるすべてのサービスに対する権限を持っている必要があります。

## FAS リクエストと IAM ポリシー条件
<a name="access_fas_policy_conditions"></a>

FAS リクエストが行われると、[aws:CalledVia](reference_policies_condition-keys.md#condition-keys-calledvia)、[aws:CalledViaFirst](reference_policies_condition-keys.md#condition-keys-calledviafirst)、および [aws:CalledViaLast](reference_policies_condition-keys.md#condition-keys-calledvialast) 条件キーには、FAS 呼び出しを開始したサービスのサービスプリンシパルが入力されます。[aws:ViaAWSService](reference_policies_condition-keys.md#condition-keys-viaawsservice) 条件キーの値は、FAS リクエストが行われると常に `true` に設定されます。以下の図では、CloudFormation への直接のリクエストには、`aws:CalledVia` または `aws:ViaAWSService` 条件キーが設定されていません。CloudFormation と DynamoDB がロールに代わってダウンストリームの FAS リクエストを行うと、これらの条件キーの値が入力されます。

![\[IAM ロールがプリンシパルとして CloudFormation に渡され、その条件キー値が DynamoDB と AWS KMS に渡されるフロー図。\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/access-fas-example2.png)


ソース IP アドレスまたはソース VPC をテストする条件キーを含む拒否ポリシーステートメントによって拒否される場合に FAS リクエストを行えるようにするには、条件キーを使用して拒否ポリシーで FAS リクエストの例外を設定する必要があります。これは、`aws:ViaAWSService` 条件キーを使用することですべての FAS リクエストに対して実行できます。特定の AWS サービスのみが FAS リクエストを行えるようにするには、`aws:CalledVia` を使用してください。

**重要**  
VPC エンドポイントを介して最初のリクエストが行われた後に FAS リクエストが行われた場合、最初のリクエストの `aws:SourceVpce`、`aws:SourceVpc`、および `aws:VpcSourceIp` の条件キー値は FAS リクエストでは使用されません。`aws:VPCSourceIP` または `aws:SourceVPCE` を使用してポリシーを作成し、条件付きでアクセスを許可する場合は、`aws:ViaAWSService` または `aws:CalledVia` を使用して FAS リクエストを許可する必要もあります。パブリック AWS サービスエンドポイントが最初のリクエストを受信した後に FAS リクエストが行われると、それ以降の FAS リクエストは同じ `aws:SourceIP` 条件キー値で行われます。

## 例: VPC からの、または FAS を使用した Amazon S3 アクセスの許可
<a name="access_fas_example"></a>

次の IAM ポリシーの例では、Amazon S3 GetObject リクエストと Athena リクエストは、*example\$1vpc* にアタッチされた VPC エンドポイントから送信された場合、またはリクエストが Athena によって作成された FAS リクエストである場合にのみ許可されます。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "OnlyAllowMyIPs",
      "Effect": "Allow",
      "Action": [
        "s3:GetObject*",
        "athena:StartQueryExecution",
        "athena:GetQueryResults",
        "athena:GetWorkGroup",
        "athena:StopQueryExecution",
        "athena:GetQueryExecution"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:SourceVPC": [
          "vpc-111bbb22"
          ]
        }
      }
    },
    {
      "Sid": "OnlyAllowFAS",
      "Effect": "Allow",
      "Action": [
        "s3:GetObject*"
      ],
      "Resource": "*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:CalledVia": "athena.amazonaws.com"
        }
      }
    }
  ]
}
```

------

条件キーを使用して FAS アクセスを許可するその他の例については、「[data perimeter example policy repo](https://github.com/aws-samples/data-perimeter-policy-examples)」を参照してください。

# IAM アイデンティティベースのポリシーの例
<a name="access_policies_examples"></a>

[ポリシー](access_policies.md)は AWS のオブジェクトであり、アイデンティティやリソースに関連付けて、これらのアクセス許可を定義します。AWS は、IAM プリンシパル (ユーザーまたはロール) によってリクエストが行われると、それらのポリシーを評価します。ポリシーでの権限により、リクエストが許可されるか拒否されるかが決まります。通常、ポリシーは、IAM エンティティ (ユーザー、ユーザーのグループ、ロール) にアタッチされている JSON ドキュメントとして AWS に保存されます。アイデンティティベースのポリシーには、AWS 管理ポリシー、カスタマー管理ポリシー、およびインラインポリシーがあります。これらの例の JSON ポリシードキュメントを使用して IAM ポリシーを作成する方法については、「[JSON エディターを使用したポリシーの作成](access_policies_create-console.md#access_policies_create-json-editor)」を参照してください。

デフォルトではすべてのリクエストが拒否されるため、その ID がアクセスするサービス、アクション、リソースへのアクセスを許可する必要があります。IAM コンソールで指定したアクションを完了するためのアクセスも許可する場合は、追加のアクセス許可を提供する必要があります。

以下のポリシーのライブラリは、IAM ID のアクセス許可を定義する参考になります。必要なポリシーを見つけたら、[**View this policy (このポリシーを表示)**] を選択してそのポリシーの JSON を表示します。JSON のポリシードキュメントをテンプレートとして使用して、独自のポリシーを作成できます。

**注記**  
このリファレンスガイドに含めるポリシーを送信する場合は、このページの下部にある [**フィードバック**] ボタンを使用します。

## ポリシーの例: AWS
<a name="policy_library_AWS"></a>
+ 特定の日付範囲内のアクセスを許可します。([このポリシーを表示](reference_policies_examples_aws-dates.md)。)
+ AWS リージョンの有効化と無効化 ([このポリシーを表示](reference_policies_examples_aws-enable-disable-regions.md)。)
+ MFA で認証されたユーザーが **[セキュリティ認証情報]** ページで自分の認証情報を管理できるようにします。([このポリシーを表示](reference_policies_examples_aws_my-sec-creds-self-manage.md)。)
+ 指定した日付の範囲内で MFA を使用したときに特定のアクセスを許可する。([このポリシーを表示](reference_policies_examples_aws_mfa-dates.md)。)
+ ユーザーが **[セキュリティ認証情報]** ページで自分の認証情報を管理できるようにします。([このポリシーを表示](reference_policies_examples_aws_my-sec-creds-self-manage-no-mfa.md)。)
+ ユーザーが **[セキュリティ認証情報]** ページで自分の MFA デバイスを管理できるようにします。([このポリシーを表示](reference_policies_examples_aws_my-sec-creds-self-manage-mfa-only.md)。)
+ ユーザーが **[セキュリティ認証情報]** ページで自分のパスワードを管理できるようにします。([このポリシーを表示](reference_policies_examples_aws_my-sec-creds-self-manage-password-only.md)。)
+ ユーザーが **[セキュリティ認証情報]** ページで自分のパスワード、アクセスキー、および SSH パブリックキーを管理できるようにします。([このポリシーを表示](reference_policies_examples_aws_my-sec-creds-self-manage-pass-accesskeys-ssh.md)。)
+ リクエストされたリージョンに基づいて、AWS へのアクセスを拒否する ([このポリシーを表示](reference_policies_examples_aws_deny-requested-region.md)。)
+ 送信元 IP に基づいて AWS へのアクセスを拒否する ([このポリシーを表示](reference_policies_examples_aws_deny-ip.md)。)

## ポリシーの例: AWS Data Exchange
<a name="policy_data_exchange"></a>
+ AWS Data Exchange 以外のアカウント外の Amazon S3 リソースへのアクセスを拒否します。([このポリシーを表示](reference_policies_examples_resource_account_data_exch.md)。)

## ポリシーの例: AWS Data Pipeline
<a name="policy_library_DataPipeline"></a>
+ ユーザーが作成していないパイプラインへのアクセスを拒否する ([このポリシーを表示](reference_policies_examples_datapipeline_not-owned.md))。

## ポリシーの例: Amazon DynamoDB
<a name="policy_library_DynamoDB"></a>
+ 特定の Amazon DynamoDB テーブルへのアクセスを許可する ([このポリシーを表示](reference_policies_examples_dynamodb_specific-table.md))。
+ 特定の Amazon DynamoDB 属性へのアクセスを許可する ([このポリシーを表示](reference_policies_examples_dynamodb_attributes.md))。
+ Amazon Cognito ID に基づいて Amazon DynamoDB への項目レベルのアクセスを許可する ([このポリシーを表示](reference_policies_examples_dynamodb_items.md))。

## ポリシーの例: Amazon EC2
<a name="policy_library_ec2"></a>
+ タグに基づいて Amazon EC2 インスタンスに Amazon EBS ボリュームをアタッチまたはデタッチすることを許可する ([このポリシーを表示](reference_policies_examples_ec2_ebs-owner.md))。
+ 特定のサブネットで、プログラムおよびコンソールで Amazon EC2 インスタンスを起動することを許可する ([このポリシーを表示](reference_policies_examples_ec2_instances-subnet.md))
+ 特定の VPC に関連付けられた Amazon EC2 セキュリティグループを、プログラムによりコンソールで管理することを許可する ([このポリシーを表示](reference_policies_examples_ec2_securitygroups-vpc.md))。
+ ユーザーがタグ付けした Amazon EC2 インスタンスをプログラムによりコンソールで開始や停止を行うことを許可する ([このポリシーを表示](reference_policies_examples_ec2_tag-owner.md))。
+ Amazon EC2 インスタンスを、リソースおよびプリンシパルのタグに基づき、プログラムを使用する、およびコンソールで開始または停止することを許可する ([このポリシーを表示](reference_policies_examples_ec2-start-stop-tags.md))。
+ リソースとプリンシパルのタグが一致すると、Amazon EC2 インスタンスの開始または停止を許可する ([このポリシーを表示](reference_policies_examples_ec2-start-stop-match-tags.md))。
+ 特定のリージョンでの完全な Amazon EC2 アクセスをプログラムによりコンソールで許可する ([このポリシーを表示](reference_policies_examples_ec2_region.md)。)
+ プログラムおよびコンソールで特定の Amazon EC2 インスタンスの起動または停止、および特定のセキュリティグループの変更を許可する ([このポリシーを表示](reference_policies_examples_ec2_instance-securitygroup.md))
+ MFA なしで特定の Amazon EC2 オペレーションへのアクセスを拒否する ([このポリシーを表示](reference_policies_examples_ec2_require-mfa.md))。
+ Amazon EC2 インスタンスの削除を特定の IP アドレス範囲に制限する ([このポリシーを表示](reference_policies_examples_ec2_terminate-ip.md))

## ポリシーの例: AWS Identity and Access Management (IAM)
<a name="policy_library_IAM"></a>
+ Policy Simulator API へのアクセスを許可する ([このポリシーを表示](reference_policies_examples_iam_policy-sim.md))。
+ Policy Simulator コンソールへのアクセスを許可する ([このポリシーを表示](reference_policies_examples_iam_policy-sim-console.md))。
+ 特定のタグを持つロールを引き受けることをプログラムによりコンソールで許可する ([このポリシーを表示](reference_policies_examples_iam-assume-tagged-role.md))。
+ 複数のサービスへのアクセスをプログラムによりコンソールで許可および拒否する ([このポリシーを表示](reference_policies_examples_iam_multiple-services-console.md))。
+ 特定のタグを、別の特定のタグ、プログラム、およびコンソールで IAM ユーザーに追加することを許可する ([このポリシーを表示](reference_policies_examples_iam-add-tag.md))。
+ 任意の IAM ユーザーまたはロールに、特定のタグをプログラムによりコンソールで追加することを許可する ([このポリシーを表示](reference_policies_examples_iam-add-tag-user-role.md))。
+ 特定のタグでのみ新規ユーザーを作成することを許可する ([このポリシーを表示](reference_policies_examples_iam-new-user-tag.md))。
+ IAM 認証情報レポートの生成および取得を許可する ([このポリシーを表示](reference_policies_examples_iam-credential-report.md))。
+ グループメンバーをプログラムによりコンソールで管理することを許可する ([このポリシーを表示](reference_policies_examples_iam_manage-group-membership.md))。
+ 特定のタグの管理を許可する ([このポリシーを表示](reference_policies_examples_iam-manage-tags.md))。
+ IAM ロールを特定のサービスに渡すことを許可する ([このポリシーを表示](reference_policies_examples_iam-passrole-service.md))。
+ レポートなしでの IAM コンソールへの読み取り専用アクセスを許可する ([このポリシーを表示](reference_policies_examples_iam_read-only-console-no-reporting.md))。
+ IAM コンソールへの読み取り専用アクセスを許可する ([このポリシーを表示](reference_policies_examples_iam_read-only-console.md))。
+ 特定のユーザーによるグループの管理をプログラムによりコンソールで許可する ([このポリシーを表示](reference_policies_examples_iam_users-manage-group.md))。
+ アカウントのパスワード要件の設定をプログラムによりコンソールで許可する ([このポリシーを表示](reference_policies_examples_iam_set-account-pass-policy.md))。
+ 特定のパスがあるユーザーに Policy Simulator API の使用を許可する ([このポリシーを表示](reference_policies_examples_iam_policy-sim-path.md))。
+ 特定のパスがあるユーザーに Policy Simulator コンソールの使用を許可する ([このポリシーを表示](reference_policies_examples_iam_policy-sim-path-console.md))。
+ IAM: ユーザーに MFA デバイスの自己管理を許可する ([このポリシーを表示](reference_policies_examples_iam_mfa-selfmanage.md)。)
+ IAM ユーザーが自分の認証情報をプログラムまたはコンソールで設定することを許可する。([このポリシーを表示](reference_policies_examples_iam_credentials_console.md)。)
+ IAM コンソールで AWS Organizations ポリシーのサービスの最終アクセス情報を表示することを許可する。([このポリシーを表示](reference_policies_examples_iam_service-accessed-data-orgs.md)。)
+ IAM ユーザー、グループ、またはロールに適用できる管理ポリシーを制限する ([このポリシーを表示](reference_policies_examples_iam_limit-managed.md))。
+ アカウント内の IAM ポリシーにのみアクセスを許可します ([このポリシーを表示](resource_examples_iam_policies_resource_account.md))。

## ポリシーの例: AWS Lambda
<a name="policy_library_Lambda"></a>
+ Amazon DynamoDB テーブルにアクセスする AWS Lambda 関数を許可する ([このポリシーを表示](reference_policies_examples_lambda-access-dynamodb.md))。

## ポリシーの例: Amazon RDS
<a name="policy_library_RDS"></a>
+ Amazon RDS は、特定のリージョン内で RDS データベースへのフルアクセスを許可します。([このポリシーを表示](reference_policies_examples_rds_region.md)。)
+ Amazon RDS データベースをプログラムおよびコンソールで復元することを許可する ([このポリシーを表示](reference_policies_examples_rds_db-console.md))
+ タグ所有者にタグ付けした Amazon RDS リソースへのフルアクセスを許可する ([このポリシーを表示](reference_policies_examples_rds_tag-owner.md))

## ポリシーの例: &Amazon S3
<a name="policy_library_S3"></a>
+ Amazon Cognito ユーザーが自分の Amazon S3 バケットのオブジェクトにアクセスすることを許可する ([このポリシーを表示](reference_policies_examples_s3_cognito-bucket.md))
+ 一時的な認証情報を持つユーザーが Amazon S3 にある自分のホームディレクトリにプログラムを使用してコンソール内でアクセスできるようにします ([このポリシーを表示](reference_policies_examples_s3_federated-home-directory-console.md))
+ 完全な S3 アクセスを許可しても、管理者が過去 30 分以内に MFA を使用してサインインしていない場合は本番稼働用バケットへのアクセスを明示的に拒否する ([このポリシーを表示](reference_policies_examples_s3_full-access-except-production.md))。
+ IAM ユーザーが Amazon S3 の自分のホームディレクトリにプログラムおよびコンソールでアクセスすることを許可する ([このポリシーを表示](reference_policies_examples_s3_home-directory-console.md))
+ ユーザーに 1 つの Amazon S3 バケットの管理を許可し、他のすべての AWS アクションおよびリソースを拒否する ([このポリシーを表示](reference_policies_examples_s3_deny-except-bucket.md))。
+ 特定の Amazon S3 バケットへの `Read` と `Write` アクセスを許可する ([このポリシーを表示](reference_policies_examples_s3_rw-bucket.md))
+ 特定の Amazon S3 バケットにプログラムおよびコンソールで `Read` および `Write` アクセスを許可する ([このポリシーを表示](reference_policies_examples_s3_rw-bucket-console.md))

# AWS: 日付と時刻に基づいてアクセスを許可します
<a name="reference_policies_examples_aws-dates"></a>

この例では、日付と時刻に基づいてアクションへのアクセスを許可する ID ベースポリシーを作成する方法を示します。このポリシーは、2020 年 4 月 1 日から 2020 年 6 月 30 日 (UTC) の間に発生するアクションへのアクセスを制限します。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

IAM ポリシーの `Condition` ブロック内で複数の条件を使用する方法については、「[条件内の複数の値](reference_policies_elements_condition.md#Condition-multiple-conditions)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "service-prefix:action-name",
            "Resource": "*",
            "Condition": {
                "DateGreaterThan": {"aws:CurrentTime": "2020-04-01T00:00:00Z"},
                "DateLessThan": {"aws:CurrentTime": "2020-06-30T23:59:59Z"}
            }
        }
    ]
}
```

------

**注記**  
日付条件演算子でポリシー変数を使用することはできません。詳細については、「[条件の要素](reference_policies_variables.md#policy-vars-conditionelement)」を参照してください。

# AWS: AWS リージョンの有効化と無効化を許可する
<a name="reference_policies_examples_aws-enable-disable-regions"></a>

この例は、管理者がアジアパシフィック (香港) リージョン (ap-east-1) を有効化および無効化できるようにする ID ベースポリシーの作成方法を示しています。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。この設定は、AWS マネジメントコンソール の [**アカウント設定**] ページに表示されます。このページには、アカウント管理者のみが表示および管理する必要がある機密アカウントレベルの情報が含まれています。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

**重要**  
デフォルトで有効になっているリージョンを有効または無効にすることはできません。デフォルトで*無効*になっているリージョンのみを含めることができます。詳細については、「AWS 全般のリファレンス」の「[AWS リージョンの管理](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "EnableDisableHongKong",
            "Effect": "Allow",
            "Action": [
                "account:EnableRegion",
                "account:DisableRegion"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {"account:TargetRegion": "ap-east-1"}
            }
        },
        {
            "Sid": "ViewConsole",
            "Effect": "Allow",
            "Action": [
                "account:ListRegions"
            ],
            "Resource": "*"
        }
    ]
}
```

------

# AWS: MFA で認証された IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします
<a name="reference_policies_examples_aws_my-sec-creds-self-manage"></a>

この例は、[多要素認証 (MFA)](id_credentials_mfa.md) を使用して認証された IAM ユーザーが、**[セキュリティ認証情報]** ページで自分の認証情報を管理できるようにする ID ベースポリシーを作成する方法を示しています。この AWS マネジメントコンソール ページには、アカウント ID や正規ユーザー ID などのアカウント情報が表示されます。ユーザーは、自分のパスワード、アクセスキー、MFA デバイス、X.509 証明書、SSH キー、および Git 認証情報を表示および編集することもできます。この例では、必要なアクセス許可がポリシーに含まれているページ上のすべての情報を表示および編集する手順について説明します。また、AWS で他のオペレーションを実行する前に、ユーザーに MFA を使用した設定と認証を要求します。ユーザーに MFA を使用せずに自らの認証情報を管理することを許可するには、「[AWS: IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします](reference_policies_examples_aws_my-sec-creds-self-manage-no-mfa.md)」を参照してください。

ユーザーが **[セキュリティ認証情報]** ページにアクセスする方法については、「[IAM ユーザー自身によるパスワードの変更方法 (コンソール)](id_credentials_passwords_user-change-own.md#ManagingUserPwdSelf-Console)」を参照してください。

**注記**  
このポリシー例では、初めて AWS マネジメントコンソール にサインインする際のパスワードのリセットをユーザーに許可していません。新しいユーザーがサインインするまで、当該ユーザーにアクセス権を許可しないことをお勧めします。詳細については、「[IAM ユーザーを安全に作成するにはどうすればよいですか?](troubleshoot.md#troubleshoot_general_securely-create-iam-users)」を参照してください。また、これにより失効したパスワードを持つユーザーは、サインイン中にパスワードをリセットできなくなります。この操作を許可するには、`iam:ChangePassword` と `iam:GetAccountPasswordPolicy` をステートメント `DenyAllExceptListedIfNoMFA` に追加します。ただし、ユーザーが多要素認証（MFA） なしで自分のパスワードを変更できるようになると、セキュリティ上のリスクが生じる可能性があるためこれを推奨しません。
このポリシーをプログラムによるアクセスに使用する場合は、[https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html) を呼び出して MFA で認証します。詳細については、[MFA を使用した安全な API アクセス](id_credentials_mfa_configure-api-require.md) を参照してください。

**このポリシーで行うこと**
+ この `AllowViewAccountInfo` ステートメントでは、ユーザーにアカウントレベルの情報を表示します。これらのアクセス許可は、リソース ARN をサポートしていないか、または指定する必要がないため、独自のステートメントに含まれている必要があります。代わりに `"Resource" : "*"` を指定するアクセス許可を使用します。このステートメントには、ユーザーが特定の情報を表示できるようにする以下のアクションが含まれています。
  + `GetAccountPasswordPolicy` – IAM ユーザーパスワードを変更しながら、アカウントのパスワード要件を表示します。
  + `ListVirtualMFADevices` – ユーザーに対して有効になっている仮想 MFA デバイスに関する詳細を表示します。
+ `AllowManageOwnPasswords` ステートメントを使用すると、ユーザーは自分のパスワードを変更できます。このステートメントには `GetUser` アクションも含まれています。これは、**[My security credentials]** (セキュリティ認証情報) ページのほとんどの情報を表示するために必要です。
+ この `AllowManageOwnAccessKeys` ステートメントにより、ユーザーは自分のアクセスキーを作成、更新、削除できます。ユーザーは指定されたアクセスキーの最後の使用時の情報を取得することもできます。
+ この `AllowManageOwnSigningCertificates` ステートメントにより、ユーザーは自分のデジタル署名用証明書をアップロード、更新、削除できます。
+ この `AllowManageOwnSSHPublicKeys` ステートメントにより、ユーザーは自分の CodeCommit の SSH パブリックキーをアップロード、更新、削除できます。
+ `AllowManageOwnGitCredentials` ステートメントにより、ユーザーは自分の CodeCommit の Git 認証情報をアップロード、更新、削除できます。
+ この `AllowManageOwnVirtualMFADevice` ステートメントにより、ユーザーは自分の仮想 MFA デバイスを作成できます。このステートメントのリソース ARN によって、ユーザーが任意の名前の MFA デバイスを作成できますが、ポリシー内の他のステートメントでは、ユーザーはデバイスを現在サインインしているユーザーにしかアタッチできません。
+ この `AllowManageOwnUserMFA` ステートメントでは、ユーザーは自分のユーザーの仮想、U2F、またはハードウェア MFA デバイスを表示または管理できます。このステートメントのリソース ARN は、ユーザー自身の IAM ユーザーにのみアクセスを許可します。ユーザーは他のユーザーの MFA デバイスを表示または管理することはできません。
+ `DenyAllExceptListedIfNoMFA` ステートメントは、ユーザーが MFA でサインインしていない***場合のみ***、いくつかのリストされたアクションを除いて、すべての AWS のサービスのすべてのアクションへのアクセスを拒否します。このステートメントでは、`"Deny"` と `"NotAction"` の組み合わせを使用して、表示されていないすべてのアクションへのアクセスを明示的に拒否しています。リストされている項目は、このステートメントによって拒否または許可されていません。ただし、アクションはポリシー内の他のステートメントによって許可されています。このステートメントのロジックの詳細については、「[Deny での NotAction の使用](reference_policies_elements_notaction.md)」を参照してください。ユーザーが MFA でサインインしている場合、`Condition` テストは失敗し、このステートメントはアクションを拒否しません。この場合、ユーザーの他のポリシーまたは文によってユーザーのアクセス許可が決まります。

  このステートメントは、ユーザーが MFA にサインインしていないときに、リストされているアクションのみを実行できることを保証します。さらに、他のステートメントまたはポリシーがそれらのアクションへのアクセスを許可している場合にのみ、リストされているアクションを実行できます。`iam:ChangePassword` アクションは MFA 認可なしには許可されないため、サインイン時にユーザーがパスワードを作成することはできません。

  `...IfExists` バージョンの `Bool` 演算子により、`aws:MultiFactorAuthPresent` キーが見つからない場合、条件は必ず true を返します。つまり､アクセスキーなどの長期認証情報を使用して API にアクセスするユーザーは IAM 以外の API オペレーションへのアクセスを拒否されます。

このポリシーでは、IAM コンソールで **[Users]** (ユーザー) ページを表示したり、そのページを使用して自分のユーザー情報にアクセスすることはできません。これを許可するには、 `iam:ListUsers` アクションを `AllowViewAccountInfo` ステートメントと `DenyAllExceptListedIfNoMFA` ステートメントに追加します。また、ユーザーが自分のユーザーページで自分のパスワードを変更することはできません。これを許可するには、`iam:GetLoginProfile` および `iam:UpdateLoginProfile` アクションを `AllowManageOwnPasswords` ステートメントに追加します。ユーザーが MFA を使用してサインインしなくても自分のユーザーページから自分のパスワードを変更できるようにするには、`DenyAllExceptListedIfNoMFA` ステートメントに`iam:UpdateLoginProfile` アクションを追加します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowViewAccountInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetAccountPasswordPolicy",
                "iam:ListVirtualMFADevices"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowManageOwnPasswords",
            "Effect": "Allow",
            "Action": [
                "iam:ChangePassword",
                "iam:GetUser"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnAccessKeys",
            "Effect": "Allow",
            "Action": [
                "iam:CreateAccessKey",
                "iam:DeleteAccessKey",
                "iam:ListAccessKeys",
                "iam:UpdateAccessKey",
                "iam:GetAccessKeyLastUsed"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnSigningCertificates",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteSigningCertificate",
                "iam:ListSigningCertificates",
                "iam:UpdateSigningCertificate",
                "iam:UploadSigningCertificate"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnSSHPublicKeys",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteSSHPublicKey",
                "iam:GetSSHPublicKey",
                "iam:ListSSHPublicKeys",
                "iam:UpdateSSHPublicKey",
                "iam:UploadSSHPublicKey"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnGitCredentials",
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceSpecificCredential",
                "iam:DeleteServiceSpecificCredential",
                "iam:ListServiceSpecificCredentials",
                "iam:ResetServiceSpecificCredential",
                "iam:UpdateServiceSpecificCredential"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnVirtualMFADevice",
            "Effect": "Allow",
            "Action": [
                "iam:CreateVirtualMFADevice"
            ],
            "Resource": "arn:aws:iam::*:mfa/*"
        },
        {
            "Sid": "AllowManageOwnUserMFA",
            "Effect": "Allow",
            "Action": [
                "iam:DeactivateMFADevice",
                "iam:EnableMFADevice",
                "iam:ListMFADevices",
                "iam:ResyncMFADevice"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "DenyAllExceptListedIfNoMFA",
            "Effect": "Deny",
            "NotAction": [
                "iam:CreateVirtualMFADevice",
                "iam:EnableMFADevice",
                "iam:GetUser",
                "iam:GetMFADevice",
                "iam:ListMFADevices",
                "iam:ListVirtualMFADevices",
                "iam:ResyncMFADevice",
                "sts:GetSessionToken"
            ],
            "Resource": "*",
            "Condition": {
                "BoolIfExists": {
                    "aws:MultiFactorAuthPresent": "false"
                }
            }
        }
    ]
}
```

------

# AWS: 特定の日付内で MFA を使用する特定のアクセスを許可する
<a name="reference_policies_examples_aws_mfa-dates"></a>

この例は、論理的な `AND` を使用して評価される複数の条件を使用する ID ベースポリシーを作成する方法を示しています。これにより、`SERVICE-NAME-1` という名前のサービスにフルアクセスでき、`ACTION-NAME-A` という名前のサービスの `ACTION-NAME-B` および `SERVICE-NAME-2` アクションにアクセスすることができます。これらのアクションは、[多要素認証 (MFA)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html) を使用してユーザーが認証された場合にのみ許可されます。アクセスは、2017 年 7 月 1 日から 2017 年 12 月 31 日 (UTC、7 月 1 日と 12 月 31 日を含む) までの間に発生するアクションに限定されます。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

IAM ポリシーの `Condition` ブロック内で複数の条件を使用する方法については、「[条件内の複数の値](reference_policies_elements_condition.md#Condition-multiple-conditions)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "service-prefix-1:*",
            "service-prefix-2:action-name-a",
            "service-prefix-2:action-name-b"
        ],
        "Resource": "*",
        "Condition": {
            "Bool": {"aws:MultiFactorAuthPresent": true},
            "DateGreaterThan": {"aws:CurrentTime": "2017-07-01T00:00:00Z"},
            "DateLessThan": {"aws:CurrentTime": "2017-12-31T23:59:59Z"}
        }
    }
}
```

------

# AWS: IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします
<a name="reference_policies_examples_aws_my-sec-creds-self-manage-no-mfa"></a>

この例は、IAM ユーザーが **[セキュリティ認証情報]** ページで自分のすべての認証情報を管理できるようにする ID ベースポリシーを作成する方法を示しています。この AWS マネジメントコンソール ページには、アカウント ID や正規ユーザー ID などのアカウント情報が表示されます。ユーザーは、自分のパスワード、アクセスキー、X.509 証明書、SSH キー、および Git 認証情報を表示および編集することもできます。この例では、ユーザーの MFA デバイス*以外の*必要なアクセス許可がポリシーに含まれているページ上のすべての情報を表示および編集する手順について説明します。ユーザーが MFA を使用して自らのすべての認証情報を管理することを許可するには、「[AWS: MFA で認証された IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします](reference_policies_examples_aws_my-sec-creds-self-manage.md)」を参照してください。

ユーザーが **[セキュリティ認証情報]** ページにアクセスする方法については、「[IAM ユーザー自身によるパスワードの変更方法 (コンソール)](id_credentials_passwords_user-change-own.md#ManagingUserPwdSelf-Console)」を参照してください。

**このポリシーで行うこと**
+ この `AllowViewAccountInfo` ステートメントでは、ユーザーにアカウントレベルの情報を表示します。これらのアクセス許可は、リソース ARN をサポートしていないか、または指定する必要がないため、独自のステートメントに含まれている必要があります。代わりに `"Resource" : "*"` を指定するアクセス許可を使用します。このステートメントには、ユーザーが特定の情報を表示できるようにする以下のアクションが含まれています。
  + `GetAccountPasswordPolicy` – IAM ユーザーパスワードを変更しながら、アカウントのパスワード要件を確認します。
  + `GetAccountSummary` – アカウント ID とアカウントの表示 [正規ユーザー ID](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html#FindingCanonicalId)。
+ `AllowManageOwnPasswords` ステートメントを使用すると、ユーザーは自分のパスワードを変更できます。このステートメントには `GetUser` アクションも含まれています。これは、**[My security credentials]** (セキュリティ認証情報) ページのほとんどの情報を表示するために必要です。
+ この `AllowManageOwnAccessKeys` ステートメントにより、ユーザーは自分のアクセスキーを作成、更新、削除できます。ユーザーは指定されたアクセスキーの最後の使用時の情報を取得することもできます。
+ この `AllowManageOwnSigningCertificates` ステートメントにより、ユーザーは自分のデジタル署名用証明書をアップロード、更新、削除できます。
+ この`AllowManageOwnSSHPublicKeys` ステートメントにより、ユーザーは自分の CodeCommit の SSH パブリックキーをアップロード、更新、削除できます。
+ この `AllowManageOwnGitCredentials` ステートメントにより、ユーザーは自分の CodeCommit の Git 認証情報をアップロード、更新、削除できます。

このポリシーでは、ユーザーは自分の MFA デバイスを表示または管理できません。このポリシーでは、IAM コンソールで **[Users]** (ユーザー) ページを表示したり、そのページを使用して自分のユーザー情報にアクセスすることもできません。これを許可するには、`iam:ListUsers` アクションを `AllowViewAccountInfo` ステートメントに追加します。また、ユーザーが自分のユーザーページで自分のパスワードを変更することはできません。これを許可するには、`iam:CreateLoginProfile`、`iam:DeleteLoginProfile`、`iam:GetLoginProfile`、および `iam:UpdateLoginProfile` アクションを `AllowManageOwnPasswords` ステートメントに追加します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowViewAccountInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetAccountPasswordPolicy",
                "iam:GetAccountSummary"       
            ],
            "Resource": "*"
        },       
        {
            "Sid": "AllowManageOwnPasswords",
            "Effect": "Allow",
            "Action": [
                "iam:ChangePassword",
                "iam:GetUser"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnAccessKeys",
            "Effect": "Allow",
            "Action": [
                "iam:CreateAccessKey",
                "iam:DeleteAccessKey",
                "iam:ListAccessKeys",
                "iam:UpdateAccessKey",
                "iam:GetAccessKeyLastUsed"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnSigningCertificates",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteSigningCertificate",
                "iam:ListSigningCertificates",
                "iam:UpdateSigningCertificate",
                "iam:UploadSigningCertificate"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnSSHPublicKeys",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteSSHPublicKey",
                "iam:GetSSHPublicKey",
                "iam:ListSSHPublicKeys",
                "iam:UpdateSSHPublicKey",
                "iam:UploadSSHPublicKey"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnGitCredentials",
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceSpecificCredential",
                "iam:DeleteServiceSpecificCredential",
                "iam:ListServiceSpecificCredentials",
                "iam:ResetServiceSpecificCredential",
                "iam:UpdateServiceSpecificCredential"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        }
    ]
}
```

------

# AWS: MFA で認証された IAM ユーザーが [セキュリティ認証情報] ページで自分の MFA デバイスを管理できるようにします
<a name="reference_policies_examples_aws_my-sec-creds-self-manage-mfa-only"></a>

この例は、[多要素認証 (MFA)](id_credentials_mfa.md) によって認証された IAM ユーザーが **[セキュリティ認証情報]** ページで自分の MFA デバイスを管理できるようにする ID ベースポリシーを作成する方法を示しています。この AWS マネジメントコンソール ページにはアカウントとユーザー情報が表示されますが、ユーザーは自分の MFA デバイスを表示および編集することしかできません。ユーザーに MFA を使用して自らのすべての認証情報を管理することを許可するには、「[AWS: MFA で認証された IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします](reference_policies_examples_aws_my-sec-creds-self-manage.md)」を参照してください。

**注記**  
このポリシーを設定した IAM ユーザーが MFA 認証されていない場合、このポリシーは、MFA を使用した認証に必要なアクションを除いて、すべての AWS アクションへのアクセスを拒否します。AWS CLI および AWS API を使用するには、IAM ユーザーはまず AWS STS [GetSessionToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html) オペレーションを使用して MFA トークンを取得し、次にそのトークンを使用して目的のオペレーションを認証する必要があります。リソースベースポリシーや他の ID ベースポリシーなどの他のポリシーを使用して、他のサービスでのアクションを許可できます。IAM ユーザーが MFA 認証されていない場合、同ポリシーはそのアクセスを拒否します。

ユーザーが **[セキュリティ認証情報]** ページにアクセスする方法については、「[IAM ユーザー自身によるパスワードの変更方法 (コンソール)](id_credentials_passwords_user-change-own.md#ManagingUserPwdSelf-Console)」を参照してください。

**このポリシーで行うこと**
+ この `AllowViewAccountInfo` ステートメントでは、ユーザーに対して有効になっている仮想 MFA デバイスに関する詳細を表示することを許可します。このアクセス許可は、リソース ARN の指定をサポートしていないため、独自のステートメント内になければなりません。または `"Resource" : "*"` を指定する必要があります。
+ この `AllowManageOwnVirtualMFADevice` ステートメントにより、ユーザーは自分の仮想 MFA デバイスを作成できます。このステートメントのリソース ARN によって、ユーザーが任意の名前の MFA デバイスを作成できますが、ポリシー内の他のステートメントでは、ユーザーはデバイスを現在サインインしているユーザーにしかアタッチできません。
+ この `AllowManageOwnUserMFA` ステートメントでは、ユーザーは自分のユーザーの仮想、U2F、またはハードウェア MFA デバイスを表示または管理できます。このステートメントのリソース ARN は、ユーザー自身の IAM ユーザーにのみアクセスを許可します。ユーザーは他のユーザーの MFA デバイスを表示または管理することはできません。
+ `DenyAllExceptListedIfNoMFA` ステートメントは、ユーザーが MFA でサインインしていない***場合のみ***、いくつかのリストされたアクションを除いて、すべての AWS のサービスのすべてのアクションへのアクセスを拒否します。このステートメントでは、`"Deny"` と `"NotAction"` の組み合わせを使用して、表示されていないすべてのアクションへのアクセスを明示的に拒否しています。リストされている項目は、このステートメントによって拒否または許可されていません。ただし、アクションはポリシー内の他のステートメントによって許可されています。このステートメントのロジックの詳細については、「[Deny での NotAction の使用](reference_policies_elements_notaction.md)」を参照してください。ユーザーが MFA でサインインしている場合、`Condition` テストは失敗し、このステートメントはアクションを拒否しません。この場合、ユーザーの他のポリシーまたは文によってユーザーのアクセス許可が決まります。

  このステートメントは、ユーザーが MFA にサインインしていないときに、リストされているアクションのみを実行できることを保証します。さらに、他のステートメントまたはポリシーがそれらのアクションへのアクセスを許可している場合にのみ、リストされているアクションを実行できます。

  `...IfExists` バージョンの `Bool` 演算子により、`aws:MultiFactorAuthPresent` キーが見つからない場合、条件は必ず true を返します。つまり､アクセスキーなどの長期認証情報を使用して API オペレーションにアクセスするユーザーは IAM 以外の API オペレーションへのアクセスを拒否されます。

このポリシーでは、IAM コンソールで [**ユーザー**] ページを表示したり、そのページを使用して自分のユーザー情報にアクセスすることはできません。これを許可するには、 `iam:ListUsers` アクションを `AllowViewAccountInfo` ステートメントと `DenyAllExceptListedIfNoMFA` ステートメントに追加します。

**警告**  
MFA 認証なしで MFA デバイスを削除するためのアクセス許可を追加しないでください。このポリシーを持つユーザーは、仮想化 MFA デバイスを割り当てようとする場合に、`iam:DeleteVirtualMFADevice` を実行する権限がないというエラーが表示されることがあります。このような場合には、そのアクセス許可を `DenyAllExceptListedIfNoMFA` ステートメントに追加**しないようにします**。MFA を使用して認証されていないユーザーは、MFA デバイスを削除してはいけません。ユーザーが以前に自分のユーザーに仮想 MFA デバイスの割り当てを開始して処理をキャンセルした場合、このエラーが表示されることがあります。この問題を解決するには、ユーザーまたは他の管理者が AWS CLI または AWS API を使用してユーザーの既存の仮想化 MFA デバイスを削除する必要があります。詳細については、「[iam:DeleteVirtualMFADevice を実行することを認可されていません](troubleshoot.md#troubleshoot_general_access-denied-delete-mfa)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowViewAccountInfo",
            "Effect": "Allow",
            "Action": "iam:ListVirtualMFADevices",
            "Resource": "*"
        },
        {
            "Sid": "AllowManageOwnVirtualMFADevice",
            "Effect": "Allow",
            "Action": [
                "iam:CreateVirtualMFADevice"
            ],
            "Resource": "arn:aws:iam::*:mfa/*"
        },
        {
            "Sid": "AllowManageOwnUserMFA",
            "Effect": "Allow",
            "Action": [
                "iam:DeactivateMFADevice",
                "iam:EnableMFADevice",
                "iam:GetUser",
                "iam:GetMFADevice",
                "iam:ListMFADevices",
                "iam:ResyncMFADevice"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "DenyAllExceptListedIfNoMFA",
            "Effect": "Deny",
            "NotAction": [
                "iam:CreateVirtualMFADevice",
                "iam:EnableMFADevice",
                "iam:GetUser",
                "iam:ListMFADevices",
                "iam:ListVirtualMFADevices",
                "iam:ResyncMFADevice",
                "sts:GetSessionToken"
            ],
            "Resource": "*",
            "Condition": {
                "BoolIfExists": {"aws:MultiFactorAuthPresent": "false"}
            }
        }
    ]
}
```

------

# AWS: IAM ユーザーが [セキュリティ認証情報] ページで自分のコンソールパスワードを変更できるようにします
<a name="reference_policies_examples_aws_my-sec-creds-self-manage-password-only"></a>

この例は、IAM ユーザーが **[セキュリティ認証情報]** ページで自分の AWS マネジメントコンソール パスワードを変更できるようにする ID ベースポリシーを作成する方法を示しています。この AWS マネジメントコンソール ページにはアカウントとユーザー情報が表示されますが、ユーザーは自分のパスワードにアクセスすることしかできません。ユーザーに MFA を使用して自らのすべての認証情報を管理することを許可するには、「[AWS: MFA で認証された IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします](reference_policies_examples_aws_my-sec-creds-self-manage.md)」を参照してください。ユーザーに MFA を使用せずに自らの認証情報を管理することを許可するには、「[AWS: IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします](reference_policies_examples_aws_my-sec-creds-self-manage-no-mfa.md)」を参照してください。

ユーザーが **[セキュリティ認証情報]** ページにアクセスする方法については、「[IAM ユーザー自身によるパスワードの変更方法 (コンソール)](id_credentials_passwords_user-change-own.md#ManagingUserPwdSelf-Console)」を参照してください。

**このポリシーで行うこと**
+ `ViewAccountPasswordRequirements` ステートメントでは、ユーザーは自分の IAM ユーザーパスワードを変更しながらアカウントパスワードの要件を確認できます。
+ `ChangeOwnPassword` ステートメントを使用すると、ユーザーは自分のパスワードを変更できます。このステートメントには `GetUser` アクションも含まれています。これは、**[My security credentials]** (セキュリティ認証情報) ページのほとんどの情報を表示するために必要です。

このポリシーでは、IAM コンソールで [**ユーザー**] ページを表示したり、そのページを使用して自分のユーザー情報にアクセスすることはできません。これを許可するには、`iam:ListUsers` アクションを `ViewAccountPasswordRequirements` ステートメントに追加します。また、ユーザーが自分のユーザーページで自分のパスワードを変更することはできません。これを許可するには、`iam:GetLoginProfile` および `iam:UpdateLoginProfile` アクションを `ChangeOwnPasswords` ステートメントに追加します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewAccountPasswordRequirements",
            "Effect": "Allow",
            "Action": "iam:GetAccountPasswordPolicy",
            "Resource": "*"
        },
        {
            "Sid": "ChangeOwnPassword",
            "Effect": "Allow",
            "Action": [
                "iam:GetUser",
                "iam:ChangePassword"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        }
    ]
}
```

------

# AWS: IAM ユーザーが [セキュリティ認証情報] ページで自分のパスワード、アクセスキー、および SSH パブリックキーを管理できるようにします
<a name="reference_policies_examples_aws_my-sec-creds-self-manage-pass-accesskeys-ssh"></a>

この例は、IAM ユーザーが **[セキュリティ認証情報]** ページで自分のパスワード、アクセスキー、および X.509 証明書を管理できるようにする ID ベースポリシーを作成する方法を示しています。この AWS マネジメントコンソール ページには、アカウント ID や正規ユーザー ID などのアカウント情報が表示されます。ユーザーは、自分のパスワード、アクセスキー、MFA デバイス、X.509 証明書、SSH キー、および Git 認証情報を表示および編集することもできます。このポリシー例には、パスワード、アクセスキー、および X.509 証明書のみを表示および編集するために必要なアクセス許可が含まれています。ユーザーに MFA を使用して自らのすべての認証情報を管理することを許可するには、「[AWS: MFA で認証された IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします](reference_policies_examples_aws_my-sec-creds-self-manage.md)」を参照してください。ユーザーに MFA を使用せずに自らの認証情報を管理することを許可するには、「[AWS: IAM ユーザーが [セキュリティ認証情報] ページで自分の認証情報を管理できるようにします](reference_policies_examples_aws_my-sec-creds-self-manage-no-mfa.md)」を参照してください。

ユーザーが **[セキュリティ認証情報]** ページにアクセスする方法については、「[IAM ユーザー自身によるパスワードの変更方法 (コンソール)](id_credentials_passwords_user-change-own.md#ManagingUserPwdSelf-Console)」を参照してください。

**このポリシーで行うこと**
+ この `AllowViewAccountInfo` ステートメントでは、ユーザーにアカウントレベルの情報を表示します。これらのアクセス許可は、リソース ARN をサポートしていないか、または指定する必要がないため、独自のステートメントに含まれている必要があります。代わりに `"Resource" : "*"` を指定するアクセス許可を使用します。このステートメントには、ユーザーが特定の情報を表示できるようにする以下のアクションが含まれています。
  + `GetAccountPasswordPolicy` – IAM ユーザーパスワードを変更しながら、アカウントのパスワード要件を確認します。
  + `GetAccountSummary` – アカウント ID とアカウントの表示 [正規ユーザー ID](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html#FindingCanonicalId)。
+ `AllowManageOwnPasswords` ステートメントを使用すると、ユーザーは自分のパスワードを変更できます。このステートメントには `GetUser` アクションも含まれています。これは、**[My security credentials]** (セキュリティ認証情報) ページのほとんどの情報を表示するために必要です。
+ この `AllowManageOwnAccessKeys` ステートメントにより、ユーザーは自分のアクセスキーを作成、更新、削除できます。ユーザーは指定されたアクセスキーの最後の使用時の情報を取得することもできます。
+ この `AllowManageOwnSSHPublicKeys` ステートメントにより、ユーザーは自分の CodeCommit の SSH パブリックキーをアップロード、更新、削除できます。

このポリシーでは、ユーザーは自分の MFA デバイスを表示または管理できません。このポリシーでは、IAM コンソールで **[Users]** (ユーザー) ページを表示したり、そのページを使用して自分のユーザー情報にアクセスすることもできません。これを許可するには、`iam:ListUsers` アクションを `AllowViewAccountInfo` ステートメントに追加します。また、ユーザーが自分のユーザーページで自分のパスワードを変更することはできません。これを許可するには、`iam:GetLoginProfile` および `iam:UpdateLoginProfile` アクションを `AllowManageOwnPasswords` ステートメントに追加します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowViewAccountInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetAccountPasswordPolicy",
                "iam:GetAccountSummary"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowManageOwnPasswords",
            "Effect": "Allow",
            "Action": [
                "iam:ChangePassword",
                "iam:GetUser"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnAccessKeys",
            "Effect": "Allow",
            "Action": [
                "iam:CreateAccessKey",
                "iam:DeleteAccessKey",
                "iam:ListAccessKeys",
                "iam:UpdateAccessKey",
                "iam:GetAccessKeyLastUsed"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnSSHPublicKeys",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteSSHPublicKey",
                "iam:GetSSHPublicKey",
                "iam:ListSSHPublicKeys",
                "iam:UpdateSSHPublicKey",
                "iam:UploadSSHPublicKey"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        }
    ]
}
```

------

# AWS: リクエストされたリージョンに基づいて、AWS へのアクセスを拒否する
<a name="reference_policies_examples_aws_deny-requested-region"></a>

この例は、`NotAction` を使用して指定したサービスのアクションを除く、[`aws:RequestedRegion` 条件キー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requestedregion)を使用して指定したリージョン外のアクションへのアクセスを拒否する ID ベースポリシーを作成する方法を示しています。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーは、ステートメントにリスト*されていない*すべてのアクションへのアクセスを拒否する `NotAction` 効果がある `Deny` 要素を使用します。CloudFront、IAM、Route 53、および サポート サービスでのアクションは、物理的に AWS リージョンにある単一のエンドポイントを持つ一般的な `us-east-1` グローバルサービスであるため、拒否しないでください。これらのサービスに対するすべてのリクエストは `us-east-1` リージョンに対して行われるため、リクエストは `NotAction` 要素なしでは拒否されます。この要素を編集して、使用する他の AWS グローバルサービス (`budgets`、`globalaccelerator`、`importexport`、`organizations`、または `waf` など) のアクションを含めます。チャットアプリケーションの Amazon Q Developer や AWS Device Farm など、その他のグローバルサービスは、エンドポイントが `us-west-2` リージョンに物理的に配置されているグローバルサービスです。単一のグローバルエンドポイントを持つすべてのサービスについては、「AWS 全般のリファレンス」の「[AWS リージョンとエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html)」を参照してください。`NotAction` 効果を持つ `Deny` 要素の使用の詳細については、「[IAM JSON ポリシー要素NotAction](reference_policies_elements_notaction.md)」を参照してください。

**重要**  
このポリシーでは、アクションを許可しません。特定のアクションを許可する他のポリシーと組み合わせてこのポリシーを使用します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DenyAllOutsideRequestedRegions",
            "Effect": "Deny",
            "NotAction": [
                "cloudfront:*",
                "iam:*",
                "organizations:*",
                "route53:*",
                "support:*"
            ],
            "Resource": "*",
            "Condition": {
                "StringNotEquals": {
                    "aws:RequestedRegion": [
                        "eu-central-1",
                        "eu-west-1",
                        "eu-west-2",
                        "eu-west-3"
                    ]
                }
            }
        }
    ]
}
```

------

# AWS: 送信元 IP に基づいて AWS へのアクセスを拒否する
<a name="reference_policies_examples_aws_deny-ip"></a>

この例は、指定した IP 範囲外のプリンシパルからリクエストが送信された場合に、アカウントのすべての AWS のアクションへのアクセスを拒否する ID ベースポリシーを作成する方法を示しています。ポリシーは、会社の IP アドレスが指定された範囲内にある場合に有用です。この例では、リクエストは、CIDR 範囲 192.0.2.0/24 または 203.0.113.0/24 以外からでない限り拒否されます。ポリシーでは、オリジナルリクエスタ―の IP アドレスが保持されるため、[転送アクセスセッション](access_forward_access_sessions.md) を使用した AWS サービスからのリクエストは拒否されません。

`"Effect": "Deny"` と同じポリシーステートメントで負の条件を使用する際は注意してください。負の条件を使用すると、ポリシーステートメントで指定されたアクションは、指定されたものを*除く*すべての条件で明示的に拒否されます。

**重要**  
このポリシーでは、アクションを許可しません。特定のアクションを許可する他のポリシーと組み合わせてこのポリシーを使用します。

他のポリシーでアクションが許可されている場合、プリンシパルは IP アドレス範囲内からリクエストを実行することができます。AWS サービスは、プリンシパルの認証情報を使用してリクエストを実行することもできます。プリンシパルが IP 範囲外からリクエストを実行すると、リクエストは拒否されます。

ポリシーで `aws:SourceIp` キーが機能しない場合の情報など、`aws:SourceIp` 条件キーの使用の詳細については、「[AWS グローバル条件コンテキストキー](reference_policies_condition-keys.md)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Deny",
        "Action": "*",
        "Resource": "*",
        "Condition": {
            "NotIpAddress": {
                "aws:SourceIp": [
                    "192.0.2.0/24",
                    "203.0.113.0/24"
                ]
            }
        }
    }
}
```

------

# AWS: AWS Data Exchange を除くアカウント外の Amazon S3 リソースへのアクセスを拒否する
<a name="reference_policies_examples_resource_account_data_exch"></a>

この例では、AWS Data Exchange が通常のオペレーションに必要とするリソースを除いた、アカウントに属さない AWS のすべてのリソースへのアクセスを拒否する ID ベースのポリシーを作成する方法を示します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

条件キー `aws:ResourceOrgPaths` および `aws:ResourceOrgID` を使用して AWS Data Exchange 所有のリソースを考慮しながら、組織または組織単位内のリソースへのアクセスを制限するために、類似ポリシーを作成できます。

ご自分の環境で AWS Data Exchange を使用する場合、サービスはサービスアカウントが所有する Amazon S3 バケットなどのリソースを作成し、操作します。たとえば、AWS Data Exchange は、IAM プリンシパル (ユーザーまたはロール) に代わって AWS Data Exchange API を呼び出す AWS Data Exchange サービスが所有する Amazon S3 バケットに要求を送信します。その場合は、`aws:ResourceAccount`、`aws:ResourceOrgPaths`、`aws:ResourceOrgID` ポリシーを使用して、AWS Data Exchange が所有するリソースを考慮せず、サービスアカウントが所有するバケットへのアクセスを拒否します。
+ ステートメント `DenyAllAwsResourcesOutsideAccountExceptS3` では、ステートメントにリスト表示されておらず、またリスト表示されたアカウントに属していないすべてのアクションへのアクセスを明確に[拒否](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_effect.html)する効果を持つ `NotAction` 要素を使用します。`NotAction` 要素は、このステートメントの例外を示します。これらのアクションは、ステートメントの例外を示します。これは AWS Data Exchange によって作成されたリソースでアクションが実行されると、ポリシーによってアクションが拒否されるためです。
+ このステートメント `DenyAllS3ResoucesOutsideAccountExceptDataExchange` は、`ResourceAccount` および `CalledVia` の条件の組み合わせを使用して、前のステートメントで除外された 3 つの Amazon S3 アクションへのアクセスを拒否します。このステートメントは、そのリソースがリスト表示されたアカウントに属していない場合、そして呼び出しサービスが AWS Data Exchange でない場合にアクションを拒否します。このステートメントは、リソースがリスト表示されたアカウントに属しているか、リスト表示されているサービスプリンシパル `dataexchange.amazonaws.com` が操作を行う場合には、アクションを拒否しません。

**重要**  
このポリシーでは、アクションを許可しません。それは、リスト表示されたアカウントに属さないステートメントでリスト表示された、すべてのリソースへのアクセスを明確に拒否する `Deny` の効果を使用します。特定のリソースへのアクセスを許可する他のポリシーと組み合わせてこのポリシーを使用します。

次の例は、必要な Amazon S3 バケットへのアクセスを許可するためにポリシーを設定する方法を示しています。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyAllAwsReourcesOutsideAccountExceptAmazonS3",
      "Effect": "Deny",
      "NotAction": [
        "s3:GetObject",
        "s3:PutObject",
        "s3:PutObjectAcl"
      ],
      "Resource": "*",
      "Condition": {
        "StringNotEquals": {
          "aws:ResourceAccount": [
            "111122223333"
          ]
        }
      }
    },
    {
      "Sid": "DenyAllS3ResourcesOutsideAccountExceptDataExchange",
      "Effect": "Deny",
      "Action": [
        "s3:GetObject",
        "s3:PutObject",
        "s3:PutObjectAcl"
      ],
      "Resource": "*",
      "Condition": {
        "StringNotEquals": {
          "aws:ResourceAccount": [
            "111122223333"
          ]
        },
        "ForAllValues:StringNotEquals": {
          "aws:CalledVia": [
            "dataexchange.amazonaws.com"
          ]
        }
      }
    }
  ]
}
```

------

# AWS Data Pipeline: ユーザーが作成していない DataPipeline パイプラインへのアクセスを拒否する
<a name="reference_policies_examples_datapipeline_not-owned"></a>

この例では、ユーザーが作成していないパイプラインへのアクセスを拒否する ID ベースポリシーを作成する方法を示します。`PipelineCreator` フィールドの値が IAM ユーザー名と一致する場合、指定されたアクションは拒否されません。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。

**重要**  
このポリシーでは、アクションを許可しません。特定のアクションを許可する他のポリシーと組み合わせてこのポリシーを使用します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ExplicitDenyIfNotTheOwner",
            "Effect": "Deny",
            "Action": [
                "datapipeline:ActivatePipeline",
                "datapipeline:AddTags",
                "datapipeline:DeactivatePipeline",
                "datapipeline:DeletePipeline",
                "datapipeline:DescribeObjects",
                "datapipeline:EvaluateExpression",
                "datapipeline:GetPipelineDefinition",
                "datapipeline:PollForTask",
                "datapipeline:PutPipelineDefinition",
                "datapipeline:QueryObjects",
                "datapipeline:RemoveTags",
                "datapipeline:ReportTaskProgress",
                "datapipeline:ReportTaskRunnerHeartbeat",
                "datapipeline:SetStatus",
                "datapipeline:SetTaskStatus",
                "datapipeline:ValidatePipelineDefinition"
            ],
            "Resource": ["*"],
            "Condition": {
                "StringNotEquals": {"datapipeline:PipelineCreator": "${aws:userid}"}
            }
        }
    ]
}
```

------

# Amazon DynamoDB: 特定のテーブルへのアクセスの許可
<a name="reference_policies_examples_dynamodb_specific-table"></a>

この例は、`MyTable` DynamoDB テーブルへのフルアクセスを許可する ID ベースポリシーを作成する方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

**重要**  
このポリシーは、DynamoDB テーブルで実行できるすべてのアクションを許可します。これらのアクションを確認するには、*Amazon DynamoDB デベロッパーガイド*の「[DynamoDB API の許可: アクション、リソース、条件リファレンス](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/api-permissions-reference.html)」を参照してください。個別のアクションを一覧表示して、同じアクセス許可を提供することができます。ただし、`Action` 要素でワイルドカード (`*`) を使用している場合 (`"dynamodb:List*"` など)、DynamoDB で新しい List アクションが追加されても、ポリシーを更新する必要はありません。

このポリシーは、指定された名前で存在する DynamoDB テーブルでのみアクションを許可します。ユーザーに [DynamoDB 全体への `Read` アクセスを許可するために、AmazonDynamoDBReadOnlyAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AmazonDynamoDBReadOnlyAccess) AWS 管理ポリシーをアタッチすることもできます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ListAndDescribe",
            "Effect": "Allow",
            "Action": [
                "dynamodb:List*",
                "dynamodb:DescribeReservedCapacity*",
                "dynamodb:DescribeLimits",
                "dynamodb:DescribeTimeToLive"
            ],
            "Resource": "*"
        },
        {
            "Sid": "SpecificTable",
            "Effect": "Allow",
            "Action": [
                "dynamodb:BatchGet*",
                "dynamodb:DescribeStream",
                "dynamodb:DescribeTable",
                "dynamodb:Get*",
                "dynamodb:Query",
                "dynamodb:Scan",
                "dynamodb:BatchWrite*",
                "dynamodb:CreateTable",
                "dynamodb:Delete*",
                "dynamodb:Update*",
                "dynamodb:PutItem"
            ],
            "Resource": "arn:aws:dynamodb:*:*:table/MyTable"
        }
    ]
}
```

------

# Amazon DynamoDB: 特定の属性へのアクセスの許可
<a name="reference_policies_examples_dynamodb_attributes"></a>

この例では、特定の DynamoDB 属性へのアクセスを許可する ID ベースポリシーを作成する方法を示します。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

`dynamodb:Select` 要件により、インデックスの射影からなど、API アクションが許可されていない属性を返さないようにします。DynamoDB 条件キーの詳細については、『* Amazon DynamoDB 開発者ガイド*』の「[条件の指定: 条件キーの使用](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html#FGAC_DDB.ConditionKeys)」を参照してください。IAM ポリシーの `Condition` ブロック内の複数条件および複数条件キーの使用については、[条件内の複数の値](reference_policies_elements_condition.md#Condition-multiple-conditions) を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "dynamodb:GetItem",
                "dynamodb:BatchGetItem",
                "dynamodb:Query",
                "dynamodb:PutItem",
                "dynamodb:UpdateItem",
                "dynamodb:DeleteItem",
                "dynamodb:BatchWriteItem"
            ],
            "Resource": ["arn:aws:dynamodb:*:*:table/table-name"],
            "Condition": {
                "ForAllValues:StringEquals": {
                    "dynamodb:Attributes": [
                        "column-name-1",
                        "column-name-2",
                        "column-name-3"
                    ]
                },
                "StringEqualsIfExists": {"dynamodb:Select": "SPECIFIC_ATTRIBUTES"}
            }
        }
    ]
}
```

------

# Amazon DynamoDB: Amazon Cognito ID に基づいて DynamoDB への項目レベルのアクセスを許可する
<a name="reference_policies_examples_dynamodb_items"></a>

この例は、Amazon Cognito アイデンティティプールのユーザー ID に基づいて `MyTable` DynamoDB テーブルへのアイテムレベルのアクセスを許可する ID ベースポリシーを作成する方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

このポリシーを使用するには、Amazon Cognito アイデンティティプールのユーザー ID がパーティションキーとなるように DynamoDB テーブルを作成する必要があります。詳細については、*Amazon DynamoDB 開発者ガイド*の [テーブルの作成](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.Basics.html#WorkingWithTables.Basics.CreateTable)を参照してください。

 条件キーの詳細については、『[Amazon DynamoDB 開発者ガイド](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html#FGAC_DDB.ConditionKeys)』の「*条件の指定: 条件キーの使用*」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "dynamodb:DeleteItem",
                "dynamodb:GetItem",
                "dynamodb:PutItem",
                "dynamodb:Query",
                "dynamodb:UpdateItem"
            ],
            "Resource": ["arn:aws:dynamodb:*:*:table/MyTable"],
            "Condition": {
                "ForAllValues:StringEquals": {
                    "dynamodb:LeadingKeys": ["${cognito-identity.amazonaws.com:sub}"]
                }
            }
        }
    ]
}
```

------

# Amazon EC2: タグに基づいて EC2 インスタンスに Amazon EBS ボリュームをアタッチまたはデタッチする
<a name="reference_policies_examples_ec2_ebs-owner"></a>

この例は、EBS ボリュームの所有者によって、開発インスタンス (`Department=Development`) としてタグ付けされた EC2 インスタンスのタグ `VolumeUser` を使用して定義された EBS ボリュームをアタッチまたはデタッチすることを許可する ID ベースポリシーの作成方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

Amazon EC2 リソースへのアクセスを制御する IAM ポリシーの作成の詳細については、「Amazon EC2 ユーザーガイド」の [Amazon EC2 リソースへのアクセスの制御](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UsingIAM.html)に関するページを参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:AttachVolume",
                "ec2:DetachVolume"
            ],
            "Resource": "arn:aws:ec2:*:*:instance/*",
            "Condition": {
                "StringEquals": {"aws:ResourceTag/Department": "Development"}
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:AttachVolume",
                "ec2:DetachVolume"
            ],
            "Resource": "arn:aws:ec2:*:*:volume/*",
            "Condition": {
                "StringEquals": {"aws:ResourceTag/VolumeUser": "${aws:username}"}
            }
        }
    ]
}
```

------

# Amazon EC2: 特定のサブネットで EC2 インスタンスを起動することをプログラムによりコンソールで許可する
<a name="reference_policies_examples_ec2_instances-subnet"></a>

この例では、特定のサブネットですべての EC2 オブジェクトと EC2 インスタンスの起動を許可する ID ベースのポリシーを作成する方法を示します。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:Describe*",
                "ec2:GetConsole*"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "ec2:RunInstances",
            "Resource": [
                "arn:aws:ec2:*:*:subnet/subnet-subnet-id",
                "arn:aws:ec2:*:*:network-interface/*",
                "arn:aws:ec2:*:*:instance/*",
                "arn:aws:ec2:*:*:volume/*",
                "arn:aws:ec2:*::image/ami-*",
                "arn:aws:ec2:*:*:key-pair/*",
                "arn:aws:ec2:*:*:security-group/*"
            ]
        }
    ]
}
```

------

# Amazon EC2: 特定のキーと値のペアでタグ付けされた EC2 セキュリティグループの管理をプログラムによりコンソールで許可する
<a name="reference_policies_examples_ec2_securitygroups-vpc"></a>

この例では、同じタグを持つセキュリティグループに対して、特定のアクションを実行するためのアクセス許可をユーザーに与える、ID ベースのポリシーを作成する方法を示します。このポリシーは、Amazon EC2 コンソールでセキュリティグループを表示し、インバウンドおよびアウトバウンドのルールを追加および削除し、タグ `Department=Test` を含む既存のセキュリティグループのルール説明を変更するアクセス許可をユーザーに付与します。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [{
      "Effect": "Allow",
      "Action": [
         "ec2:DescribeSecurityGroups",
         "ec2:DescribeSecurityGroupRules",
         "ec2:DescribeTags"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
         "ec2:AuthorizeSecurityGroupIngress", 
         "ec2:RevokeSecurityGroupIngress", 
         "ec2:AuthorizeSecurityGroupEgress", 
         "ec2:RevokeSecurityGroupEgress", 
         "ec2:ModifySecurityGroupRules",
         "ec2:UpdateSecurityGroupRuleDescriptionsIngress", 
         "ec2:UpdateSecurityGroupRuleDescriptionsEgress"
      ],
      "Resource": [
         "arn:aws:ec2:us-east-1:111122223333:security-group/*"
      ],
      "Condition": {
         "StringEquals": {
            "aws:ResourceTag/Department": "Test"
         }
      }
     },     
     {
      "Effect": "Allow",
      "Action": [
         "ec2:ModifySecurityGroupRules"
      ],
      "Resource": [
         "arn:aws:ec2:us-east-1:111122223333:security-group-rule/*"
      ]
     }
   ]
}
```

------

# Amazon EC2: プログラムおよびコンソールでユーザーがタグ付けされた EC2 インスタンスの起動や停止を許可する
<a name="reference_policies_examples_ec2_tag-owner"></a>

この例は、IAM ユーザーが EC2 インスタンスを開始または停止できるようにする ID ベースのポリシーを作成する方法を示していますが、インスタンスタグ `Owner` にそのユーザーのユーザー名の値がある場合に限ります。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:StartInstances",
                "ec2:StopInstances"
            ],
            "Resource": "arn:aws:ec2:*:*:instance/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/Owner": "${aws:username}"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "ec2:DescribeInstances",
            "Resource": "*"
        }
    ]
}
```

------

# EC2: タグに基づくインスタンスの開始または停止
<a name="reference_policies_examples_ec2-start-stop-tags"></a>

この例は、タグのキーバリューのペア `Department = Data` を持つプリンシパルによってのみ、タグのキーバリューペア `Project = DataAnalytics` を持つインスタンスの開始または停止を許可する ID ベースのポリシーを作成する方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

ポリシーの条件によって、条件のいずれも true の場合には true が返ります。インスタンスには `Project=DataAnalytics` タグが必要です。さらに、リクエストを行うIAM プリンシパル (ユーザーまたはロール) には、`Department=Data` タグが必要です。

**注記**  
ベストプラクティスとして、ユーザーの特定のタグの有無に対応できるように、`aws:PrincipalTag` 条件キーを持つポリシーを IAM グループにアタッチします。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "StartStopIfTags",
            "Effect": "Allow",
            "Action": [
                "ec2:StartInstances",
                "ec2:StopInstances"
            ],
            "Resource": "arn:aws:ec2:us-east-1:123456789012:instance/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/Project": "DataAnalytics",
                    "aws:PrincipalTag/Department": "Data"
                }
            }
        }
    ]
}
```

------

# EC2: 一致するプリンシパルタグとリソースタグに基づいてインスタンスを開始または停止する
<a name="reference_policies_examples_ec2-start-stop-match-tags"></a>

この例では、インスタンスのリソースタグとプリンシパルのタグのタグキー `CostCenter` の値が同じである場合にプリンシパルが Amazon EC2 インスタンスの起動または停止を許可する ID ベースのポリシーを作成する方法を示します。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

**注記**  
ベストプラクティスとして、ユーザーの特定のタグの有無に対応できるように、`aws:PrincipalTag` 条件キーを持つポリシーを IAM グループにアタッチします。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "ec2:startInstances",
            "ec2:stopInstances"
        ],
        "Resource": "*",
        "Condition": {"StringEquals": 
            {"aws:ResourceTag/CostCenter": "${aws:PrincipalTag/CostCenter}"}}
    }
}
```

------

# Amazon EC2: 特定のリージョンでの完全な EC2 アクセスをプログラムによりコンソールで許可する
<a name="reference_policies_examples_ec2_region"></a>

この例では、特定のリージョン内で完全な EC2 アクセスを許可する ID ベースのポリシーを作成する方法を示します。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。リージョンコードの一覧については、[Amazon EC2 ユーザーガイド](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions)の「*使用可能なリージョン*」を参照してください。

または、グローバル条件キー [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requestedregion](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requestedregion), を使用することもできます。これは、すべての Amazon EC2 API アクションによってサポートされています。詳細については、[Amazon EC2 ユーザーガイド](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ExamplePolicies_EC2.html#iam-example-region)の「*例: 特定のリージョンへのアクセスの制限*」をご参照ください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": "ec2:*",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ec2:Region": "us-east-2"
                }
            }
        }
    ]
}
```

------

# Amazon EC2: EC2 インスタンスの起動または停止、およびセキュリティグループの変更を、プログラムによりコンソールで許可する
<a name="reference_policies_examples_ec2_instance-securitygroup"></a>

この例では、特定の EC2 インスタンスの起動または停止、特定のセキュリティグループの変更を許可する ID ベースのポリシーを作成する方法を示します。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "ec2:DescribeInstances",
        "ec2:DescribeSecurityGroups",
        "ec2:DescribeSecurityGroupReferences",
        "ec2:DescribeStaleSecurityGroups"
      ],
      "Resource": "*",
      "Effect": "Allow"
    },
    {
      "Action": [
        "ec2:AuthorizeSecurityGroupEgress",
        "ec2:AuthorizeSecurityGroupIngress",
        "ec2:RevokeSecurityGroupEgress",
        "ec2:RevokeSecurityGroupIngress",
        "ec2:StartInstances",
        "ec2:StopInstances"
      ],
      "Resource": [
        "arn:aws:ec2:*:*:instance/i-instance-id",
        "arn:aws:ec2:*:*:security-group/sg-security-group-id"
      ],
      "Effect": "Allow"
    }
  ]
}
```

------

# Amazon EC2: 特定の EC2 オペレーション (GetSessionToken) に対して MFA を必要とします。
<a name="reference_policies_examples_ec2_require-mfa"></a>

この例は、Amazon EC2 のすべての AWS API オペレーションへのフルアクセスを許可する ID ベースのポリシーを作成する方法を示しています。ただし、ユーザーが[多要素認証 (MFA) ](id_credentials_mfa.md)を使用して認証されていない場合は、`StopInstances` および `TerminateInstances` APIオペレーションへのアクセスを明示的に拒否します。これをプログラムで行うには、`GetSessionToken` オペレーションを呼び出すときにユーザーはオプションの `SerialNumber` および `TokenCode` 値を含める必要があります。このオペレーションでは、MFA を使用して認証された一時認証情報を返します。GetSessionToken の詳細については、「[信頼されていない環境でのユーザーの認証情報のリクエスト](id_credentials_temp_request.md#api_getsessiontoken)」を参照してください。

このポリシーで行うこと
+ この `AllowAllActionsForEC2` ステートメントではすべての Amazon EC2 アクションが許可されます。
+ `DenyStopAndTerminateWhenMFAIsNotPresent` ステートメントは、MFA コンテキストが欠落している場合に、`StopInstances` および `TerminateInstances` のアクションを拒否します。これは、多要素認証コンテキストがない場合 (MFA が使用されなかったことを意味します) にアクションが拒否されることを意味します。拒否が許可に優先します。

**注記**  
`Deny` ステートメントの `MultiFactorAuthPresent` の条件チェックは、MFA が使用されていなければ該当キーが存在せず、評価できないため、`{"Bool":{"aws:MultiFactorAuthPresent":false}}` となりません。その代わりに、`BoolIfExists` チェックを使用して、値をチェックする前にキーが存在するかどうか確認します。詳細については、「[IfExists 条件演算子](reference_policies_elements_condition_operators.md#Conditions_IfExists)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowAllActionsForEC2",
            "Effect": "Allow",
            "Action": "ec2:*",
            "Resource": "*"
        },
        {
            "Sid": "DenyStopAndTerminateWhenMFAIsNotPresent",
            "Effect": "Deny",
            "Action": [
                "ec2:StopInstances",
                "ec2:TerminateInstances"
            ],
            "Resource": "*",
            "Condition": {
                "BoolIfExists": {"aws:MultiFactorAuthPresent": false}
            }
        }
    ]
}
```

------

# Amazon EC2: 終了する EC2 インスタンスを IP アドレス範囲に制限する
<a name="reference_policies_examples_ec2_terminate-ip"></a>

この例は、アクションを許可することで EC2 インスタンスを制限する ID ベースのポリシーを作成する方法を示していますが、リクエストが指定された IP 範囲外から送信された場合は明示的にアクセスを拒否します。ポリシーは、会社の IP アドレスが指定された範囲内にある場合に有用です。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーを、`ec2:TerminateInstances` アクションを許可する他のポリシー ([AmazonEC2FullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AmazonEC2FullAccess) AWS 管理ポリシーなど) と組み合わせて使用すると、アクセスは拒否されます。これは、明示的な拒否のステートメントは許可のステートメントより優先されるからです。詳細については、「[AWS エンフォースメントコードロジックがリクエストを評価してアクセスを許可または拒否する方法](reference_policies_evaluation-logic_policy-eval-denyallow.md)」を参照してください。

**重要**  
`aws:SourceIp` 条件キーは、お客様に代わって呼び出しを実行する AWS CloudFormation などの AWS のサービス へのアクセスを拒否します。`aws:SourceIp` 条件キーの使用に関する詳細については、「[AWS グローバル条件コンテキストキー](reference_policies_condition-keys.md)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": ["ec2:TerminateInstances"],
            "Resource": ["*"]
        },
        {
            "Effect": "Deny",
            "Action": ["ec2:TerminateInstances"],
            "Condition": {
                "NotIpAddress": {
                    "aws:SourceIp": [
                        "192.0.2.0/24",
                        "203.0.113.0/24"
                    ]
                }
            },
            "Resource": ["*"]
        }
    ]
}
```

------

# IAM: Policy Simulator API へのアクセス
<a name="reference_policies_examples_iam_policy-sim"></a>

この例では、ユーザー、グループ、現在の AWS アカウント のロールにアタッチされたポリシーに、ポリシーシミュレータ API の使用を許可する ID ベースのポリシーを作成する方法を示します。このポリシーは、文字列として API に渡される機密性の低いポリシーをシミュレートするアクセスも許可します。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:GetContextKeysForCustomPolicy",
                "iam:GetContextKeysForPrincipalPolicy",
                "iam:SimulateCustomPolicy",
                "iam:SimulatePrincipalPolicy"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
```

------

**注記**  
ユーザーに、現在の AWS アカウント のユーザー、グループ、ロールにアタッチされたポリシーをシミュレートする Policy Simulator コンソールへのアクセスを許可するには、「[IAM: Policy Simulator のコンソールへのアクセス](reference_policies_examples_iam_policy-sim-console.md)」を参照してください。

# IAM: Policy Simulator のコンソールへのアクセス
<a name="reference_policies_examples_iam_policy-sim-console"></a>

この例では、ユーザー、グループ、現在の AWS アカウント のロールにアタッチされたポリシーに、ポリシーシミュレータのコンソールの使用を許可する ID ベースのポリシーを作成する方法を示します。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。

IAM Policy Simulator コンソールは [https://policysim.aws.amazon.com/](https://policysim.aws.amazon.com/) でアクセスできます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:GetGroup",
                "iam:GetGroupPolicy",
                "iam:GetPolicy",
                "iam:GetPolicyVersion",
                "iam:GetRole",
                "iam:GetRolePolicy",
                "iam:GetUser",
                "iam:GetUserPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListAttachedRolePolicies",
                "iam:ListAttachedUserPolicies",
                "iam:ListGroups",
                "iam:ListGroupPolicies",
                "iam:ListGroupsForUser",
                "iam:ListRolePolicies",
                "iam:ListRoles",
                "iam:ListUserPolicies",
                "iam:ListUsers"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
```

------

# IAM: 特定のタグを持つロールを引き受ける
<a name="reference_policies_examples_iam-assume-tagged-role"></a>

この例では、IAM ユーザーがタグのキーバリューのペア `Project = ExampleCorpABC` を持つロールを引き受けることを許可する ID ベースのポリシーの作成方法を示します。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このタグを持つロールがユーザーと同じアカウントに存在する場合、ユーザーはそのロールを引き受けることができます。このタグを持つロールがユーザー以外のアカウントに存在する場合は、追加のアクセス許可が必要です。クロスアカウントロールの信頼ポリシーでは、ユーザーまたはユーザーのアカウントのすべてのメンバーがそのロールを引き受けることも許可する必要があります。クロスアカウントアクセスのロールの使用に関する詳細情報は、「[所有している別の AWS アカウント内の IAM ユーザーに対するアクセス](id_roles_common-scenarios_aws-accounts.md)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AssumeTaggedRole",
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "*",
            "Condition": {
                "StringEquals": {"iam:ResourceTag/Project": "ExampleCorpABC"}
            }
        }
    ]
}
```

------

# IAM: 複数のサービスへのアクセスをプログラムによりコンソールで許可および拒否する
<a name="reference_policies_examples_iam_multiple-services-console"></a>

この例では、IAM で複数のサービスへのフルアクセスと IAM の制限された自己管理アクセスを許可する ID ベースのポリシーを作成する方法を示します。また、Amazon S3 の `logs` バケットまたは Amazon EC2 の `i-1234567890abcdef0` インスタンスへのアクセスを拒否します。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

**警告**  
このポリシーは、複数のサービスのすべてのアクションとリソースへのフルアクセスを許可します。このポリシーは、信頼されている管理者にのみ適用する必要があります。

このポリシーをアクセス許可の境界として使用して、アイデンティティベースのポリシーが IAM ユーザーに付与できる最大のアクセス許可の上限を定義できます。詳細については、「[アクセス許可の境界を使用した他のユーザーへの責任の委任](access_policies_boundaries.md#access_policies_boundaries-delegate)」を参照してください。ポリシーがユーザーのアクセス許可の境界として使用される場合、ステートメントは次の境界を定義します。
+ この `AllowServices` ステートメントでは、指定された AWS のサービスへのフルアクセスを許可します。つまり、これらのサービスにおけるユーザーのアクションは、ユーザーにアタッチされているアクセス許可ポリシーによってのみ制限されます。
+ `AllowIAMConsoleForCredentials` ステートメントは、すべての IAM ユーザーを一覧表示するためのアクセス権を付与します。このアクセス権は、AWS マネジメントコンソール で [**ユーザー**] ページに移動するために必要です。また、このアクセス権では、アカウントのパスワード要件を表示することができます。これは、ユーザーが自分のパスワードを変更する場合に必要です。
+ `AllowManageOwnPasswordAndAccessKeys` ステートメントは、自分のパスワードおよびプログラムを使用したアクセスキーの管理のみ許可します。これが重要であるのは、別のポリシーが IAM へのフルアクセスをユーザーに与えた場合、このユーザーは自分や他のユーザーのアクセス許可を変更できるようになるためです。このステートメントで、これを防止します。
+ `DenyS3Logs` ステートメントでは、`logs` バケットへのアクセスを明示的に拒否します。このポリシーはユーザーに会社の制限を適用します。
+ `DenyEC2Production` ステートメントでは、`i-1234567890abcdef0` インスタンスへのアクセスを明示的に拒否します。

このポリシーでは、他のサービスまたはアクションへのアクセスは許可されません。ポリシーがユーザーのアクセス許可の境界として使用されている場合、そのユーザーに関連付けられている他のポリシーがそれらのアクションを許可していても、AWS によってリクエストが拒否されます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowServices",
            "Effect": "Allow",
            "Action": [
                "s3:*",
                "cloudwatch:*",
                "ec2:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowIAMConsoleForCredentials",
            "Effect": "Allow",
            "Action": [
                "iam:ListUsers",
                "iam:GetAccountPasswordPolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowManageOwnPasswordAndAccessKeys",
            "Effect": "Allow",
            "Action": [
                "iam:*AccessKey*",
                "iam:ChangePassword",
                "iam:GetUser",
                "iam:*LoginProfile*"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "DenyS3Logs",
            "Effect": "Deny",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::logs",
                "arn:aws:s3:::logs/*"
            ]
        },
        {
            "Sid": "DenyEC2Production",
            "Effect": "Deny",
            "Action": "ec2:*",
            "Resource": "arn:aws:ec2:*:*:instance/i-1234567890abcdef0"
        }
    ]
}
```

------

# IAM: 特定のタグを持つユーザーに特定のタグを追加する
<a name="reference_policies_examples_iam-add-tag"></a>

この例は、タグ値 `Department`、`Marketing`、または `Development` を使用して、IAM ユーザーにタグキー `QualityAssurance` を追加できる ID ベースのポリシーを作成する方法を示しています。そのユーザーには、タグのキーバリューのペア `JobFunction = manager` がすでに含まれている必要があります。このポリシーを使用して、管理者が 3 つのいずれかの部門にのみ属していることを必須とすることができます。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

`ListTagsForAllUsers` ステートメントでは、アカウントのすべてのユーザーのタグを表示することができます。

`TagManagerWithSpecificDepartment` ステートメントの最初の条件では、`StringEquals` 条件演算子を使用します。この条件によって、条件のいずれも true の場合には true が返ります。タグ付けされているユーザーには、すでに `JobFunction=Manager` タグが含まれます。リクエストには、一覧表示されているタグ値のいずれかを持つタグキー `Department` が含まれている必要があります。

2 番目の条件では、`ForAllValues:StringEquals` 条件演算子を使用します。この条件では、リクエストのすべてのタグキーが、ポリシーのキーと一致する場合に true が返ります。つまり、リクエストのタグキーのみ `Department` である必要があります。`ForAllValues` の使用の詳細については、「[複数値のコンテキストキーの演算子を設定する](reference_policies_condition-single-vs-multi-valued-context-keys.md#reference_policies_condition-multi-valued-context-keys)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ListTagsForAllUsers",
            "Effect": "Allow",
            "Action": [
                "iam:ListUserTags",
                "iam:ListUsers"
            ],
            "Resource": "*"
        },
        {
            "Sid": "TagManagerWithSpecificDepartment",
            "Effect": "Allow",
            "Action": "iam:TagUser",
            "Resource": "*",
            "Condition": {"StringEquals": {
                "iam:ResourceTag/JobFunction": "Manager",
                "aws:RequestTag/Department": [
                    "Marketing",
                    "Development",
                    "QualityAssurance"
                    ]
                },
                "ForAllValues:StringEquals": {"aws:TagKeys": "Department"}
            }
        }
    ]
}
```

------

# IAM: 特定の値を持つ特定のタグを追加する
<a name="reference_policies_examples_iam-add-tag-user-role"></a>

この例は、タグキー `CostCenter` とタグ値 `A-123` またはタグ値 `B-456` のいずれかのみを IAM ユーザーまたはロールに追加できる ID ベースのポリシーを作成する方法を示しています。このポリシーを使用して、特定のタグキーとタグ値のセットにタグ付けを制限することができます。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

`ConsoleDisplay` ステートメントでは、アカウントのすべてのユーザーとロールのタグを表示することができます。

`AddTag` ステートメントの最初の条件では、`StringEquals` 条件演算子を使用します。この条件によって、一覧表示されているいずれかのタグ値を持つ `CostCenter` タグキーが含まれている場合に true が返ります。

2 番目の条件では、`ForAllValues:StringEquals` 条件演算子を使用します。この条件では、リクエストのすべてのタグキーが、ポリシーのキーと一致する場合に true が返ります。つまり、リクエストのタグキーのみ `CostCenter` である必要があります。`ForAllValues` の使用の詳細については、「[複数値のコンテキストキーの演算子を設定する](reference_policies_condition-single-vs-multi-valued-context-keys.md#reference_policies_condition-multi-valued-context-keys)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ConsoleDisplay",
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:GetUser",
                "iam:ListRoles",
                "iam:ListRoleTags",
                "iam:ListUsers",
                "iam:ListUserTags"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AddTag",
            "Effect": "Allow",
            "Action": [
                "iam:TagUser",
                "iam:TagRole"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/CostCenter": [
                        "A-123",
                        "B-456"
                    ]
                },
                "ForAllValues:StringEquals": {"aws:TagKeys": "CostCenter"}
            }
        }
    ]
}
```

------

# IAM: 特定のタグのみで新しいユーザーを作成する
<a name="reference_policies_examples_iam-new-user-tag"></a>

この例は、IAM ユーザーの作成を許可する ID ベースのポリシーを作成する方法を示していますが、タグキー `Department` と `JobFunction` の一方のみまたは両方を使用します。`Department` タグキーに、`Development` または `QualityAssurance` タグ値が含まれている必要があります。`JobFunction` タグキーに、`Employee` タグ値が含まれている必要があります。このポリシーを使用して、新しいユーザーに特定のジョブ機能および部門が含まれるよう義務付けることができます。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

ステートメントの最初の条件では、`StringEqualsIfExists` 条件演算子を使用します。キーが `Department` または `JobFunction` のタグがリクエストに存在する場合は、指定された値がタグに含まれている必要があります。どちらのキーも存在しない場合、この条件は true と評価されます。指定された条件キーのいずれかがリクエストに存在していても、許可されている値とは異なる値が含まれている場合にのみ、条件は、false と評価されます。`IfExists` の使用の詳細については、「[IfExists 条件演算子](reference_policies_elements_condition_operators.md#Conditions_IfExists)」を参照してください。

2 番目の条件では、`ForAllValues:StringEquals` 条件演算子を使用します。この条件では、リクエストの指定されたすべてのタグキーと、ポリシーの 1 つ以上の値が一致する場合に true が返ります。つまり、リクエストのすべてのタグがこのリストに含まれていることになります。ただし、リクエストには、リストのいずれかのタグのみ含めることができます。たとえば、`Department=QualityAssurance` タグのみを使用して、IAM ユーザーを作成できます。ただし、`JobFunction=employee` タグと `Project=core` タグを使用して、IAM ユーザーを作成することはできません。`ForAllValues` の使用の詳細については、「[複数値のコンテキストキーの演算子を設定する](reference_policies_condition-single-vs-multi-valued-context-keys.md#reference_policies_condition-multi-valued-context-keys)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "TagUsersWithOnlyTheseTags",
            "Effect": "Allow",
            "Action": [
                "iam:CreateUser",
                "iam:TagUser"
            ],
            "Resource": "*",
            "Condition": {
                "StringEqualsIfExists": {
                    "aws:RequestTag/Department": [
                        "Development",
                        "QualityAssurance"
                    ],
                    "aws:RequestTag/JobFunction": "Employee"
                },
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": [
                        "Department",
                        "JobFunction"
                    ]
                }
            }
        }
    ]
}
```

------

# IAM: 認証情報レポートを生成して取得する
<a name="reference_policies_examples_iam-credential-report"></a>

この例は、ユーザーに、AWS アカウント のすべての IAM ユーザーを一覧表示するレポートを生成してダウンロードすることを許可する ID ベースのポリシーを作成する方法を示しています。このレポートには、パスワード、アクセスキー、MFA デバイス、署名証明書など、ユーザー認証情報のステータスが含まれています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。

 認証情報レポートの詳細については、「[AWS アカウント の認証情報レポートを生成します。](id_credentials_getting-report.md)」を参照してください

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:GenerateCredentialReport",
            "iam:GetCredentialReport"
        ],
        "Resource": "*"
    }
}
```

------

# IAM:: グループのメンバーシップをプログラムによりコンソールで管理することを許可する
<a name="reference_policies_examples_iam_manage-group-membership"></a>

この例では、`MarketingTeam` という名前のグループのメンバーシップを更新することを許可する ID ベースのポリシーの作成方法を示します。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーで行うこと
+ この `ViewGroups` ステートメントにより、ユーザーは AWS マネジメントコンソール 内のすべてのユーザーとグループを一覧表示できます。また、アカウント内のユーザーに関する基本情報を表示することもできます。これらのアクセス許可は、リソース ARN をサポートしていないか、または指定する必要がないため、独自のステートメントに含まれている必要があります。代わりに `"Resource" : "*"` を指定するアクセス許可を使用します。
+ `ViewEditThisGroup` ステートメントを使用すると、ユーザーは `MarketingTeam` グループに関する情報を表示したり、そのグループにユーザーを追加したり削除したりできます。

このポリシーでは、ユーザーはユーザーまたは `MarketingTeam` グループのアクセス許可を表示または編集できません。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewGroups",
            "Effect": "Allow",
            "Action": [
                "iam:ListGroups",
                "iam:ListUsers",
                "iam:GetUser",
                "iam:ListGroupsForUser"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ViewEditThisGroup",
            "Effect": "Allow",
            "Action": [
                "iam:AddUserToGroup",
                "iam:RemoveUserFromGroup",
                "iam:GetGroup"
            ],
            "Resource": "arn:aws:iam::*:group/MarketingTeam"
        }
    ]
}
```

------

# IAM: 特定のタグを管理する
<a name="reference_policies_examples_iam-manage-tags"></a>

この例は、`Department` IAM エンティティ (ユーザーおよびロール) からタグキーを使用して IAM タグを追加または削除することを許可する ID ベースのポリシーの、作成方法を示しています。このポリシーでは、`Department` タグの値は制限されません。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:TagUser",
            "iam:TagRole",
            "iam:UntagUser",
            "iam:UntagRole"

        ],
        "Resource": "*",
        "Condition": {"ForAllValues:StringEquals": {"aws:TagKeys": "Department"}}
    }
}
```

------

# IAM: IAM ロールを特定の AWS のサービスに渡す
<a name="reference_policies_examples_iam-passrole-service"></a>

この例は、IAM サービスロールを Amazon CloudWatch サービスに渡すことを許可する ID ベースのポリシーの作成方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

サービスロールは、IAM ロールを引き受けることができるプリンシパルとして AWS サービスを指定する ロールです。これにより、サービスはユーザーに代わってロールを引き受け、他のサービスのリソースにアクセスできます。Amazon CloudWatch がユーザーが渡すロールを引き受けるようにするには、ユーザーのロールの信頼ポリシーのプリンシパルとして `cloudwatch.amazonaws.com` サービスプリンシパルを指定する必要があります。サービスプリンシパルはサービスによって定義されます。サービスのサービスプリンシパルについては、そのサービスのドキュメントを参照してください。一部のサービスについては、[IAM と連携する AWS のサービス](reference_aws-services-that-work-with-iam.md) を参照し、[**サービスにリンクされたロール**] 列で [**はい**] になっているサービスを探してください。サービスリンクロールに関するドキュメントをサービスで表示するには、リンクで **[はい]** を選択します。`amazonaws.com` を検索してサービスプリンシパルを表示します。

サービスにサービスロールを渡す方法の詳細については、「[AWS サービスにロールを渡すアクセス許可をユーザーに付与する](id_roles_use_passrole.md)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "*",
            "Condition": {
                "StringEquals": {"iam:PassedToService": "cloudwatch.amazonaws.com"}
            }
        }
    ]
}
```

------

# IAM: レポートなしでの IAM コンソールへの読み取り専用アクセスを許可します
<a name="reference_policies_examples_iam_read-only-console-no-reporting"></a>

この例は、IAM ユーザーが文字列 `Get` または `List` で始まるIAMアクションを実行できるようにする ID ベースのポリシーを作成する方法を示しています。ユーザーがコンソールを操作すると、コンソールは IAM にグループ、ユーザー、ロール、およびポリシーを一覧表示し、それらのリソースに関するレポートを生成するようにリクエストします。

アスタリスクは、ワイルドカードとして機能します。ポリシーで `iam:Get*` を使用すると、結果のアクセス許可には、`Get` や `GetUser` など、`GetRole` で始まるすべての IAM アクションが含まれます。ワイルドカードは、今後、新しいタイプのエンティティが IAM に追加される場合に役立ちます。この場合、ポリシーによって付与されたアクセス許可によって、ユーザーは自動的にそれらの新しいエンティティに関する詳細を一覧表示して取得できます。

このポリシーは、レポートまたはサービスの最終アクセス詳細を生成するために使用できません。これを許可する別のポリシーについては、[IAM: IAM コンソールへの読み取り専用アクセスを許可する](reference_policies_examples_iam_read-only-console.md) を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:Get*",
            "iam:List*"
        ],
        "Resource": "*"
    }
}
```

------

# IAM: IAM コンソールへの読み取り専用アクセスを許可する
<a name="reference_policies_examples_iam_read-only-console"></a>

この例は、IAM ユーザーが文字列 `Get`、`List`、または `Generate` で始まる IAM アクションを実行できるようにする ID ベースのポリシーを作成する方法を示しています。ユーザーが IAM コンソールを操作すると、コンソールはグループ、ユーザー、ロール、およびポリシーを一覧表示し、それらのリソースに関するレポートを生成するようにリクエストします。

アスタリスクは、ワイルドカードとして機能します。ポリシーで `iam:Get*` を使用すると、結果のアクセス許可には、`Get` や `GetUser` など、`GetRole` で始まるすべての アクションが含まれます。特に新しい種類のエンティティが今後 IAM に追加される場合は、ワイルドカードを使用すると便利です。この場合、ポリシーによって付与されたアクセス許可によって、ユーザーは自動的にそれらの新しいエンティティに関する詳細を一覧表示して取得できます。

このポリシーは、レポートまたはサービスの最終アクセス詳細を生成する権限を含むコンソールアクセスに使用します。アクションの生成を許可しない別のポリシーについては、[IAM: レポートなしでの IAM コンソールへの読み取り専用アクセスを許可します](reference_policies_examples_iam_read-only-console-no-reporting.md)。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:Get*",
            "iam:List*",
            "iam:Generate*"
        ],
        "Resource": "*"
    }
}
```

------

# IAM:: 特定の IAM ユーザーによるグループの管理をプログラムによりコンソールで許可する
<a name="reference_policies_examples_iam_users-manage-group"></a>

この例は、特定の IAM ユーザーが `AllUsers` グループを管理するための、特定の ID ベースのポリシーを作成する方法を示しています。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーで行うこと
+ `AllowAllUsersToListAllGroups` ステートメントでは、すべてのグループを一覧表示します。これはコンソールのアクセスに必要です。このアクセス許可は、リソース ARN をサポートしていないため、独自のステートメント内にある必要があります。代わりに `"Resource" : "*"` を指定するアクセス許可を使用します。
+ `AllowAllUsersToViewAndManageThisGroup` ステートメントは、グループリソースタイプに対して実行できるすべてのグループアクションを許可します。グループリソースタイプではなくユーザリソースタイプで実行できる `ListGroupsForUser` アクションは許可されていません。IAM アクションに指定できるリソースタイプの詳細については、「[AWS Identity and Access Management のアクション、リソース、条件キー](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_identityandaccessmanagement.html#identityandaccessmanagement-actions-as-permissions)」を参照してください。
+ `LimitGroupManagementAccessToSpecificUsers` ステートメントは、指定した名前を持つユーザーが書き込みおよびアクセス許可管理グループのアクションにアクセスすることを拒否します。ポリシーで指定されたユーザーがグループに変更しようとすると、このステートメントはリクエストを拒否しません。このリクエストは、`AllowAllUsersToViewAndManageThisGroup` ステートメントで許可されます。他のユーザーがこれらのオペレーションを実行しようとすると、リクエストは拒否されます。IAM コンソールでこのポリシーを作成している間、[**書き込み**] または [**アクセス許可管理**] アクセスレベルで定義されている IAM アクションを表示できます。これを行うには、[**JSON**] タブから [**Visual editor (ビジュアルエディタ)**] タブに切り替えます。アクセスレベルの詳細については、「[AWS Identity and Access Management のアクション、リソース、および条件キー](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_identityandaccessmanagement.html#identityandaccessmanagement-actions-as-permissions)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowAllUsersToListAllGroups",
            "Effect": "Allow",
            "Action": "iam:ListGroups",
            "Resource": "*"
        },
        {
            "Sid": "AllowAllUsersToViewAndManageThisGroup",
            "Effect": "Allow",
            "Action": "iam:*Group*",
            "Resource": "arn:aws:iam::*:group/AllUsers"
        },
        {
            "Sid": "LimitGroupManagementAccessToSpecificUsers",
            "Effect": "Deny",
            "Action": [
                "iam:AddUserToGroup",
                "iam:CreateGroup",
                "iam:RemoveUserFromGroup",
                "iam:DeleteGroup",
                "iam:AttachGroupPolicy",
                "iam:UpdateGroup",
                "iam:DetachGroupPolicy",
                "iam:DeleteGroupPolicy",
                "iam:PutGroupPolicy"
            ],
            "Resource": "arn:aws:iam::*:group/AllUsers",
            "Condition": {
                "StringNotEquals": {
                    "aws:username": [
                        "srodriguez",
                        "mjackson",
                        "adesai"
                    ]
                }
            }
        }
    ]
}
```

------

# IAM: アカウントのパスワード要件の設定をプログラムによりコンソールで許可する
<a name="reference_policies_examples_iam_set-account-pass-policy"></a>

この例では、ユーザーがアカウントのパスワード要件を表示して更新することを許可する ID ベースのポリシーの作成方法を示します。パスワード要件は、アカウントメンバーのパスワードの複雑さの要件と必須のローテーション期間を指定します。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。

アカウントのパスワードポリシー要件の設定方法については、「[IAM ユーザー用のアカウントパスワードポリシーを設定する](id_credentials_passwords_account-policy.md)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:GetAccountPasswordPolicy",
            "iam:UpdateAccountPasswordPolicy"
        ],
        "Resource": "*"
    }
}
```

------

# IAM: ユーザーパスに基づいた Policy Simulator API へのアクセス
<a name="reference_policies_examples_iam_policy-sim-path"></a>

この例は、パス `Department/Development` を持つユーザーにのみ Policy Simulator API の使用を許可する ID ベースのポリシーを作成する方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:GetContextKeysForPrincipalPolicy",
                "iam:SimulatePrincipalPolicy"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:user/Department/Development/*"
        }
    ]
}
```

------

**注記**  
パス `Department/Development` があるユーザーにのみ Policy Simulator コンソールの使用を許可するポリシーを作成するには、[IAM: ユーザーパスに基づく Policy Simulator のコンソールへのアクセス](reference_policies_examples_iam_policy-sim-path-console.md) を参照してください。

# IAM: ユーザーパスに基づく Policy Simulator のコンソールへのアクセス
<a name="reference_policies_examples_iam_policy-sim-path-console"></a>

この例では、パス `Department/Development` を持つユーザーにのみ Policy Simulator コンソールの使用を許可する ID ベースのポリシーを作成する方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

IAM ポリシーシミュレーターは [https://policysim.aws.amazon.com/](https://policysim.aws.amazon.com/) でアクセスできます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:GetPolicy",
                "iam:GetUserPolicy"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "iam:GetUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListGroupsForUser",
                "iam:ListUserPolicies",
                "iam:ListUsers"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:user/Department/Development/*"
        }
    ]
}
```

------

# IAM: IAM ユーザーに MFA デバイスの自己管理を許可する
<a name="reference_policies_examples_iam_mfa-selfmanage"></a>

この例は、IAM ユーザーが[多要素認証 (MFA)](id_credentials_mfa.md) デバイスを自己管理することを許可する ID ベースのポリシーの作成方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。

**注記**  
このポリシーを設定した IAM ユーザーが MFA 認証されていない場合、このポリシーは、MFA を使用した認証に必要なアクションを除いて、すべての AWS アクションへのアクセスを拒否します。AWS にサインインしているユーザーにこれらのアクセス許可を追加する場合、これらの変更を確認するには、サインアウトしてからサインインする必要がある場合があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowListActions",
            "Effect": "Allow",
            "Action": [
                "iam:ListUsers",
                "iam:ListVirtualMFADevices"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowUserToCreateVirtualMFADevice",
            "Effect": "Allow",
            "Action": [
                "iam:CreateVirtualMFADevice"
            ],
            "Resource": "arn:aws:iam::*:mfa/*"
        },
        {
            "Sid": "AllowUserToManageTheirOwnMFA",
            "Effect": "Allow",
            "Action": [
                "iam:EnableMFADevice",
                "iam:GetMFADevice",
                "iam:ListMFADevices",
                "iam:ResyncMFADevice"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowUserToDeactivateTheirOwnMFAOnlyWhenUsingMFA",
            "Effect": "Allow",
            "Action": [
                "iam:DeactivateMFADevice"
            ],
            "Resource": [
                "arn:aws:iam::*:user/${aws:username}"
            ],
            "Condition": {
                "Bool": {
                    "aws:MultiFactorAuthPresent": "true"
                }
            }
        },
        {
            "Sid": "BlockMostAccessUnlessSignedInWithMFA",
            "Effect": "Deny",
            "NotAction": [
                "iam:CreateVirtualMFADevice",
                "iam:EnableMFADevice",
                "iam:ListMFADevices",
                "iam:ListUsers",
                "iam:ListVirtualMFADevices",
                "iam:ResyncMFADevice"
            ],
            "Resource": "*",
            "Condition": {
                "BoolIfExists": {
                    "aws:MultiFactorAuthPresent": "false"
                }
            }
        }
    ]
}
```

------

# IAM: IAM ユーザーが自分の認証情報をプログラムまたはコンソールで更新することを許可する
<a name="reference_policies_examples_iam_credentials_console"></a>

この例では、IAM ユーザーが自分のアクセスキー、署名入り証明書、サービス固有の認証情報、パスワードを更新することを許可するアイデンティティベースのポリシーを作成する方法を示します。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iam:ListUsers",
                "iam:GetAccountPasswordPolicy"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:*AccessKey*",
                "iam:ChangePassword",
                "iam:GetUser",
                "iam:*ServiceSpecificCredential*",
                "iam:*SigningCertificate*"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        }
    ]
}
```

------

コンソールでユーザーが自分のパスワードを変更できる方法についての詳細は、「[IAM ユーザーが自分のパスワードを変更する方法](id_credentials_passwords_user-change-own.md)」を参照してください。

# IAM: AWS Organizations ポリシーのサービスの最終アクセス時間情報を表示
<a name="reference_policies_examples_iam_service-accessed-data-orgs"></a>

この例では、特定の AWS Organizations ポリシーについて、サービスの最後にアクセスした情報の表示を許可する ID ベースのポリシーを作成する方法を示します。このポリシーでは、`p-policy123` ID を使用してサービスコントロールポリシー (SCP) のデータを取得できます。レポートを生成して表示する人物は、AWS Organizations 管理アカウントの認証情報を使用して認証される必要があります。このポリシーにより、リクエスタは組織内の任意の AWS Organizations エンティティのデータを取得できます。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

必要なアクセス許可、トラブルシューティング、およびサポートされているリージョンを含む、最終アクセス情報に関する重要な情報については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowOrgsReadOnlyAndIamGetReport",
            "Effect": "Allow",
            "Action": [
                "iam:GetOrganizationsAccessReport",
                "organizations:Describe*",
                "organizations:List*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowGenerateReportOnlyForThePolicy",
            "Effect": "Allow",
            "Action": "iam:GenerateOrganizationsAccessReport",
            "Resource": "*",
            "Condition": {
                "StringEquals": {"iam:OrganizationsPolicyId": "p-policy123"}
            }
        }
    ]
}
```

------

# IAM: ユーザー、グループ、またはロールに適用できる管理ポリシーを制限する
<a name="reference_policies_examples_iam_limit-managed"></a>

この例は、IAM ユーザー、グループ、またはロールに適用できるカスタマー管理ポリシーと AWS 管理ポリシーを制限する ID ベースのポリシーを作成する方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:AttachUserPolicy",
            "iam:DetachUserPolicy"
        ],
        "Resource": "*",
        "Condition": {
            "ArnEquals": {
                "iam:PolicyARN": [
                    "arn:aws:iam::*:policy/policy-name-1",
                    "arn:aws:iam::*:policy/policy-name-2"
                ]
            }
        }
    }
}
```

------

# AWS: AWS マネージド IAM ポリシー以外のアカウント外のリソースへのアクセスを拒否します
<a name="resource_examples_iam_policies_resource_account"></a>

ID ベースポリシーの `aws:ResourceAccount` を使用すると、ユーザーまたはロールでサービスが所有するアカウント内のリソースとのやり取りを要求するサービスを利用する機能に影響を与える可能性があります。

例外を用いてポリシーを作成して、AWS マネージド IAM ポリシーを許可することができます。AWS Organizations の外にあるサービス管理アカウントは、マネージド IAM ポリシーを所有しています。一覧表示して AWS マネージドポリシーを取得する IAM アクションは 4 つあります。ポリシー内のステートメント `AllowAccessToS3ResourcesInSpecificAccountsAndSpecificService1` の [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_notaction.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_notaction.html) 要素でこれらのアクションを使用します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowAccessToResourcesInSpecificAccountsAndSpecificService1",
      "Effect": "Deny",
      "NotAction": [
        "iam:GetPolicy",
        "iam:GetPolicyVersion",
        "iam:ListEntitiesForPolicy",
        "iam:ListPolicies"
      ],
      "Resource": "*",
      "Condition": {
        "StringNotEquals": {
          "aws:ResourceAccount": [
            "111122223333"
          ]
        }
      }
    }
  ]
}
```

------

# AWS Lambda: Lambda 関数に Amazon DynamoDB テーブルへのアクセスを許可する
<a name="reference_policies_examples_lambda-access-dynamodb"></a>

この例では、特定の Amazon DynamoDB テーブルへの読み取りおよび書き込みアクセスを許可する ID ベースのポリシーを作成する方法を示します。このポリシーでは、CloudWatch Logs をログファイル に書き込むこともできます。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーを使用するには、Lambda [サービスロール](id_roles_create_for-service.md)にポリシーをアタッチします。サービスロールは、サービスがユーザーに代わってアクションを実行すできるようにするためにアカウントに作成するロールです。このサービスのロールには、信頼ポリシーのプリンシパルとして AWS Lambda を含める必要があります。このポリシーの使用方法の詳細については、AWS セキュリティブログの「[Amazon DynamoDB テーブルへの AWS Lambda のアクセスを許可する AWS IAM ポリシーを作成する方法](https://aws.amazon.com/blogs/security/how-to-create-an-aws-iam-policy-to-grant-aws-lambda-access-to-an-amazon-dynamodb-table/)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ReadWriteTable",
            "Effect": "Allow",
            "Action": [
                "dynamodb:BatchGetItem",
                "dynamodb:GetItem",
                "dynamodb:Query",
                "dynamodb:Scan",
                "dynamodb:BatchWriteItem",
                "dynamodb:PutItem",
                "dynamodb:UpdateItem"
            ],
            "Resource": "arn:aws:dynamodb:*:*:table/SampleTable"
        },
        {
            "Sid": "GetStreamRecords",
            "Effect": "Allow",
            "Action": "dynamodb:GetRecords",
            "Resource": "arn:aws:dynamodb:*:*:table/SampleTable/stream/* "
        },
        {
            "Sid": "WriteLogStreamsAndGroups",
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogStream",
                "logs:PutLogEvents"
            ],
            "Resource": "*"
        },
        {
            "Sid": "CreateLogGroup",
            "Effect": "Allow",
            "Action": "logs:CreateLogGroup",
            "Resource": "*"
        }
    ]
}
```

------

# Amazon RDS: 特定のリージョン内で RDS データベース全体へのアクセスを許可する
<a name="reference_policies_examples_rds_region"></a>

この例では、特定のリージョン内で RDS データベースへのフルアクセスを許可する ID ベースのポリシーを作成する方法を示します。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、「[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)」の手順に従います。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "rds:*",
            "Resource": ["arn:aws:rds:us-east-1:*:*"]
        },
        {
            "Effect": "Allow",
            "Action": ["rds:Describe*"],
            "Resource": ["*"]
        }
    ]
}
```

------

# Amazon RDS: RDS データベースの復元をプログラムによりコンソールで許可する
<a name="reference_policies_examples_rds_db-console"></a>

この例は、RDS データベースの復元を許可する ID ベースのポリシーを作成する方法を示しています。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:Describe*",
                "rds:CreateDBParameterGroup",
                "rds:CreateDBSnapshot",
                "rds:DeleteDBSnapshot",
                "rds:Describe*",
                "rds:DownloadDBLogFilePortion",
                "rds:List*",
                "rds:ModifyDBInstance",
                "rds:ModifyDBParameterGroup",
                "rds:ModifyOptionGroup",
                "rds:RebootDBInstance",
                "rds:RestoreDBInstanceFromDBSnapshot",
                "rds:RestoreDBInstanceToPointInTime"
            ],
            "Resource": "*"
        }
    ]
}
```

------

# Amazon RDS: タグ所有者がタグ付けした RDS リソースへのフルアクセスを許可する
<a name="reference_policies_examples_rds_tag-owner"></a>

この例は、タグ付けした RDS リソースへのフルアクセスをタグの所有者に許可する ID ベースのポリシーを作成する方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "rds:Describe*",
                "rds:List*"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "rds:DeleteDBInstance",
                "rds:RebootDBInstance",
                "rds:ModifyDBInstance"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {"rds:db-tag/Owner": "${aws:username}"}
            }
        },
        {
            "Action": [
                "rds:ModifyOptionGroup",
                "rds:DeleteOptionGroup"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {"rds:og-tag/Owner": "${aws:username}"}
            }
        },
        {
            "Action": [
                "rds:ModifyDBParameterGroup",
                "rds:ResetDBParameterGroup"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {"rds:pg-tag/Owner": "${aws:username}"}
            }
        },
        {
            "Action": [
                "rds:AuthorizeDBSecurityGroupIngress",
                "rds:RevokeDBSecurityGroupIngress",
                "rds:DeleteDBSecurityGroup"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {"rds:secgrp-tag/Owner": "${aws:username}"}
            }
        },
        {
            "Action": [
                "rds:DeleteDBSnapshot",
                "rds:RestoreDBInstanceFromDBSnapshot"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {"rds:snapshot-tag/Owner": "${aws:username}"}
            }
        },
        {
            "Action": [
                "rds:ModifyDBSubnetGroup",
                "rds:DeleteDBSubnetGroup"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {"rds:subgrp-tag/Owner": "${aws:username}"}
            }
        },
        {
            "Action": [
                "rds:ModifyEventSubscription",
                "rds:AddSourceIdentifierToSubscription",
                "rds:RemoveSourceIdentifierFromSubscription",
                "rds:DeleteEventSubscription"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {"rds:es-tag/Owner": "${aws:username}"}
            }
        }
    ]
}
```

------

# Amazon S3: Amazon Cognito ユーザーにバケット内のオブジェクトへのアクセスを許可する
<a name="reference_policies_examples_s3_cognito-bucket"></a>

この例では、Amazon Cognito ユーザーが特定の Amazon S3 バケットのオブジェクトにアクセスを許可する ID ベースのポリシーを作成する方法が示されます。このポリシーは、`cognito`、アプリケーションの名前、フェデレーティッドプリンシパル ID が含まれる名前を持つオブジェクトのみにアクセスを許可し、\$1\$1cognito-identity.amazonaws.com:sub\$1 変数で表されます。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

**注記**  
オブジェクトキーで使用される「サブ」値は、ユーザープール内のユーザーのサブ値ではなく、ID プール内のユーザーに関連付けられた ID です。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "ListYourObjects",
      "Effect": "Allow",
      "Action": "s3:ListBucket",
      "Resource": [
        "arn:aws:s3:::bucket-name"
      ],
      "Condition": {
        "StringLike": {
          "s3:prefix": [
            "cognito/application-name/${cognito-identity.amazonaws.com:sub}/*"
          ]
        }
      }
    },
    {
      "Sid": "ReadWriteDeleteYourObjects",
      "Effect": "Allow",
      "Action": [
        "s3:DeleteObject",
        "s3:GetObject",
        "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::bucket-name/cognito/application-name/${cognito-identity.amazonaws.com:sub}/*"
      ]
    }
  ]
}
```

------

Amazon Cognito は、ウェブおよびモバイルアプリの認証、認可、およびユーザー管理機能を提供します。ユーザーは、ユーザー名とパスワードを使用して直接サインインするか、Facebook、Amazon、Google などのサードパーティーを通じてサインインできます。

Amazon Cognito の主な 2 つのコンポーネントは、ユーザープールと ID プールです。ユーザープールは、アプリユーザーのサインアップとサインインオプションを提供するユーザーディレクトリです。ID プールは、AWS の他のサービスに対するアクセスをユーザーに許可します。ID プールとユーザープールは別々に使用することも、一緒に使用することもできます。

Amazon Cognito の詳細については、「[Amazon Cognito ユーザーガイド](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-identity.html)」を参照してください。

# Amazon S3: フェデレーションユーザーが Amazon S3 にある自分のホームディレクトリにプログラムを使用してコンソール内でアクセスできるようにします
<a name="reference_policies_examples_s3_federated-home-directory-console"></a>

この例では、フェデレーティッドプリンシパルが S3 にある独自のホームディレクトリバケットオブジェクトにアクセスを許可する ID ベースのポリシーを作成する方法が示されます。ホームディレクトリは、`home` フォルダや個々のフェデレーティッドプリンシパルのフォルダを含むバケットです。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーの `${aws:userid}` 変数は、`role-id:specified-name` に解決されます。フェデレーティッドプリンシパル ID の `role-id` の部分は、作成時にフェデレーティッドプリンシパルに割り当てられる一意の識別子です。詳細については、「[一意の識別子](reference_identifiers.md#identifiers-unique-ids)」を参照してください。`specified-name` は、フェデレーティッドプリンシパルがロールを引き受けるときに `AssumeRoleWithWebIdentity` リクエストに渡される [RoleSessionName パラメータ](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html#API_AssumeRoleWithWebIdentity_RequestParameters)です。

ロール ID を表示するには、AWS CLI コマンド `aws iam get-role --role-name specified-name` を使用します。たとえば、フレンドリ名を `John` と指定すると、CLI はロール ID として `AROAXXT2NJT7D3SIQN7Z6` を返します。この場合、フェデレーティッドプリンシパルのユーザー ID は `AROAXXT2NJT7D3SIQN7Z6:John` です。このポリシーでは、フェデレーティッドプリンシパルの John が `AROAXXT2NJT7D3SIQN7Z6:John` のプレフィックスを使用して Amazon S3 バケットにアクセスを許可します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ConsoleAccess",
            "Effect": "Allow",
            "Action": [
                "s3:GetAccountPublicAccessBlock",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "s3:GetBucketPolicyStatus",
                "s3:GetBucketPublicAccessBlock",
                "s3:ListAccessPoints",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket",
            "Condition": {
                "StringLike": {
                    "s3:prefix": [
                        "",
                        "home/",
                        "home/${aws:userid}/*"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/home/${aws:userid}",
                "arn:aws:s3:::amzn-s3-demo-bucket/home/${aws:userid}/*"
            ]
        }
    ]
}
```

------

# Amazon S3: S3 バケットアクセス、しかし最新の MFA がなく、本番バケットが拒否された
<a name="reference_policies_examples_s3_full-access-except-production"></a>

この例では、オブジェクトの更新、追加、削除など、Amazon S3 管理者が任意のバケットへのアクセスを許可する ID ベースのポリシーを作成する方法を示します。ただし、過去 30 分以内にユーザーが [多要素認証 (MFA)](id_credentials_mfa.md) を使用してサインインしていない場合、`amzn-s3-demo-bucket-production` バケットへのアクセスは明示的に拒否されます。このポリシーは、コンソールで、AWS CLI または AWS APIを使用してプログラムでこのアクションを実行するために必要なアクセス許可を付与します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーでは、長期的なユーザーアクセスキーを使用して `amzn-s3-demo-bucket` バケットへのプログラムによるアクセスを許可することはありません。これは、`aws:MultiFactorAuthAge` 条件キーと `NumericGreaterThanIfExists` 条件演算子を使用して行います。このポリシー条件は、MFA が存在しない場合、または MFA の経過時間が 30 分を超える場合に `true` を返します。このような場合、アクセスが拒否されます。`amzn-s3-demo-bucket-production` バケットにプログラムでアクセスするには、S3 管理者は [GetSessionToken](id_credentials_temp_request.md#api_getsessiontoken) API オペレーションを使用して直近 30 分以内に生成された一時的な認証情報を使用する必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ListAllS3Buckets",
            "Effect": "Allow",
            "Action": ["s3:ListAllMyBuckets"],
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Sid": "AllowBucketLevelActions",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation"
            ],
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Sid": "AllowBucketObjectActions",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl",
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:DeleteObject"
            ],
            "Resource": "arn:aws:s3:::*/*"
        },
        {
            "Sid": "RequireMFAForProductionBucket",
            "Effect": "Deny",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-production/*",
                "arn:aws:s3:::amzn-s3-demo-bucket-production"
            ],
            "Condition": {
                "NumericGreaterThanIfExists": {"aws:MultiFactorAuthAge": "1800"}
            }
        }
    ]
}
```

------

# Amazon S3: IAM ユーザーが自分の S3 ホームディレクトリにプログラムによりコンソールでアクセスすることを許可する
<a name="reference_policies_examples_s3_home-directory-console"></a>

この例では、IAM ユーザーが S3 の自分のホームディレクトリバケットオブジェクトへのアクセスを許可する ID ベースのポリシーの、作成方法を示します。ホームディレクトリは、`home` フォルダや個々のユーザーのフォルダを含むバケットです。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーは、IAM ロールを使用するときに `aws:username` 変数を使用できないため、IAM ロールを使用するときには機能しません。プリンシパルキーバリューの詳細については、「[プリンシパルキーの値](reference_policies_variables.md#principaltable)」をご参照ください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ConsoleAccess",
            "Effect": "Allow",
            "Action": [
                "s3:GetAccountPublicAccessBlock",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "s3:GetBucketPolicyStatus",
                "s3:GetBucketPublicAccessBlock",
                "s3:ListAccessPoints",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket",
            "Condition": {
                "StringLike": {
                    "s3:prefix": [
                        "",
                        "home/",
                        "home/${aws:username}/*"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/home/${aws:username}",
                "arn:aws:s3:::amzn-s3-demo-bucket/home/${aws:username}/*"
            ]
        }
    ]
}
```

------

# Amazon S3: 特定の S3 バケットに対する管理の制限
<a name="reference_policies_examples_s3_deny-except-bucket"></a>

この例では、Amazon S3 バケットの管理を特定のバケットに制限する ID ベースのポリシーを作成する方法を示します。このポリシーは、すべての Amazon S3 アクションを実行するアクセス権限を付与しますが、Amazon S3 以外のすべての AWS のサービス へのアクセスを拒否します。次の例を参照してください。このポリシーによると、S3 バケットまたは S3 オブジェクトリソースで実行できる Amazon S3 アクションにのみアクセスできます。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

このポリシーが、このポリシーによって拒否されたアクションを許可する他のポリシー ([AmazonS3FullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AmazonS3FullAccess) または [AmazonEC2FullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AmazonEC2FullAccess) AWS 管理ポリシーなど) と組み合わされて使用される場合、アクセスは拒否されます。これは、明示的な拒否のステートメントは許可のステートメントより優先されるからです。詳細については、「[AWS エンフォースメントコードロジックがリクエストを評価してアクセスを許可または拒否する方法](reference_policies_evaluation-logic_policy-eval-denyallow.md)」を参照してください。

**警告**  
[`NotAction`](reference_policies_elements_notaction.md) および [`NotResource`](reference_policies_elements_notresource.md) は、注意して使用する必要がある高度なポリシー要素です。このポリシーは、Amazon S3 を除くすべての AWS サービスへのアクセスを拒否します。このポリシーをユーザーにアタッチすると、他のサービスにアクセス許可を付与する他のポリシーは無視され、アクセスは拒否されます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::bucket-name",
                "arn:aws:s3:::bucket-name/*"
            ]
        },
        {
            "Effect": "Deny",
            "NotAction": "s3:*",
            "NotResource": [
                "arn:aws:s3:::bucket-name",
                "arn:aws:s3:::bucket-name/*"
            ]
        }
    ]
}
```

------

# Amazon S3 バケットオブジェクトへの読み書きアクセスを付与する
<a name="reference_policies_examples_s3_rw-bucket"></a>

この例は、特定の Amazon S3 バケット内のオブジェクトへの `Read` および `Write` アクセスを許可する ID ベースのポリシーを作成する方法を示しています。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

`s3:*Object` アクションは、アクション名の一部にワイルドカードを使用します。この `AllObjectActions` ステートメントでは、`GetObject`、`DeleteObject`、`PutObject`、および「Object」という単語で終わるその他の Amazon S3 アクションを使用できます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Action": ["s3:ListBucket"],
            "Resource": ["arn:aws:s3:::bucket-name"]
        },
        {
            "Sid": "AllObjectActions",
            "Effect": "Allow",
            "Action": "s3:*Object",
            "Resource": ["arn:aws:s3:::bucket-name/*"]
        }
    ]
}
```

------

**注記**  
Amazon S3 バケットのオブジェクトへの `Read` と `Write` アクセスを許可し、コンソールアクセスのための追加のアクセス許可も含めるには、「[Amazon S3: S3 バケットのオブジェクトへの読み取りおよび書き込みアクセスをプログラムによりコンソールで許可する](reference_policies_examples_s3_rw-bucket-console.md)」を参照してください。

# Amazon S3: S3 バケットのオブジェクトへの読み取りおよび書き込みアクセスをプログラムによりコンソールで許可する
<a name="reference_policies_examples_s3_rw-bucket-console"></a>

この例は、特定の S3 バケット内のオブジェクトへの `Read` および `Write` アクセスを許可する ID ベースのポリシーを作成する方法を示しています。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。このポリシーを使用するには、サンプルポリシーの*イタリック体のプレースホルダーテキスト*を独自の情報に置き換えます。次に、[ポリシーの作成](access_policies_create.md)または[ポリシーの編集](access_policies_manage-edit.md)の手順に従います。

`s3:*Object` アクションは、アクション名の一部にワイルドカードを使用します。この `AllObjectActions` ステートメントでは、`GetObject`、`DeleteObject`、`PutObject`、および「Object」という単語で終わるその他の Amazon S3 アクションを使用できます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ConsoleAccess",
            "Effect": "Allow",
            "Action": [
                "s3:GetAccountPublicAccessBlock",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "s3:GetBucketPolicyStatus",
                "s3:GetBucketPublicAccessBlock",
                "s3:ListAccessPoints",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket"]
        },
        {
            "Sid": "AllObjectActions",
            "Effect": "Allow",
            "Action": "s3:*Object",
            "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket/*"]
        }
    ]
}
```

------

# IAM ポリシーを管理する
<a name="access_policies_manage"></a>

IAM は、すべてのタイプの IAM ポリシー (管理ポリシーとインラインポリシー) を作成および管理するためのツールを提供します。IAM ID (IAMユーザー、グループ、またはロール) にアクセス許可を追加するには、ポリシーを作成し、ポリシーを検証してから、ポリシーを ID にアタッチします。アイデンティティに複数のポリシーをアタッチし、各ポリシーに複数のアクセス許可を含めることができます。

**Topics**
+ [追加リソース](#access_policies_manage-additional-resources)
+ [カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](access_policies_create.md)
+ [IAM ポリシーの検証](access_policies_policy-validator.md)
+ [IAM ポリシーシミュレーターを使用した IAM ポリシーのテスト](access_policies_testing-policies.md)
+ [IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)
+ [IAM ポリシーのバージョニング](access_policies_managed-versioning.md)
+ [IAM ポリシーを編集する](access_policies_manage-edit.md)
+ [IAM ポリシーを削除する](access_policies_manage-delete.md)
+ [最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)

## 追加リソース
<a name="access_policies_manage-additional-resources"></a>

AWS ポリシーの詳細については、次のリソースを参照してください。
+ 各種 IAM ポリシーの詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。
+ IAM 内でのポリシーの使用についての一般情報は、「[AWS リソースの アクセス管理](access.md)」を参照してください。
+ IAM Access Analyzer を利用してエンティティのアクセスアクティビティに基づく IAM ポリシーを生成する方法については、「[IAM Access Analyzer ポリシー生成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-generation.html)」を参照してください。
+ 特定の IAM アイデンティティに対して複数のポリシーが有効な場合のアクセス許可の評価方法については、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。
+ AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

# カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する
<a name="access_policies_create"></a>

[ポリシー](access_policies.md)では、AWS 内の ID やリソースに対するアクセス許可を定義します。AWS マネジメントコンソール、AWS CLI、または AWS API を使用して、IAM にカスタマー管理ポリシーを作成できます。カスタマー管理ポリシーは、自分の AWS アカウントで管理するスタンドアロンポリシーです。その後、ポリシーを AWS アカウント のアイデンティティ (ユーザー、グループ、またはロール) にアタッチできます。

ID ベースのポリシーは、IAM の ID にアタッチされるポリシーです。ID ベースのポリシーには、AWS マネージドポリシー、カスタマー管理ポリシー、インラインポリシーがあります。AWS マネージドポリシーは、AWS によって作成および管理されるポリシーで、ユーザーは使用することはできますが、管理することはできません。インラインポリシーは、IAM ユーザーグループ、ユーザー、またはロールに直接作成して埋め込むポリシーです。インラインポリシーは、他の ID で再利用したり、埋め込み先の ID 以外で管理したりすることはできません。詳細については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。

一般に、インラインポリシーや AWS マネージドポリシーではなくカスタマー管理ポリシーを使用する方が効果的です。AWS マネージドポリシーには通常、広範な管理アクセス許可または読み取り専用アクセス許可が用意されています。セキュリティを最大限に高めるには、[最小特権を付与](best-practices.md#grant-least-privilege)します。つまり、特定のジョブタスクの実行に必要なアクセス許可のみを付与します。

IAM ポリシーを作成または編集すると、AWS は、ポリシー検証を自動的に実行し、最小限の権限で効果的なポリシーを作成するのに役立ちます。AWS マネジメントコンソール では、IAM は JSON 構文エラーを識別します。一方、IAM Access Analyzer は、ポリシーをさらに絞り込むのに役立つ推奨事項を含む追加のポリシーチェックを提供します。ポリシーの検証の詳細については、「[IAM ポリシーの検証](access_policies_policy-validator.md)」を参照してください。IAM Access Analyzer のポリシーチェックと実用的な推奨事項の詳細については、「[IAM Access Analyzer ポリシーの検証](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)」を参照してください。

AWS マネジメントコンソール、AWS CLI、または AWS API を使用して、IAM でカスタマー管理ポリシーを作成できます。CloudFormation テンプレートを使用してポリシーを追加または更新する方法については、「*CloudFormation ユーザーガイド*」の「[AWS Identity and Access Management リソースタイプリファレンス](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_IAM.html)」を参照してください。

**Topics**
+ [IAM ポリシーを作成する (コンソール)](access_policies_create-console.md)
+ [IAM ポリシーを作成する (AWS CLI)](access_policies_create-cli.md)
+ [IAM ポリシーを作成する (AWS API)](access_policies_create-api.md)

# IAM ポリシーを作成する (コンソール)
<a name="access_policies_create-console"></a>

[ポリシー](access_policies.md) は、ID またはリソースにアタッチされたときに、そのアクセス許可を定義するエンティティです。AWS マネジメントコンソール を使用して、IAM で*カスタマー管理ポリシー*を作成できます。カスタマー管理ポリシーは、独自の AWS アカウント で管理するスタンドアロンポリシーです。その後、ポリシーを AWS アカウント のアイデンティティ (ユーザー、グループ、またはロール) にアタッチできます。

AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

**Topics**
+ [IAM ポリシーの作成](#access_policies_create-start)
+ [JSON エディターを使用したポリシーの作成](#access_policies_create-json-editor)
+ [ビジュアルエディタでのポリシーの作成](#access_policies_create-visual-editor)
+ [既存の管理ポリシーのインポート](#access_policies_create-copy)

## IAM ポリシーの作成
<a name="access_policies_create-start"></a>

AWS マネジメントコンソール でカスタマー管理ポリシーを作成するには、次のいずれかの方法を使用します。
+ **[JSON](#access_policies_create-json-editor)** — 発行された[アイデンティティベースのポリシーの例](access_policies_examples.md)を貼り付けてカスタマイズします。
+ **[ビジュアルエディタ](#access_policies_create-visual-editor)** — ビジュアルエディタで最初から新しいポリシーを構築できます。ビジュアルエディタを使用する場合は、JSON 構文を理解する必要はありません。
+ **[インポート](#access_policies_create-copy)** — アカウント内から管理ポリシーをインポートしてカスタマイズします。以前に作成した AWS 管理ポリシーまたはカスタマー管理ポリシーをインポートできます。

AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

## JSON エディターを使用したポリシーの作成
<a name="access_policies_create-json-editor"></a>

[**JSON**] オプションを選択して、JSON でポリシーを入力または貼り付けることができます。この方法は、アカウントで使用する[ポリシー例](access_policies_examples.md)をコピーするのに便利です。または、独自の JSON ポリシードキュメントを JSON エディタに入力することもできます。**[JSON]** オプションを使用してビジュアルエディタと JSON を切り替えて、ビューを比較することもできます。

 JSON エディターでポリシーを作成または編集すると、IAM はポリシー検証を実行し、効果的なポリシーの作成に役立ちます。IAM は JSON 構文エラーを識別します。一方、IAM Access Analyzer は、ポリシーをさらに絞り込むのに役立つアクション可能な推奨事項を含む追加のポリシーチェックを提供します。

JSON [ポリシー](access_policies.md)ドキュメントは 1 つ以上のステートメントで構成されます。各ステートメントには、同じ効果エフェクト (`Allow` または `Deny`) を共有するすべてのアクションが含まれ、同じリソースと条件がサポートされている必要があります。1 つのアクションですべてのリソース (`"*"`) を指定する必要があり、別のアクションが特定のリソースの Amazon リソースネーム (ARN) に対応している場合、それらは 2 つの別々の JSON ステートメントに含める必要があります。ARN 形式の詳細については、「AWS 全般のリファレンス ガイド」の「[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)」を参照してください。IAM ポリシーの一般情報については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。IAM ポリシー言語については、「[IAM JSON ポリシーリファレンス](reference_policies.md)」を参照してください。

**JSON ポリシーエディタでポリシーを作成するには**

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

1. 左側のナビゲーションペインで、**[ポリシー]** を選択します。

1. [**Create policy**] (ポリシーの作成) を選択します。

1. [**ポリシーエディタ**] セクションで、[**JSON**] オプションを選択します。

1. JSON ポリシードキュメントを入力するか貼り付けます。IAM ポリシー言語の詳細については、「[IAM JSON ポリシーリファレンス](reference_policies.md)」を参照してください。

1.  [ポリシーの検証](access_policies_policy-validator.md)中に生成されたセキュリティ警告、エラー、または一般警告をすべて解決してから、**[次へ]** を選択します。
**注記**  
いつでも **[ビジュアル]** と **[JSON]** エディタオプションを切り替えることができます。ただし、**[Visual]** エディタで **[次へ]** に変更または選択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

1. （オプション）AWS マネジメントコンソール でポリシーを作成または編集するときに、CloudFormation テンプレートで使用できる JSON または YAML ポリシーテンプレートを生成できます。

   これを行うには、**ポリシーエディタ**で [**アクション**] を選択し、次に [**CloudFormation テンプレートを生成**] を選択します。CloudFormation の詳細については、AWS CloudFormation ユーザーガイドの「[AWS Identity and Access Management リソースタイプリファレンス](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_IAM.html)」を参照してください。

1. ポリシーにアクセス権限を追加し終えたら、[**次へ**] を選択します。

1. [**確認と作成**] ページで、作成するポリシーの [**ポリシー名**] と [**説明**] (オプション) を入力します。[**このポリシーで定義されているアクセス許可**] を確認して、ポリシーによって付与されたアクセス許可を確認します。

1. (オプション) タグをキーと 値のペアとしてアタッチして、メタデータをポリシーに追加します。IAM におけるタグの使用の詳細については、「[AWS Identity and Access Management リソースのタグ](id_tags.md)」を参照してください。

1. **[ポリシーを作成]** をクリックして、新しいポリシーを保存します。

ポリシーを作成したら、グループ、ユーザー、またはロールにアタッチできます。詳細については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。

## ビジュアルエディタでのポリシーの作成
<a name="access_policies_create-visual-editor"></a>

IAM コンソールのビジュアルエディタは、JSON 構文を記述することなくポリシーを作成する方法をガイドします。ビジュアルエディタを使用してポリシーを作成する方法の例については、「[アイデンティティへのアクセスコントロール](access_controlling.md#access_controlling-identities)」を参照してください。

**ビジュアルエディタを使用してポリシーを作成するには**

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

1. 左側のナビゲーションペインで、**[ポリシー]** を選択します。

1. [**Create policy**] (ポリシーの作成) を選択します。

1. [**ポリシーエディター**] セクションで、[**サービスを選択**] セクションを見つけて、AWS サービスを選択します。上部の検索ボックスを使用して、サービスのリストの結果を制限することができます。ビジュアルエディタのアクセス許可ブロック内で選択できるサービスは 1 つだけです。複数のサービスにアクセス許可を付与するには、[**さらにアクセス許可を追加する**] を選択して、複数のアクセス許可ブロックを追加します。

1. [**許可されるアクション**] で、ポリシーに追加するアクションを選択します。アクションは次の方法で選択できます。
   + すべてのアクションのチェックボックスをオンにします。
   + [**アクションを追加**] を選択して、特定のアクションの名前を入力します。ワイルドカード (`*`) を使用して、複数のアクションを指定できます。
   + [**アクセスレベル**] グループの 1 つを選択して、アクセスレベルのすべてのアクション ([**読み取り**]、[**書き込み**]、または [**リスト**] など) を選択します。
   + それぞれの [**アクセスレベル**] グループを展開して、個々のアクションを選択します。

   デフォルトでは、作成しているポリシーが選択するアクションを許可します。その代わりに選択したアクションを拒否するには、[**Switch to deny permissions (アクセス許可の拒否に切り替え)**] を選択します。[IAM はデフォルトでは拒否](reference_policies_evaluation-logic.md)されるため、ユーザーが必要とするアクションとリソースのみに対してアクセス許可を許可することを、セキュリティのベストプラクティスとしてお勧めします。別のステートメントまたはポリシーによって個別に許可されるアクセス許可を上書きする場合のみ、アクセス許可を拒否する JSON ステートメントを作成します。これにより、アクセス許可のトラブルシューティングがより困難になる可能性があるため、拒否ステートメントの数は最小限に制限することをお勧めします。

1. [**リソース**] では、前のステップで選択したサービスとアクションが[特定のリソース](access_controlling.md#access_controlling-resources)の選択をサポートしていない場合は、すべてのリソースが許可され、このセクションを編集することはできません。

   [リソースレベルのアクセス許可](access_controlling.md#access_controlling-resources)をサポートする 1 つ以上のアクションを選択した場合、ビジュアルエディタでそれらのリソースが一覧表示されます。[**リソース**] を展開して、ポリシーのリソースを指定できます。

   リソースは次の方法で指定できます。
   + [**ARN を追加**] を選択して、それらの Amazon リソースネーム (ARN) 別にリソースを指定します。ビジュアル ARN エディタを使用するか、ARN を手動でリストすることができます。ARN 構文の詳細については、「AWS 全般のリファレンス Guide」の「[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)」を参照してください。ポリシーの `Resource` 要素で ARN を使用する方法については、「[IAM JSON ポリシー要素Resource](reference_policies_elements_resource.md)」を参照してください。
   + リソースの横にある **[このアカウント内のすべて]** を選択して、そのタイプのすべてのリソースにアクセス許可を付与します。
   + [**すべて**] を選択し、そのサービスのすべてのリソースを選択します。

1. (オプション) **[リクエスト条件 - *オプション*]** を選択して、作成するポリシーに条件を追加します。条件によって JSON ポリシーステートメントの効果が制限されます。例えば、特定の時間範囲内でそのユーザーのリクエストが発生した場合にのみ、ユーザーがリソースに対してアクションを実行できるように指定できます。一般的に使用される条件を使用して、Multi-Factor Authentication(MFA) デバイスでユーザーを認証する必要があるかどうかを制限することもできます。または、リクエストの発行元を特定範囲内の IP アドレスに限定できます。ポリシー条件で使用できるすべてのコンテキストキーのリストについては、「*サービス認可リファレンス*」の「[AWS サービスのアクション、リソース、および条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html)」を参照してください。

   条件は次の方法で選択できます。
   + 一般的に使用される条件を選択するには、チェックボックスを使用します。
   + 他の条件を指定するには、[**別の条件を追加**] を選択します。条件の [**条件キー**]、[**修飾子**]、[**演算子**] を選択し、[**値**] に入力します。複数の値を追加するには、[**追加**] を選択します。値は、論理 "OR" 演算子によって接続されていると見なすことができます。完了したら、[**条件を追加**] を選択します。

   複数の条件を追加するには、[**別の条件を追加**] を選択します。必要に応じて操作を繰り返します。各条件は、この 1 つのビジュアルエディタのアクセス許可ブロックにのみ適用されます。アクセス許可ブロックが一致すると見なされるためには、すべての条件が満たされている必要があります。つまり、論理 "AND" 演算子によって接続される条件を考慮してください。

   **Condition** 要素の詳細については、「[IAM JSON ポリシーリファレンス](reference_policies.md)」の「[IAM JSON ポリシー要素Condition](reference_policies_elements_condition.md)」を参照してください。

1. さらにアクセス許可ブロックを追加するには、[**さらにアクセス許可を追加**] を選択します。各ブロックに対して、ステップ 2 から 5 を繰り返します。
**注記**  
いつでも **[Visual]** と **[JSON]** エディタオプションを切り替えることができます。ただし、**[Visual]** エディタで **[次へ]** に変更または選択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

1. （オプション）AWS マネジメントコンソール でポリシーを作成または編集するときに、CloudFormation テンプレートで使用できる JSON または YAML ポリシーテンプレートを生成できます。

   これを行うには、**ポリシーエディタ**で [**アクション**] を選択し、次に [**CloudFormation テンプレートを生成**] を選択します。CloudFormation の詳細については、AWS CloudFormation ユーザーガイドの「[AWS Identity and Access Management リソースタイプリファレンス](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_IAM.html)」を参照してください。

1. ポリシーにアクセス権限を追加し終えたら、[**次へ**] を選択します。

1. [**確認と作成**] ページで、作成するポリシーの [**ポリシー名**] と [**説明**] (オプション) を入力します。[**このポリシーで定義されているアクセス許可**] を確認し、意図したアクセス許可を付与したことを確認します。

1. (オプション) タグをキーと 値のペアとしてアタッチして、メタデータをポリシーに追加します。IAM におけるタグの使用の詳細については、「[AWS Identity and Access Management リソースのタグ](id_tags.md)」を参照してください。

1. **[ポリシーを作成]** をクリックして、新しいポリシーを保存します。

ポリシーを作成したら、グループ、ユーザー、またはロールにアタッチできます。詳細については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。

## 既存の管理ポリシーのインポート
<a name="access_policies_create-copy"></a>

新しいポリシーを作成する簡単な方法は、必要なアクセス許可の少なくとも一部を持っているアカウント内の既存の管理ポリシーをインポートすることです。次に、新しい要件に合わせてそのポリシーをカスタマイズできます。

インラインポリシーをインポートすることはできません。管理ポリシーとインラインポリシーの違いについては、「[管理ポリシーとインラインポリシー](access_policies_managed-vs-inline.md)」を参照してください。

**ビジュアルエディタで既存の管理ポリシーをインポートするには**

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

1. 左側のナビゲーションペインで、**[ポリシー]** を選択します。

1. [**Create policy**] (ポリシーの作成) を選択します。

1. **[ポリシーエディタ]** で **[Visual]** を選択し、ページの右側で **[アクション]**、**[ポリシーをインポート]** と選択します。

1. [**Iポリシーをインポート**] ウィンドウで、新しいポリシーに含めるポリシーと最もよく一致する管理ポリシーを選択します。上部の検索ボックスを使用して、ポリシーのリストの結果を制限することができます。

1. [**ポリシーをインポート**] を選択します。

   インポートされたポリシーは、ポリシーの下部にあるアクセス許可ブロックに追加されます。

1. **[Visual]** エディタを使用して、ポリシーをカスタマイズする **[JSON]** を選択します。次に、**[次へ]** を選択します。
**注記**  
いつでも **[Visual]** と **[JSON]** エディタオプションを切り替えることができます。ただし、**[Visual]** エディタで **[次へ]** に変更または選択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

1. [**確認と作成**] ページで、作成するポリシーの [**ポリシー名**] と [**説明**] (オプション) を入力します。これらの設定は後で編集できません。 [**このポリシーで定義されているアクセス許可**] を確認し、[**ポリシーを作成**] を選択して作業を保存します。

**[**JSON**] エディタで既存の管理ポリシーをインポートするには**

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

1. 左側のナビゲーションペインで、**[ポリシー]** を選択します。

1. [**Create policy**] (ポリシーの作成) を選択します。

1. [**ポリシーエディタ**] セクションで [**JSON**] オプションを選択し、ページの右側で [**アクション**]、[**ポリシーをインポート**] と選択します。

1. [**Iポリシーをインポート**] ウィンドウで、新しいポリシーに含めるポリシーと最もよく一致する管理ポリシーを選択します。上部の検索ボックスを使用して、ポリシーのリストの結果を制限することができます。

1. [**ポリシーをインポート**] を選択します。

   インポートされたポリシーのステートメントは、JSON ポリシーの最後に追加されます。

1. JSON でポリシーをカスタマイズします。[ポリシーの検証](access_policies_policy-validator.md)中に生成されたセキュリティ警告、エラー、または一般警告をすべて解決してから、**[次へ]** を選択します。JSON でポリシーをカスタマイズするか、**[Visual]** エディタを選択します。次に、**[次へ]** を選択します。
**注記**  
いつでも **[Visual]** と **[JSON]** エディタオプションを切り替えることができます。ただし、**[Visual]** エディタで **[次へ]** に変更または選択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

1. [**確認と作成**] ページで、作成するポリシーの [**ポリシー名**] と [**説明**] (オプション) を入力します。これらを後で編集することはできません。 [**このポリシーで定義されているアクセス許可**] ポリシーを確認し、[**ポリシーを作成**] を選択して作業を保存します。

ポリシーを作成したら、グループ、ユーザー、またはロールにアタッチできます。詳細については、「[IAM ID のアクセス許可の追加および削除](access_policies_manage-attach-detach.md)」を参照してください。

# IAM ポリシーを作成する (AWS CLI)
<a name="access_policies_create-cli"></a>

[ポリシー](access_policies.md) は、ID またはリソースにアタッチされたときに、そのアクセス許可を定義するエンティティです。AWS CLI を使用して、IAM で*カスタマー管理ポリシー*を作成できます。カスタマー管理ポリシーは、独自の AWS アカウント で管理するスタンドアロンポリシーです。[ベストプラクティス](best-practices.md)として、IAM Access Analyzer を使用して IAM ポリシーを検証し、安全で機能的なアクセス許可を確保することをお勧めします。[ポリシーを検証する](access_policies_policy-validator.md)ことで、ポリシーを AWS アカウント のアイデンティティ (ユーザー、グループ、またはロール) にアタッチする前に、エラーやレコメンデーションに対応できます。

AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

## IAM ポリシーの作成 (AWS CLI)
<a name="create-policies-cli-api"></a>

 AWS Command Line Interface (AWS CLI) を使用して、IAM カスタマー管理ポリシーまたはインラインポリシーを作成できます。

**カスタマー管理ポリシーを作成するには (AWS CLI)**  
以下のコマンドを使用します。
+ [create-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy.html)

**IAM アイデンティティ (グループ、ユーザー、またはロール) のインラインポリシーを作成するには (AWS CLI)**  
以下のいずれかのコマンドを使用します。
+ [put-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-group-policy.html)
+ [put-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-role-policy.html)
+ [put-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-user-policy.html)

**注記**  
IAM を使用して*[サービスリンクロール](id_roles.md#iam-term-service-linked-role)*にインラインポリシーを埋め込むことはできません。

**カスタマー管理ポリシーを検証するには (AWS CLI)**  
次の IAM Access Analyzer ーコマンドを使用します。
+ [ポリシーの検証](https://docs.aws.amazon.com/cli/latest/reference/accessanalyzer/validate-policy.html)

# IAM ポリシーを作成する (AWS API)
<a name="access_policies_create-api"></a>

[ポリシー](access_policies.md) は、ID またはリソースにアタッチされたときに、そのアクセス許可を定義するエンティティです。AWS API を使用して、IAM で*カスタマー管理ポリシー*を作成できます。カスタマー管理ポリシーは、独自の AWS アカウント で管理するスタンドアロンポリシーです。[ベストプラクティス](best-practices.md)として、IAM Access Analyzer を使用して IAM ポリシーを検証し、安全で機能的なアクセス許可を確保することをお勧めします。[ポリシーを検証する](access_policies_policy-validator.md)ことで、ポリシーを AWS アカウント のアイデンティティ (ユーザー、グループ、またはロール) にアタッチする前に、エラーやレコメンデーションに対応できます。

AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

## IAM ポリシーの作成 (AWS API)
<a name="create-policies-api"></a>

AWS API を使用して、IAM カスタマー管理ポリシーまたはインラインポリシーを作成できます。

**カスタマー管理ポリシーを作成するには (AWS API)**  
次のオペレーションを呼び出します。
+ [CreatePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreatePolicy.html)

**IAM アイデンティティ (グループ、ユーザー、またはロール) のインラインポリシーを作成するには (AWS API)**  
以下のいずれかのオペレーションを呼び出します。
+ [PutGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutGroupPolicy.html)
+ [PutRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutRolePolicy.html)
+ [PutUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutUserPolicy.html)

**注記**  
IAM を使用して「*[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*」にインラインポリシーを埋め込むことはできません。

**カスタマー管理ポリシーを編集するには (AWS API)**  
次の IAM Access Analyzer オペレーションを呼び出します。
+ [検証ポリシー](https://docs.aws.amazon.com/access-analyzer/latest/APIReference/API_ValidatePolicy.html)

# IAM ポリシーの検証
<a name="access_policies_policy-validator"></a>

[ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies_overview.html)は、[IAM ポリシーの文法](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-grammar.html)を使用して記述された JSON ドキュメントです。ユーザー、グループ、ロールなどの IAM エンティティにポリシーをアタッチすると、そのエンティティへのアクセス許可が付与されます。

AWS マネジメントコンソール を使用してIAMアクセスコントロールポリシーを作成または編集すると、AWS はそれらを自動的に調べて、IAMポリシーの文法に準拠していることを確認します。AWS により、ポリシーが文法に基づいていないと判断された場合、ポリシーの修正が求められます。

IAM Access Analyzer では、ポリシーをさらに絞り込むのに役立つ推奨事項を含む追加のポリシーチェックが提供されます。IAM Access Analyzer のポリシーチェックと実用的な推奨事項の詳細については、「[IAM Access Analyzer ポリシーの検証](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)」を参照してください。IAM Access Analyzerによって返される警告、エラー、および提案のリストを表示するには、[ IAM Access Analyzer ポリシーチェックリファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-policy-checks.html)を参照してください。

**検証スコープ**  
AWS は、JSON ポリシーの構文と文法を確認します。ARN の形式が適切で、アクション名と条件キーが正しいことも確認します。

**ポリシーの検証へのアクセス**  
JSON ポリシーを作成するか、AWS マネジメントコンソール で既存のポリシーを編集すると、ポリシーが自動的に検証されます。ポリシー構文が有効でない場合は、通知を受け取り、続行する前に問題を修正する必要があります。AWS マネジメントコンソール のアクセス許可がある場合、IAM Access Analyzer ポリシー検証の結果は `access-analyzer:ValidatePolicy` に自動的に返されます。AWS APIまたは AWS CLI を使用してポリシーを検証することもできます。

**既存のポリシー**  
ポリシーエンジンへの最新の更新の前に作成されたか、最後に保存されたために、有効でない既存のポリシーがある可能性があります。[ベストプラクティス](best-practices.md)として、IAM Access Analyzer を使用して IAM ポリシーを検証し、安全で機能的なアクセス許可を確保することをお勧めします。既存のポリシーを開き、生成されたポリシー検証結果を確認することをお勧めします。ポリシー構文のエラーを修正せずに既存のポリシーを編集して保存することはできません。

# IAM ポリシーシミュレーターを使用した IAM ポリシーのテスト
<a name="access_policies_testing-policies"></a>

IAM ポリシーを使用する方法と理由の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。

**IAM Policy Simulator コンソールは [https://policysim.aws.amazon.com/](https://policysim.aws.amazon.com/) でアクセスできます。**

**重要**  
Policy Simulator は、AWS での実際の環境とは異なる結果を出力することがあります。Policy Simulator によるテスト後は、実際の AWS 環境とポリシーを照合して、得られた結果が目的にあっているか確認することをお勧めします。詳細については、「[IAM Policy Simulator のしくみ](#policies_policy-simulator-how-it-works)」を参照してください。

 

IAM Policy Simulator を使用すると、アイデンティティベースのポリシーおよび IAM アクセス許可の境界をテストして、トラブルシューティングが行えます。以下に示しているのは、Policy Simulator で可能ないくつかの一般的な処理です。
+ AWS アカウント の IAM ユーザー、IAM グループ、またはロールにアタッチされている、アイデンティティベースのポリシーをテストします。複数のポリシーがユーザー、ユーザーグループ、またはロールにアタッチされている場合は、すべてのポリシーまたは選択した個別のポリシーをテストできます。特定のリソースで選択されたポリシーについて、どのアクションが許可または拒否されているかをテストできます。
+ IAM エンティティに対する[アクセス許可の境界](access_policies_boundaries.md)の効果をテストし、トラブルシューティングします。一度にシミュレートできるアクセス許可の境界は 1 つのみです。
+ Amazon S3 バケット、Amazon SQS キュー、Amazon SNS トピック、Amazon Glacier ボールトなど、AWS リソースにアタッチされている IAM ユーザーのリソースベースポリシーの効果をテストします。ポリシーシミュレーター内で、IAM ユーザーに対しリソースベースのポリシーを使用するには、シミュレーションにリソースを含める必要があります。また、チェックボックスをオンにして、シミュレーションにそのリソースのポリシーも含める必要があります。
**注記**  
リソースベースのポリシーに関するシミュレーションでは、IAM ロールはサポートされていません。
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/) の組織のメンバーである AWS アカウント であれば、アイデンティティベースのポリシーに対するサービスコントロールポリシー (SCP) の影響をテストできます。
**注記**  
ポリシーシミュレーターは、何らかの条件を持つ SCP の評価を行いません。
+ ユーザー、ユーザーグループ、またはロールにまだアタッチされていない、新しいアイデンティティベースのポリシーを (Policy Simulator に入力またはコピーして) テストします。これらはシミュレーションでのみ使用され、保存されません。リソースベースのポリシーを、Policy Simulator に入力またはコピーすることはできません。
+ 指定したサービス、アクション、リソースを含むアイデンティティベースのポリシーをテストします。例えば、ポリシーによってエンティティが Amazon S3 サービスの特定のバケットで `ListAllMyBuckets`、`CreateBucket`、および `DeleteBucket` アクションの実行を許可されていることをテストできます。
+ テストするポリシー内の `Condition` 要素に含まれる IP アドレスや日付などのコンテキストキーを提供して、実際のシナリオをシミュレートします。
**注記**  
シミュレーション内のアイデンティティベースのポリシーに、タグを明示的にチェックする `Condition` 要素が含まれていない場合、ポリシーシミュレーターは入力として提供されたタグをシミュレートしません。
+ アイデンティティベースのポリシーにおいて、特定のリソースやアクションへのアクセスを許可または拒否しているのは、どのステートメントなのかを特定します。

**Topics**
+ [IAM Policy Simulator のしくみ](#policies_policy-simulator-how-it-works)
+ [IAM Policy Simulator の使用に必要なアクセス許可](#permissions-required_policy-simulator)
+ [IAM Policy Simulator の使用方法 (コンソール)](#policies_policy-simulator-using)
+ [AWS CLIIAM Policy Simulator の使用 ( および AWS API)](#policies-simulator-using-api)

## IAM Policy Simulator のしくみ
<a name="policies_policy-simulator-how-it-works"></a>

Policy Simulator は、アイデンティティベースのポリシー内のステートメントと、シミュレーション中に提供した入力の評価を行います。Policy Simulator は、AWS での実際の環境とは異なる結果を出力することがあります。Policy Simulator によるテスト後は、実際の AWS 環境とポリシーを照合して、得られた結果が目的にあっているか確認することをお勧めします。

Policy Simulator は、以下の点で実際の AWS 環境とは異なります。
+ Policy Simulator では、現実の AWS サービスリクエストは生成しないため、実際の AWS 環境に不要な変更を加える可能性のあるリクエストのテストを安全に行えます。Policy Simulator は、本番環境での実際のコンテキストキー値を考慮しません。
+ Policy Simulator では、選択されたアクションの実行はシミュレートされません。つまり、シミュレートされたリクエストに対するレスポンスをレポートしません。返される結果は、リクエストされたアクションが許可されるか拒否されるかだけです。
+ Policy Simulator 内でポリシーを編集した場合、それらの変更は Policy Simulator にのみ影響を与えます。AWS アカウント 内の対応するポリシーが変更されることはありません。
+ 何らかの条件を持つサービスコントロールポリシー (SCP) をテストすることはできません。
+ ポリシーシミュレーターは、リソースコントロールポリシー (RCP) のシミュレーションをサポートしていません。
+ Policy Simulator は、IAM ロールとユーザーのクロスアカウントアクセスのシミュレーションをサポートしていません。

**注記**  
IAM Policy Simulator は、認可用の[グローバル条件キー](reference_policies_condition-keys.md)をサポートしているサービスを識別しません。例えば、あるサービスが [`aws:TagKeys`](reference_policies_condition-keys.md#condition-keys-tagkeys) をサポートしていないことを、Policy Simulator は識別しません。

## IAM Policy Simulator の使用に必要なアクセス許可
<a name="permissions-required_policy-simulator"></a>

Policy Simulator コンソールまたは Policy Simulator API を使用して、ポリシーをテストできます。コンソールを使用するユーザーは、デフォルトで、ユーザー、ユーザーグループ、またはロールにまだアタッチされていないポリシーを (Policy Simulator コンソールに入力またはコピーすることで) テストできます。それらのポリシーはシミュレーションでのみ使用され、機密情報が公開されることはありません。API ユーザーには、アタッチされていないポリシーをテストするアクセス権限が必要です。コンソールまたは API ユーザーに、AWS アカウント の IAM ユーザー、IAM グループ、またはロールにアタッチされているポリシーをテストすることを許可できます。そのためには、それらのポリシーを取得するアクセス許可を付与する必要があります。リソースベースのポリシーをテストするには、リソースのポリシーを取得するための権限がユーザーに必要です。

ポリシーのシミュレートをユーザーに許可するコンソールまたは API ポリシーの例については、「[ポリシーの例: AWS Identity and Access Management (IAM)](access_policies_examples.md#policy_library_IAM)」を参照してください。

### Policy Simulator コンソールの使用に必要なアクセス許可
<a name="permissions-required_policy-simulator-console"></a>

AWS アカウント の IAM ユーザー、IAM グループ、またはロールにアタッチされているポリシーをテストすることをユーザーに許可できます。そのためには、それらのポリシーを取得するアクセス許可をユーザーに付与する必要があります。リソースベースのポリシーをテストするには、リソースのポリシーを取得するための権限がユーザーに必要です。

ユーザー、ユーザーグループ、またはロールにアタッチされたポリシーのために Policy Simulator コンソールの使用を許可するポリシー例を確認するには、「[IAM: Policy Simulator のコンソールへのアクセス](reference_policies_examples_iam_policy-sim-console.md)」を参照してください。

特定のパスがあるユーザーにのみ Policy Simulator コンソールの使用を許可するポリシー例を確認するには、[IAM: ユーザーパスに基づく Policy Simulator のコンソールへのアクセス](reference_policies_examples_iam_policy-sim-path-console.md)を参照してください。

1 つのタイプのエンティティのみのために Policy Simulator コンソールの使用を許可するポリシーを作成するには、次の手順を実行します。

**コンソールユーザーがユーザーのポリシーをシミュレートできるようにするには**  
次のアクションをポリシーに含めます。
+ `iam:GetGroupPolicy`
+ `iam:GetPolicy`
+ `iam:GetPolicyVersion`
+ `iam:GetUser`
+ `iam:GetUserPolicy`
+ `iam:ListAttachedUserPolicies`
+ `iam:ListGroupsForUser`
+ `iam:ListGroupPolicies`
+ `iam:ListUserPolicies`
+ `iam:ListUsers`

**コンソールユーザーがIAM グループのポリシーをシミュレートできるようにするには**  
次のアクションをポリシーに含めます。
+ `iam:GetGroup`
+ `iam:GetGroupPolicy`
+ `iam:GetPolicy`
+ `iam:GetPolicyVersion`
+ `iam:ListAttachedGroupPolicies`
+ `iam:ListGroupPolicies`
+ `iam:ListGroups`

**コンソールユーザーがロールのポリシーをシミュレートできるようにするには**  
次のアクションをポリシーに含めます。
+ `iam:GetPolicy`
+ `iam:GetPolicyVersion`
+ `iam:GetRole`
+ `iam:GetRolePolicy`
+ `iam:ListAttachedRolePolicies`
+ `iam:ListRolePolicies`
+ `iam:ListRoles`

リソースベースのポリシーをテストするには、リソースのポリシーを取得するためのアクセス権限がユーザーに必要です。

**コンソールユーザーが Amazon S3 バケットのリソースベースのポリシーをテストできるようにするには**  
次のアクションをポリシーに含めます。
+ `s3:GetBucketPolicy`

例えば、次のポリシーではこのアクションを使用して、コンソールユーザーに特定の Amazon S3 バケット内のリソースベースのポリシーをシミュレートすることを許可します。

------
#### [ JSON ]

****  

```
{
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Action": "s3:GetBucketPolicy",
            "Resource":"arn:aws:s3:::bucket-name/*"
          }
        ]
      }
```

------

### Policy Simulator API の使用に必要なアクセス許可
<a name="permissions-required_policy-simulator-api"></a>

Policy Simulator API オペレーション [GetContextKeyForCustomPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeyForCustomPolicy.html) および [SimulateCustomPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulateCustomPolicy.html) を使用すると、ユーザー、ユーザーグループ、またはロールにまだアタッチされていないポリシーをテストできます。このようなポリシーをテストするには、ポリシーを文字列として API に渡します。それらのポリシーはシミュレーションでのみ使用され、機密情報が公開されることはありません。API を使用して、AWS アカウント の IAM ユーザー、IAM グループ、またはロールにアタッチされているポリシーをテストすることもできます。そのためには、[GetContextKeyForPrincipalPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeyForPrincipalPolicy.html) および [SimulatePrincipalPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html) を呼び出すアクセス許可をユーザーに付与する必要があります。

現在の AWS アカウント でアタッチされているポリシーとアタッチされていないポリシーに対して Policy Simulator API を使用することを許可するポリシーの例を表示するには、「[IAM: Policy Simulator API へのアクセス](reference_policies_examples_iam_policy-sim.md)」を参照してください。

1 つのタイプのポリシーのみのために Policy Simulator API の使用を許可するポリシーを作成するには、次の手順を実行します。

**API ユーザーが API に直接文字列として渡されるポリシーをシミュレートできるようにするには**  
次のアクションをポリシーに含めます。
+ `iam:GetContextKeysForCustomPolicy`
+ `iam:SimulateCustomPolicy`

**API ユーザーが IAM ユーザー、IAM グループ、ロール、またはリソースにアタッチされたポリシーをシミュレートできるようにするには**  
次のアクションをポリシーに含めます。
+ `iam:GetContextKeysForPrincipalPolicy`
+ `iam:SimulatePrincipalPolicy`

例えば、Bob という名前のユーザーに、Alice という名前のユーザーに割り当てられたポリシーをシミュレートするアクセス許可を付与するには、Bob にリソース `arn:aws:iam::777788889999:user/alice` へのアクセス権を付与します。

特定のパスがあるユーザーにのみ Policy Simulator API の使用を許可するポリシー例を確認するには、[IAM: ユーザーパスに基づいた Policy Simulator API へのアクセス](reference_policies_examples_iam_policy-sim-path.md)を参照してください。

## IAM Policy Simulator の使用方法 (コンソール)
<a name="policies_policy-simulator-using"></a>

デフォルトでは、ユーザーは、ユーザー、ユーザーグループ、またはロールにまだアタッチされていないポリシーをテストできます。そのためには、それらのポリシーを Policy Simulator コンソールに入力またはコピーします。それらのポリシーはシミュレーションでのみ使用され、機密情報が公開されることはありません。

**ユーザー、ユーザーグループ、またはロールにアタッチされていないポリシーをテストするには (コンソール)**

1. IAM ポリシーシミュレーターコンソール ([https://policysim.aws.amazon.com/](https://policysim.aws.amazon.com/)) を開きます。

1. ページ上部にある [**Mode: (モード:)**] メニューで [**New Policy (新しいポリシー)**] を選択します。

1. [**Policy Sandbox (ポリシーサンドボックス)**] で [**新規ポリシーの作成**] を選択します。

1. ポリシーを Policy Simulator に入力またはコピーし、次のステップで説明されているようにシミュレーションを実行します。

IAM Policy Simulator コンソールを使用するアクセス許可を取得したら、この Simulator により、IAM ユーザー、ユーザーグループ、ロール、またはリソースポリシーをテストできます。

**ユーザー、ユーザーグループ、またはロールにアタッチされているポリシーをテストするには (コンソール)**

1. IAM ポリシーシミュレーターコンソール ([https://policysim.aws.amazon.com/](https://policysim.aws.amazon.com/)) を開きます。
**注記**  
IAM ユーザーとして Policy Simulator にサインインするには、割り当てられたサインイン URL を使用して AWS マネジメントコンソール にサインインします。その後、[https://policysim.aws.amazon.com/](https://policysim.aws.amazon.com/) に移動します。IAM ユーザーとしてサインインする詳細については、「[IAM ユーザーが AWS にサインインする方法](id_users_sign-in.md)」を参照してください。

   Policy Simulator が **[既存のポリシー]** モードで開き、アカウントの IAM ユーザーを **[ユーザー、グループ、およびロール]** の下に一覧表示します。

1. <a name="polsimstep-selectid"></a>目的のタスクに該当するオプションを選択します。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access_policies_testing-policies.html)
**ヒント**  
ユーザーグループにアタッチされたポリシーをテストするには、IAM Policy Simulator を [IAM コンソール](https://console.aws.amazon.com/iam/)から直接起動します。ナビゲーションペインで、[**Groups**] を選択します。ポリシーをテストするグループの名前を選択し、次に [**Permissions (アクセス許可)**] タブを選択します。**シミュレート**を選択します。  
ユーザーにアタッチされているカスタマー管理ポリシーをテストするには、ナビゲーションペインで [**ユーザー**] を選択します。ポリシーをテストするユーザーの名前を選択します。[**Permissions (アクセス許可)**] タブを選択し、テストするポリシーを展開します。右端にある [**ポリシーのシミュレート**] を選択します。新しいウィンドウで **IAM Policy Simulator** が開き、選択したポリシーが [**ポリシー**] ペインに表示されます。

1. (オプション) アカウントが [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/) の組織のメンバーである場合は、**AWS Organizations SCP** の横にあるチェックボックスをオンにして、シミュレートされた評価に SCP を含めます。SCP は、組織または組織単位 (OU) のアクセス許可の上限を指定する JSON ポリシーです。SCP はメンバーアカウントのエンティティに対するアクセス許可を制限します。SCP によってサービスまたはアクションがブロックされる場合、そのアカウントには、そのサービスにアクセスできるエンティティ、またはそのアクションを実行できるエンティティがありません。管理者が IAM またはリソースポリシーを使用してそのサービスまたはアクションへのアクセス権限を明示的に付与したとしても同様です。

   アカウントが組織のメンバーでない場合、チェックボックスは表示されません。

1. (オプション) IAM エンティティ（ユーザーまたはロール）の[アクセス許可境界](access_policies_boundaries.md)として設定されているポリシーをテストできますが、IAM グループの場合はテストできません。現在、エンティティにアクセス許可の境界ポリシーが設定されている場合、そのポリシーが [**ポリシー**] ペインに表示されます。1 つのエンティティに設定できるアクセス許可の境界は 1 つのみです。別のアクセス許可の境界をテストするために、カスタムのアクセス許可の境界を作成できます。そのためには、[**新しいポリシーの作成**] を選択します。新しい [**ポリシー**] ペインが開きます。メニューで、[**Custom IAM Permissions Boundary Policy (カスタムの IAM アクセス許可の境界ポリシー)**] を選択します。新しいポリシーの名前を入力し、下の領域にポリシーを入力またはコピーします。[**Apply (適用)**] を選択して、ポリシーを保存します。次に、[**Back (戻る)**] を選択して、元の [**ポリシー**] ペインに戻ります。その後、シミュレーションに使用するアクセス許可の境界の横にあるチェックボックスをオンにします。

1. <a name="polsimstep-polsubset"></a>(オプション) ユーザー、ユーザーグループ、またはロールにアタッチされているポリシーのサブセットのみをテストできます。そのためには、**[ポリシー]** ペインで、除外する各ポリシーの横にあるチェックボックスをオフにします。

1. <a name="polsimstep-service"></a>**Policy Simulator** で、[**Select service (サービスの選択)**] を選択してから、テストするサービスを選択します。その後、[**アクションの選択**] を選択し、テストするアクションを 1 つ以上選択します。メニューでは、サービスごとに使用できる選択肢しか表示されませんが、[**Action Settings and Results (アクションの設定と結果)**] では選択したすべてのサービスとアクションが表示されます。

1. (オプション) [Step 2](#polsimstep-selectid) および [Step 5](#polsimstep-polsubset) で選択したポリシーに、[AWS グローバル条件キー](reference_policies_condition-keys.md)を持つ条件が含まれている場合、それらのキーの値を入力します。これを行うには、[**グローバル設定**] セクションを展開して、そこに表示されるキー名の値を入力します。
**警告**  
条件キーの値を空にすると、そのキーはシミュレーション時に無視されます。これによってエラーが発生し、シミュレーションの実行が失敗する場合があります。また、シミュレーションが実行されても、結果が信頼できない場合があります。シミュレーションが、条件キーや変数の値を含む実際の状況と一致しない場合もあります。

1. (オプション) 選択した各アクションは [**Action Settings and Results (アクションの設定と結果)**] リストに表示され、実施にシミュレーションを実行するまで [**Not simulated (未シミュレーション)**] が [**アクセス許可**] 列に表示されます。シミュレーションを実行する前に、リソースで各アクションを設定できます。特定のシナリオ用に個別のアクションを設定するには、矢印を選択してアクションの行を展開します。アクションがリソースレベルのアクセス許可をサポートしている場合、アクセスをテストする特定のリソースの [Amazon リソースネーム (ARN)](reference_identifiers.md#identifiers-arns) を入力できます。デフォルトでは、各リソースはワイルドカード (\$1) に設定されています。任意の[条件コンテキストキー](reference_policies_actions-resources-contextkeys.html)の値を指定することもできます。前述したように、値が空のキーは無視されるため、シミュレーションの失敗や信頼性の低い結果が生じる可能性があります。

   1. アクション名の横にある矢印を選択して各行を拡張し、使用するシナリオでアクションを正確にシミュレートするために必要な追加の情報を設定します。アクションがリソースレベルのアクセス許可を必要とする場合、アクセスをシミュレートする特定のリソースの [Amazon リソースネーム (ARN)](reference_identifiers.md#identifiers-arns) を入力できます。デフォルトでは、各リソースはワイルドカード (\$1) に設定されています。

   1. アクションがリソースレベルのアクセス許可をサポートするものの、それを必要としない場合、[**Add Resource (リソースの追加)**] を選択して、シミュレーションに追加するリソースタイプを選択できます。

   1. 選択したポリシーのいずれかに、このアクションのサービスのコンテキストキーを参照する `Condition` 要素が含まれる場合、アクションの下にそのキー名が表示されます。そのアクションのシミュレーションで、指定したリソースに対して使用する値を指定できます。
<a name="resource-scenarios"></a>
**異なるグループのリソースタイプが必要なアクション**  
アクションによって、異なる状況下で異なるリソース タイプが必要です。リソースタイプの各グループにはシナリオが関連付けられています。そのいずれかがシミュレーション内容に適合しているのであれば、それを選択すると、シミュレーターが対象のシナリオに適したリソースタイプを要求します。次の一覧では、サポートされるそれぞれのシナリオオプションと、シミュレーションを実行するために定義する必要のあるリソースを示しています。

   次の各 Amazon EC2 シナリオでは、`instance`、`image`、および `security-group` リソースを指定する必要があります。シナリオに EBS ボリュームが含まれる場合、その `volume` をリソースとして指定する必要があります。Amazon EC2 シナリオに仮想プライベートクラウド (VPC) が含まれる場合、`network-interface` リソースを指定する必要があります。IP サブネットが含まれる場合、`subnet` リソースを指定する必要があります。Amazon EC2 シナリオオプションの詳細については、[Amazon EC2 ユーザーガイド](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html)の「*サポートされているプラットフォーム*」を参照してください。
   + **EC2-VPC-InstanceStore**

     instance, image, security-group, network-interface
   + **EC2-VPC-InstanceStore-Subnet**

     instance, image, security-group, network-interface, subnet
   + **EC2-VPC-EBS**

     instance, image, security-group, network-interface, volume
   + **EC2-VPC-EBS-Subnet**

     instance, image, security-group, network-interface, subnet, volume

1. <a name="polsimstep-respol"></a>(任意) リソースベースのポリシーをシミュレーションに含める場合、まずそのリソースでシミュレートするアクションを [Step 6](#polsimstep-service) で選択する必要があります。選択したアクションの行を展開し、シミュレートするポリシーのリソースの ARN を入力します。その後、**[ARN]** テキストボックスの横にある **[Include Resource Policy]** を選択します。IAM Policy Simulator では現在、次のサービスのリソースベースポリシーをサポートしています。Amazon S3 (リソースベースポリシーのみ。ACL は現在サポート対象外)、Amazon SQS、Amazon SNS、およびロック解除された Amazon Glacier ボールト (ロックされたボールトは現在サポート対象外)。

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

   [**アクションの設定と結果]**の各行の **[アクセス許可]** 列には、指定したリソースでのそのアクションのシミュレーション結果が表示されます。

1. ポリシーのどのステートメントがアクションを明示的に許可または拒否したかを調べるには、**[アクセス許可]** 列の **[*N* matching statement(s)]** リンクを選択して行を展開します。次に、[**Show statement (ステートメントの表示)**] リンクを選択します。[**ポリシー**] ペインに、関連するポリシーが表示され、シミュレーションの結果に影響を与えたステートメントが強調表示されます。
**注記**  
アクションが*暗黙的に*拒否（つまり、明示的に許可されていないためにのみアクションが拒否された場合）**リスト**および**ステートメントを表示**オプションは表示されません。

### IAM Policy Simulator コンソールメッセージのトラブルシューティング
<a name="iam-policy-simulator-messages"></a>

以下の表では、IAM Policy Simulator の使用時に表示される可能性のある通知および警告メッセージを示しています。それらのメッセージが表示されたときの問題の解決手順についても説明しています。


****  

| メッセージ | 解決手順 | 
| --- | --- | 
| This policy has been edited。Changes will not be saved to your account。 |   **対処は必要ありません。** これは通知メッセージです。IAM ポリシーシミュレーターで既存のポリシーを編集した場合、その変更は AWS アカウント に影響を与えません。Policy Simulator では、テスト目的でのみポリシーに変更を加えられます。  | 
| リソースポリシーを取得できない。原因: 詳しいエラーメッセージ | Policy Simulator は、リクエストされたリソースベースポリシーにアクセスすることはできません。指定されたリソース ARN が正しいこと、またシミュレーションを実行しているユーザーにリソースポリシーを見る権限があることを確認します。 | 
| One or more policies require values in the simulation settings。The simulation might fail without these values。 |  このメッセージが表示されるのは、テストするポリシーに条件キーや変数が含まれているが、これらのキーや変数の値を [**Simulation Settings (シミュレーションの設定)**] で指定しなかった場合です。 このメッセージが表示されないようにするには、[**Simulation Settings (シミュレーション設定)**] を選択し、各条件キーまたは変数に値を入力します。  | 
| You have changed policies。These results are no longer valid。 |  このメッセージが表示されるのは、[**結果**] ペインに結果が表示されている間に、選択したポリシーを変更した場合です。[**結果**] ペインに表示されている結果は動的に更新されません。 このメッセージが表示されないようにするには、[**Run Simulation (シミュレーションの実行)**] を再度選択します。[**ポリシー**] ペインで行った変更に基づいて、新しいシミュレーションの結果が表示されます。  | 
| The resource you typed for this simulation does not match this service。 |  このメッセージが表示されるのは、現在のシミュレーション用に選択したサービスと一致しない Amazon リソースネーム (ARN) を [**Simulation Settings (シミュレーションの設定)**] ペインで入力した場合です。例えば、Amazon DynamoDB リソースの ARN を指定し、シミュレートするサービスに Amazon Redshift を選択した場合などです。 このメッセージが表示されないようにするには、以下のいずれかの操作を行います。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access_policies_testing-policies.html)  | 
| このアクションは、Amazon S3 ACL や Amazon Glacier ボールトロックポリシーなどのリソースベースポリシーに加えて、特別なアクセスコントロールメカニズムをサポートするサービスに属します。Policy Simulator はこれらのメカニズムをサポートしないため、結果は本番環境と異なる場合があります。 |   **対処は必要ありません。** これは通知メッセージです。現在のバージョンの Policy Simulator は、ユーザーおよび IAM グループにアタッチされたポリシーと、Amazon S3、Amazon SQS、Amazon SNS、Amazon Glacier 用のリソースベースのポリシーを評価できます。Policy Simulator は、他の AWS サービスでサポートされるすべてのアクセスコントロールメカニズムをサポートするわけではありません。  | 
| DynamoDB FGAC is currently not supported。 |   **対処は必要ありません。** この情報メッセージは、*きめ細かなアクセスコントロール*に関するものです。きめ細かなアクセスコントロールは、IAM ポリシー条件を使用して、DynamoDB テーブルおよびインデックス内の個々のデータ項目および属性にだれがアクセスできるかを決定する機能です。また、これらのテーブルとインデックスに対して実行できるアクションも参照します。IAM Policy Simulator の現在のバージョンでは、このタイプのポリシー条件はサポートされていません。DynamoDB のきめ細かなアクセスコントロールの詳細については、「[DynamoDB のきめ細かなアクセスコントロール](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/FGAC_DDB.html)」を参照してください。  | 
| ポリシー構文に準拠していないポリシーがあります。ポリシー検証を使用して、ポリシーの推奨される更新を確認できます。 |  IAM ポリシーの文法に準拠しないポリシーがある場合、このメッセージがポリシーのリストの先頭に表示されます。これらのポリシーをシミュレートするには、[IAM ポリシーの検証](access_policies_policy-validator.md) でポリシー検証オプションを確認して、これらのポリシーを特定して修正します。  | 
|  This policy must be updated to comply with the latest policy syntax rules。 |  このメッセージが表示されるのは、IAM ポリシーの文法に準拠しないポリシーがある場合です。これらのポリシーをシミュレートするには、[IAM ポリシーの検証](access_policies_policy-validator.md) でポリシー検証オプションを確認して、これらのポリシーを特定して修正します。  | 

## AWS CLIIAM Policy Simulator の使用 ( および AWS API)
<a name="policies-simulator-using-api"></a>

通常、Policy Simulator コマンドでは、次の 2 つのことを実行するために、API オペレーションの呼び出しが必要となります。

1. ポリシーを評価し、ポリシーが参照するコンテキストキーのリストを返します。次のステップで、参照しているコンテキストキーの値を指定できるように、それらを確認しておく必要があります。

1. ポリシーをシミュレートし、シミュレーションで使用されるアクション、リソース、コンテキストキーの一覧を提供します。

セキュリティ上の理由から、API オペレーションは以下の 2 つのグループに分かれています。
+ API に文字列として直接渡されるポリシーのみをシミュレートする API オペレーション。このセットには、[GetContextKeysForCustomPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForCustomPolicy.html) と [SimulateCustomPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulateCustomPolicy.html) が含まれます。
+ 特定の IAM ユーザー、ユーザーグループ、ロール、またはリソースにアタッチされたポリシーをシミュレートする API オペレーション。これらの API オペレーションは他の IAM エンティティに割り当てられたアクセス許可の詳細を表示できるため、これらの API オペレーションへのアクセスを制限することを検討してください。このセットには、[GetContextKeysForPrincipalPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForPrincipalPolicy.html) と [SimulatePrincipalPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html) が含まれます。API オペレーションへのアクセス制限の詳細については、「[ポリシーの例: AWS Identity and Access Management (IAM)](access_policies_examples.md#policy_library_IAM)」を参照してください。

いずれの場合でも、API オペレーションはアクションやリソースのリストに対する 1 つ以上のポリシーの影響をシミュレートします。各アクションは各リソースと組み合わせられており、シミュレーションによって、ポリシーがリソースのそのアクションを許可するか、または拒否するかを特定できます。また、ポリシーが参照するコンテキストキーの値を提供することもできます。ポリシーが参照するコンテキストキーのリストを取得するには、まず [https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForCustomPolicy.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForCustomPolicy.html) または [https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForPrincipalPolicy.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForPrincipalPolicy.html) を呼び出します。コンテキストキーの値を指定しない場合、シミュレーションは引き続き実行されます。ただし、Policy Simulator が、そのコンテキストキーを評価に含めることができないため、信頼性の低い結果が得られることがあります。

**コンテキストキーのリストを取得するには (AWS CLI、AWS API)**  
以下のコマンドでは、ポリシーのリストを評価し、ポリシーで使用されているコンテキストキーのリストを返します。
+ AWS CLI: [https://docs.aws.amazon.com/cli/latest/reference/iam/get-context-keys-for-custom-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/get-context-keys-for-custom-policy.html) および [https://docs.aws.amazon.com/cli/latest/reference/iam/get-context-keys-for-principal-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/get-context-keys-for-principal-policy.html)
+ AWS API: [https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForCustomPolicy.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForCustomPolicy.html) および [https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForPrincipalPolicy.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForPrincipalPolicy.html)

**IAM ポリシーをシミュレートするには (AWS CLI、AWS API)**  
以下のコマンドでは、IAM ポリシーをシミュレートしてユーザーの有効なアクセス許可を確認します。
+ AWS CLI: [https://docs.aws.amazon.com/cli/latest/reference/iam/simulate-custom-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/simulate-custom-policy.html) および [https://docs.aws.amazon.com/cli/latest/reference/iam/simulate-principal-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/simulate-principal-policy.html)
+ AWS API: [https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulateCustomPolicy.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulateCustomPolicy.html) および [https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html)

# IAM ID のアクセス許可の追加および削除
<a name="access_policies_manage-attach-detach"></a>

ID (ユーザー、ユーザーグループ、またはロール) のアクセス許可を定義するにはポリシーを使用します。アクセス許可を追加および削除するには、AWS マネジメントコンソール、AWS Command Line Interface (AWS CLI)、または AWS API を使用して、ID の IAM ポリシーをアタッチおよびデタッチします。また、ポリシーを使用して、同じ方法を使用しているエンティティ (ユーザーまたはロール) のみに[許可の境界](access_policies_boundaries.md)を設定することもできます。アクセス許可の境界は、エンティティが持つことができる最大のアクセス許可を制御する AWS のアドバンスド機能です。

**Topics**
+ [用語](#attach-detach-etc-terminology)
+ [ID アクティビティの表示](#attach-detach_prerequisites)
+ [IAM ID アクセス許可の追加 (コンソール)](#add-policies-console)
+ [IAM ID アクセス許可の削除 (コンソール)](#remove-policies-console)
+ [IAM ポリシーの追加（AWS CLI)](#add-policy-cli)
+ [IAM ポリシーの削除 (AWS CLI)](#remove-policy-cli)
+ [IAM ポリシーの追加 (AWS API)](#add-policy-api)
+ [IAM ポリシーの削除 (AWS API)](#remove-policy-api)

## 用語
<a name="attach-detach-etc-terminology"></a>

アクセス許可ポリシーをアイデンティティ (IAM ユーザー、IAM グループ、および IAM ロール) に関連付ける場合、管理ポリシーとインラインポリシーのどちらを使用するかで、用語や手順が異なることがあります。
+ **アタッチ** – 管理ポリシーで使用します。管理ポリシーをアイデンティティ (ユーザー、ユーザーグループ、またはロール) にアタッチします。ポリシーをアタッチすると、そのポリシー内のアクセス許可が ID に適用されます。
+ **デタッチ** – 管理ポリシーで使用します。管理ポリシーを IAM アイデンティティ (ユーザー、ユーザーグループ、またはロール) からデタッチします。ポリシーをデタッチすると、そのアクセス許可がアイデンティティから削除されます。
+ **埋め込み** – インラインポリシーで使用します。インラインポリシーをアイデンティティ (ユーザー、ユーザーグループ、またはロール) に埋め込みます。ポリシーを埋め込むと、そのポリシー内のアクセス許可が ID に適用されます。インラインポリシーはアイデンティティに保存されるため、結果は似ていますが、アタッチされるのではなく埋め込まれます。
**注記**  
*[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*のインラインポリシーは、ロールに依存するサービスにのみ組み込むことができます。サービスでこの機能がサポートされているかどうかについては、そのサービスの [AWS ドキュメント](https://docs.aws.amazon.com/)を参照してください。
+ **削除** – インラインポリシーで使用します。インラインポリシーを IAM アイデンティティ (ユーザー、ユーザーグループ、またはロール) から削除します。ポリシーを削除すると、そのアクセス許可がアイデンティティから削除されます。
**注記**  
*[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*のインラインポリシーを削除できるのは、そのロールに依存するサービスに限ります。サービスでこの機能がサポートされているかどうかについては、そのサービスの [AWS ドキュメント](https://docs.aws.amazon.com/)を参照してください。

これらのアクションはいずれも、コンソール、AWS CLI、または AWS API を使用して実行できます。

### 詳細情報
<a name="terminology-more-info-roles-policies"></a>
+ 管理ポリシーとインラインポリシーの違いの詳細については、「[管理ポリシーとインラインポリシー](access_policies_managed-vs-inline.md)」を参照してください。
+ アクセス許可の境界の詳細については、「[IAM エンティティのアクセス許可境界](access_policies_boundaries.md)」を参照してください
+ IAM ポリシーの一般情報については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。
+ IAM ポリシーの検証の詳細については、「[IAM ポリシーの検証](access_policies_policy-validator.md)」を参照してください。
+ AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

## ID アクティビティの表示
<a name="attach-detach_prerequisites"></a>

アイデンティティ (ユーザー、ユーザーグループ、ロール) のアクセス許可を変更する前に、サービスレベルの直近アクティビティを確認する必要があります。これは、アクセス権を使用しているプリンシパル (ユーザーまたはアプリケーション) から削除しないようにするために重要です。最後にアクセスした情報を表示する方法の詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

## IAM ID アクセス許可の追加 (コンソール)
<a name="add-policies-console"></a>

アクセス許可をアイデンティティ (ユーザー、ユーザーグループ、またはロール) に追加するには、AWS マネジメントコンソール を使用します。そのためには、アクセス許可を制御する管理ポリシーをアタッチするか、[アクセス許可の境界](access_policies_boundaries.md)としてポリシーを指定します。また、インラインポリシーを埋め込むこともできます。<a name="access_policies_manage-attach-detach-console"></a>

**管理ポリシーをアイデンティティのアクセス許可ポリシーとして使用するには (コンソール)**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーのリストで、アタッチするポリシーの名前の横にあるラジオボックスをオンにします。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. **[アクション]** を選択し、**[アタッチ]** を選択します。

1. ポリシーをアタッチする ID を 1 つ以上選択します。検索ボックスを使用して、プリンシパルエンティティのリストをフィルタリングできます。ID を選択したら、**[ポリシーのアタッチ]** を選択します。<a name="set-managed-policy-boundary-console"></a>

**管理ポリシーを使用してアクセス許可の境界を設定するには (コンソール)**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーの一覧で、設定するポリシーの名前を選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. [ポリシー詳細] ページで、**[アタッチされたエンティティ]** タブを選択し、必要に応じて **[アクセス許可の境界としてアタッチ]** セクションを開き、**[このポリシーをアクセス許可の境界として設定]** を選択します。

1. ポリシーをアクセス許可の境界として使用する対象のユーザーまたはロールを 1 つ以上選択します 検索ボックスを使用して、プリンシパルエンティティのリストをフィルタリングできます。プリンシパルを選択したら、**[アクセス許可の境界を設定]** を選択します。<a name="embed-inline-policy-console"></a>

**ユーザーまたはロールのインラインポリシーを埋め込むには (コンソール)**

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

1. IAM ナビゲーションペインで、**[ユーザー]** または **[ロール]** を選択します。

1. 一覧で、ポリシーを埋め込むユーザーまたはロールの名前を選択します。

1. **[アクセス許可]** タブを選択します。

1. **[アクセス許可を追加]**、**[インラインポリシーを作成]** の順に選択します。

    
**注記**  
IAM の「*[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*」にインラインポリシーを埋め込むことはできません。リンクされたサービスは、ロールの許可を変更できるかどうかを定義するため、サービスコンソール、API、または AWS CLI からポリシーを追加できる場合があります。サービスにリンクされたロールのドキュメントをサービスで表示するには、「[IAM と連携する AWS のサービス](reference_aws-services-that-work-with-iam.md)」を参照の上、お使いのサービスの **[Service-Linked Role]** 列で **[Yes]** を選択します。

1. 以下の方法のいずれかを選択してポリシーの作成に必要な手順を表示します。
   + [既存の管理ポリシーのインポート](access_policies_create-console.md#access_policies_create-copy) – アカウント内で管理ポリシーをインポートし、ポリシーを編集して特定の要件に合わせてカスタマイズすることができます。管理ポリシーは、AWS 管理ポリシーまたは以前に作成したカスタマー管理ポリシーにすることができます。
   + [ビジュアルエディタでのポリシーの作成](access_policies_create-console.md#access_policies_create-visual-editor) – ビジュアルエディタで最初から新しいポリシーを構築することができます。ビジュアルエディタを使用する場合は、JSON 構文を理解する必要はありません。
   + [JSON エディターを使用したポリシーの作成](access_policies_create-console.md#access_policies_create-json-editor) – **[JSON]** エディタオプションで、JSON 構文を使用してポリシーを作成することができます。新しい JSON ポリシードキュメントを入力するか、[ポリシー例](access_policies_examples.md)を貼り付けることができます。

1. インラインポリシーを作成した後は、自動的にユーザーまたはロールに埋め込まれます。

**ユーザーグループのインラインポリシーを埋め込むには (コンソール)**

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

1. ナビゲーションペインで、**[ユーザーグループ]** を選択します。

1. 一覧で、ポリシーを埋め込むユーザーグループの名前を選択します。

1. **[アクセス許可]** タブで、**[アクセス許可の追加]** を選択してから、**[インラインポリシーの作成]**を選択します。

1. 次のいずれかを行います。
   + **[Visual]** オプションを選択して、ポリシーを作成します。詳細については、「[ビジュアルエディタでのポリシーの作成](access_policies_create-console.md#access_policies_create-visual-editor)」を参照してください。
   + **[JSON]** オプションを選択して、ポリシーを作成します。詳細については、「[JSON エディターを使用したポリシーの作成](access_policies_create-console.md#access_policies_create-json-editor)」を参照してください。

1. ポリシーが完成したら、**[ポリシーの作成]** を選択します。<a name="replace-managed-policy-boundary-console"></a>

**1 つ以上のエンティティのアクセス許可の境界を変更するには (コンソール)**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーの一覧で、設定するポリシーの名前を選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. [ポリシー詳細] ページで、**[アタッチされたエンティティ]** タブを選択し、必要に応じて **[アクセス許可の境界としてアタッチ]** セクションを開きます。境界を変更するユーザーまたはロールの横にあるチェックボックスをオンにし、**[変更]** を選択します。

1. アクセス許可の境界として使用する新しいポリシーを選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。ポリシーを選択したら、**[アクセス許可の境界を設定]** を選択します。

## IAM ID アクセス許可の削除 (コンソール)
<a name="remove-policies-console"></a>

アクセス許可をアイデンティティ (ユーザー、ユーザーグループ、またはロール) から削除するには、AWS マネジメントコンソール を使用します。そのためには、アクセス許可を制御する管理ポリシーをデタッチするか、[アクセス許可の境界](access_policies_boundaries.md)として指定されているポリシーを削除します。また、インラインポリシーを削除することもできます。<a name="detach-managed-policy-console"></a>

**アクセス許可ポリシーとして使用されている管理ポリシーをデタッチするには (コンソール)**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーのリストで、デタッチするポリシーの名前の横にあるラジオボックスを選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. **[アクション]** を選択して、**[削除]** を選択します。

1. ポリシーをデタッチする ID を選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。ID を選択したら、**[ポリシーのデタッチ]** を選択します。<a name="remove-managed-policy-boundary-console"></a>

**アクセス許可の境界を削除するには (コンソール)**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーの一覧で、設定するポリシーの名前を選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. [ポリシーの概要] ページで、**[アタッチされたエンティティ]** タブを選択し、必要に応じて **[アクセス許可の境界としてアタッチ]** セクションを開き、アクセス許可の境界を削除するエンティティを選択します。次に、**[境界を削除]** を選択します。

1. 境界を削除することを確認し、**[境界を削除]** を選択します。<a name="delete-inline-policy-console"></a>

**インラインポリシーを削除するには (コンソール)**

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

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

1. リストで、削除するポリシーを持つユーザーグループ、ユーザー、またはロールの名前を選択します。

1. [**アクセス許可**] タブを選択します。

1. ポリシーの横にあるチェックボックスをオンにし、**[削除]** を選択します。

1. 確認ボックスで、**[削除]** を選択します。

## IAM ポリシーの追加（AWS CLI)
<a name="add-policy-cli"></a>

アクセス許可をアイデンティティ (ユーザー、ユーザーグループ、またはロール) に追加するには、AWS CLI を使用します。そのためには、アクセス許可を制御する管理ポリシーをアタッチするか、[アクセス許可の境界](access_policies_boundaries.md)としてポリシーを指定します。また、インラインポリシーを埋め込むこともできます。

**管理ポリシーをエンティティのアクセス許可ポリシーとして使用するには (AWS CLI)**

1. (オプション) 管理ポリシーの情報を表示するには、以下のコマンドを実行します。
   + 管理ポリシーを一覧表示するには: [aws iam list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)
   + 管理ポリシーの詳細情報を取得するには: [get-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-policy.html)

1. 管理ポリシーをアイデンティティ (ユーザー、ユーザーグループ、またはロール) にアタッチするには、以下のいずれかのコマンドを使用します。
   + [aws iam attach-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-user-policy.html)
   + [aws iam attach-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-group-policy.html)
   + [aws iam attach-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html)

**管理ポリシーを使用してアクセス許可の境界を設定するには (AWS CLI)**

1. (オプション) 管理ポリシーの情報を表示するには、以下のコマンドを実行します。
   + 管理ポリシーを一覧表示するには: [aws iam list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)
   + 管理ポリシーの詳細情報を取得するには: [aws iam get-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-policy.html)

1. 管理ポリシーを使用してエンティティ (ユーザーまたはロール) のアクセス許可の境界を設定するには、以下のいずれかのコマンドを使用します。
   + [aws iam put-user-permissions-boundary](https://docs.aws.amazon.com/cli/latest/reference/iam/put-user-permissions-boundary.html)
   + [aws iam put-role-permissions-boundary](https://docs.aws.amazon.com/cli/latest/reference/iam/put-role-permissions-boundary.html)

**インラインポリシーを埋め込むには (AWS CLI)**  
インラインポリシーを ID (ユーザー、ユーザーグループ、または *[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*以外のロール) に埋め込むには、以下のいずれかのコマンドを使用します。
+ [aws iam put-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-user-policy.html)
+ [aws iam put-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-group-policy.html)
+ [aws iam put-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-role-policy.html)

## IAM ポリシーの削除 (AWS CLI)
<a name="remove-policy-cli"></a>

AWS CLI を使用して、アクセス許可を制御する管理ポリシーをデタッチするか、[アクセス許可の境界](access_policies_boundaries.md)として指定されているポリシーを削除します。また、インラインポリシーを削除することもできます。

**アクセス許可ポリシーとして使用されている管理ポリシーをデタッチするには (AWS CLI)**

1. (オプション) ポリシーの情報を表示するには、以下のコマンドを実行します。
   + 管理ポリシーを一覧表示するには: [aws iam list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)
   + 管理ポリシーの詳細情報を取得するには: [aws iam get-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-policy.html) 

1. (オプション) ポリシーとアイデンティティとの関係を確認するには、以下のコマンドを実行します。
   + 管理ポリシーがアタッチされたアイデンティティ (IAM ユーザー、IAM グループ、および IAM ロール) を一覧表示する場合: 
     + [aws iam list-entities-for-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/list-entities-for-policy.html)
   + アイデンティティ (ユーザー、ユーザーグループ、またはロール) にアタッチされている管理ポリシーを一覧表示するには、以下のいずれかのコマンドを使用します。
     + [aws iam list-attached-user-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-user-policies.html)
     + [aws iam list-attached-group-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-group-policies.html)
     + [aws iam list-attached-role-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-role-policies.html)

1. 管理ポリシーをアイデンティティ (ユーザー、ユーザーグループ、またはロール) からデタッチするには、以下のいずれかのコマンドを使用します。
   + [aws iam detach-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/detach-user-policy.html)
   + [aws iam detach-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/detach-group-policy.html)
   + [aws iam detach-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/detach-role-policy.html)

**アクセス許可の境界を削除するには (AWS CLI)**

1. (オプション) アクセス許可の境界を設定するために現在使用されている管理ポリシーを確認するには、以下のコマンドを実行します。
   + [aws iam get-user](https://docs.aws.amazon.com/cli/latest/reference/iam/get-user.html)
   +  [aws iam get-role](https://docs.aws.amazon.com/cli/latest/reference/iam/get-role.html) 

1. (オプション) 管理ポリシーがアクセス許可の境界として使用されているユーザーまたはロールを確認するには、次のコマンドを実行します。
   + [aws iam list-entities-for-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/list-entities-for-policy.html)

1. (オプション) 管理ポリシーの情報を表示するには、以下のコマンドを実行します。
   + 管理ポリシーを一覧表示するには: [aws iam list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)
   + 管理ポリシーの詳細情報を取得するには: [aws iam get-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-policy.html) 

1. ユーザーまたはロールからアクセス許可の境界を削除するには、以下のいずれかのコマンドを使用します。
   + [aws iam delete-user-permissions-boundary](https://docs.aws.amazon.com/cli/latest/reference/iam/detach-user-policy.html)
   + [aws iam delete-role-permissions-boundary](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-role-permissions-boundary.html)

**インラインポリシーを削除するには (AWS CLI)**

1. (オプション) アイデンティティ (ユーザー、ユーザーグループ、ロール) にアタッチされたすべてのインラインポリシーを一覧表示するには、以下のいずれかのコマンドを使用します。
   + [aws iam list-user-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-user-policies.html)
   + [aws iam list-group-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-group-policies.html)
   + [aws iam list-role-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-role-policies.html)

1. (オプション) アイデンティティ (ユーザー、ユーザーグループ、またはロール) に埋め込まれたインラインポリシードキュメントを取得するには、以下のいずれかのコマンドを使用します。
   + [aws iam get-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-user-policy.html)
   + [aws iam get-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-group-policy.html)
   + [aws iam get-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-role-policy.html)

1. インラインポリシーを ID (ユーザー、ユーザーグループ、または *[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*以外のロール) から削除するには、以下のいずれかのコマンドを使用します。
   + [aws iam delete-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-user-policy.html)
   + [aws iam delete-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-group-policy.html)
   + [aws iam delete-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-role-policy.html)

## IAM ポリシーの追加 (AWS API)
<a name="add-policy-api"></a>

AWS API を使用して、アクセス許可を制御する管理ポリシーをアタッチするか、[アクセス許可の境界](access_policies_boundaries.md)としてポリシーを指定します。また、インラインポリシーを埋め込むこともできます。

**管理ポリシーをエンティティのアクセス許可ポリシーとして使用するには (AWS API)**

1. (オプション) ポリシーの情報を表示するには、以下のオペレーションを呼び出します。
   + 管理ポリシーを一覧表示するには: [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html) 
   + 管理ポリシーの詳細情報を取得するには: [GetPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetPolicy.html)

1. 管理ポリシーをアイデンティティ (ユーザー、ユーザーグループ、またはロール) にアタッチするには、以下のいずれかのオペレーションを呼び出します。
   + [AttachUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachUserPolicy.html)
   + [AttachGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachGroupPolicy.html)
   + [AttachRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachRolePolicy.html)

**管理ポリシーを使用してアクセス許可の境界を設定するには (AWS API)**

1. (オプション) 管理ポリシーの情報を表示するには、以下のオペレーションを呼び出します。
   + 管理ポリシーを一覧表示するには: [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html)
   + 管理ポリシーの詳細情報を取得するには: [GetPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetPolicy.html)

1. 管理ポリシーを使用してエンティティ (ユーザーまたはロール) のアクセス許可の境界を設定するには、以下のいずれかのオペレーションを呼び出します。
   + [PutUserPermissionsBoundary](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutUserPermissionsBoundary.html)
   + [PutRolePermissionsBoundary](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutRolePermissionsBoundary.html)

**インラインポリシーを埋め込むには (AWS API)**  
インラインポリシーを ID (ユーザー、ユーザーグループ、または *[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*以外のロール) に埋め込むには、以下のいずれかのオペレーションを呼び出します。
+ [PutUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutUserPolicy.html)
+ [PutGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutGroupPolicy.html)
+ [PutRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutRolePolicy.html)

## IAM ポリシーの削除 (AWS API)
<a name="remove-policy-api"></a>

AWS API を使用して、アクセス許可を制御する管理ポリシーをデタッチするか、[アクセス許可の境界](access_policies_boundaries.md)として指定されているポリシーを削除します。また、インラインポリシーを削除することもできます。

**アクセス許可ポリシーとして使用されている管理ポリシーをデタッチするには (AWS API)**

1. (オプション) ポリシーの情報を表示するには、以下のオペレーションを呼び出します。
   + 管理ポリシーを一覧表示するには: [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html)
   + 管理ポリシーの詳細情報を取得するには: [GetPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetPolicy.html)

1. (オプション) ポリシーとアイデンティティとの関係を確認するには、以下のオペレーションを呼び出します。
   + 管理ポリシーがアタッチされたアイデンティティ (IAM ユーザー、IAM グループ、および IAM ロール) を一覧表示する場合:
     + [ListEntitiesForPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListEntitiesForPolicy.html)
   + アイデンティティ (ユーザー、ユーザーグループ、またはロール) にアタッチされている管理ポリシーを一覧表示するには、以下のいずれかのオペレーションを呼び出します。
     + [ListAttachedUserPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedUserPolicies.html)
     + [ListAttachedGroupPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedGroupPolicies.html)
     + [ListAttachedRolePolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedRolePolicies.html)

1. 管理ポリシーをアイデンティティ (ユーザー、ユーザーグループ、またはロール) からデタッチするには、以下のいずれかのオペレーションを呼び出します。
   + [DetachUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachUserPolicy.html)
   + [DetachGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachGroupPolicy.html)
   + [DetachRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachRolePolicy.html)

**アクセス許可の境界を削除するには (AWS API)**

1. (オプション) アクセス許可の境界を設定するために現在使用されている管理ポリシーを確認するには、以下のオペレーションを呼び出します。
   + [GetUser](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUser.html)
   + [GetRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRole.html)

1. (オプション) 管理ポリシーがアクセス許可の境界として使用されているユーザーまたはロールを確認するには、次のオペレーションを呼び出します。
   + [ListEntitiesForPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListEntitiesForPolicy.html)

1. (オプション) 管理ポリシーの情報を表示するには、以下のオペレーションを呼び出します。
   + 管理ポリシーを一覧表示するには: [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html)
   + 管理ポリシーの詳細情報を取得するには: [GetPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetPolicy.html)

1. ユーザーまたはロールからアクセス許可の境界を削除するには、以下のいずれかのオペレーションを呼び出します。
   + [DeleteUserPermissionsBoundary](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUserPermissionsBoundary.html)
   + [DeleteRolePermissionsBoundary](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteRolePermissionsBoundary.html)

**インラインポリシーを削除するには (AWS API)**

1. (オプション) アイデンティティ (ユーザー、ユーザーグループ、ロール) にアタッチされたすべてのインラインポリシーを一覧表示するには、以下のいずれかのオペレーションを呼び出します。
   + [ListUserPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUserPolicies.html)
   + [ListGroupPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListGroupPolicies.html)
   + [ListRolePolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListRolePolicies.html)

1. (オプション) アイデンティティ (ユーザー、ユーザーグループ、またはロール) に埋め込まれたインラインポリシードキュメントを取得するには、以下のいずれかのオペレーションを呼び出します。
   + [GetUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUserPolicy.html)
   + [GetGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetGroupPolicy.html)
   + [GetRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRolePolicy.html)

1. インラインポリシーを ID (ユーザー、ユーザーグループ、または *[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*以外のロール) から削除するには、以下のいずれかのオペレーションを呼び出します。
   + [DeleteUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUserPolicy.html)
   + [DeleteGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteGroupPolicy.html)
   + [DeleteRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteRolePolicy.html)

# IAM ポリシーのバージョニング
<a name="access_policies_managed-versioning"></a>

お客様が IAM カスタマー管理ポリシーを変更した場合、または AWS が AWS 管理ポリシーを変更した場合、変更されたポリシーで既存のポリシーは上書きされません。代わりに、IAM は管理ポリシーの新しい*バージョン*を作成します。IAM は、最大 5 つのバージョンのカスタマー管理ポリシーを保存します。IAM はインラインポリシーのバージョニングをサポートしていません。

次の図は、カスタマー管理ポリシーのバージョニングを示しています。この例では、バージョン 1～4 が保存されます。IAM には、最大 5 つのマネージドポリシーバージョンを保存できます。6 番目の保存バージョンを作成することになるポリシーを編集する場合、以後保存しないこととする古いバージョンを選択できます。いつでも他の 4 つの保存済みバージョンのいずれかに戻すことができます。

![\[管理ポリシーを変更するとポリシーのバージョンが新しくなる\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-managed-policies-versions-overview.diagram.png)


ポリシーのバージョンは、`Version` ポリシーの要素とは異なります。`Version` ポリシー要素は、ポリシー内で使用され、ポリシー言語のバージョンを定義します。`Version` ポリシー要素の詳細については、「[IAM JSON ポリシー要素Version](reference_policies_elements_version.md)」を参照してください。

バージョンを使用して、管理ポリシーの変更を追跡できます。たとえば、管理ポリシーに変更を加えた後で、その変更が意図しない結果をもたらしたことに気付く場合があります。この場合、以前のバージョンを*デフォルト*のバージョンとして設定することで、管理ポリシーを以前のバージョンにロールバックできます。

以下のトピックでは、管理ポリシーにバージョニングを使用する方法を説明しています。

**Topics**
+ [バージョンの制限](#version-limits)
+ [バージョンを使用して変更をロールバックする](#versions-roll-back)
+ [ポリシーのデフォルトバージョンの設定におけるアクセス権限](#policy-version-permissions)
+ [カスタマー管理ポリシーのデフォルトバージョンの設定](#default-version)

## バージョンの制限
<a name="version-limits"></a>

マネージド ポリシーは最大 5 つのバージョンを持つことができます。AWS Command Line Interface または AWS API を使用して、管理ポリシーのバージョンを 5 つ以上にする必要がある場合は、まず既存のバージョンを 1 つ以上削除する必要があります。AWS マネジメントコンソール を使用している場合は、ポリシーを編集する前にバージョンを削除する必要はありません。6 番目のバージョンを保存する際、デフォルト以外のポリシーのバージョンを 1 つ以上削除することを求めるダイアログボックスが表示されます。確認しやすいように、各バージョンの JSON ポリシードキュメントを表示します。このダイアログボックスについては、「[IAM ポリシーを編集する](access_policies_manage-edit.md)」を参照してください。

管理ポリシーのデフォルトバージョン以外の任意のバージョンを削除できます。バージョンを削除しても、残りのバージョンのバージョン ID は変更されません。その結果、バージョン ID はシーケンシャルではなくなる場合があります。たとえば、管理ポリシーのバージョン v2 と v4 を削除して 2 つの新しいバージョンを追加すると、残ったバージョンの ID は v1、v3、v5、v6、v7 となる可能性があります。

## バージョンを使用して変更をロールバックする
<a name="versions-roll-back"></a>

カスタマー管理ポリシーのデフォルトバージョンを設定して、変更をロールバックすることができます。たとえば、次のシナリオを考えてみます。

AWS マネジメントコンソール を使用して特定の Amazon S3 バケットの管理をユーザーに許可するカスタマー管理ポリシーを作成するとします。作成した時点では、存在するバージョンは v1 として識別される 1 つのバージョンのみであり、そのバージョンが自動的にデフォルトとして設定されます。ポリシーは目的どおりに機能します。

後から、ポリシーを更新して 2 つ目の Amazon S3 バケットを管理するアクセス許可を追加します。IAM は、変更内容を含む v2 ポリシーの新しいバージョンを作成します。v2 をデフォルトのバージョンとして設定してからしばらくして、Amazon S3 コンソールを使用する権限がないという報告をユーザーから受けたとします。この場合は、ポリシーのバージョンを、目的どおりに機能することがわかっている v1 にロールバックできます。これを行うには、デフォルトのバージョンとして v1 を設定します。ユーザーは Amazon S3 コンソールを使用して元のバケットを管理できるようになりました。

後で、ポリシーのバージョン v2 のエラーを確認してから、再度ポリシーを更新して 2 つ目の Amazon S3 バケットを管理するアクセス許可を追加します。IAM は、v3 として識別される別の新しいバージョンのポリシーを作成します。デフォルトのバージョンとして v3 を設定すると、このバージョンは目的どおりに機能します。この時点で、ポリシーのバージョン v2 を削除します。

## ポリシーのデフォルトバージョンの設定におけるアクセス権限
<a name="policy-version-permissions"></a>

ポリシーのデフォルトバージョンを設定するために必要なアクセス権限は、このタスクの AWS API オペレーションに対応します。ポリシーのデフォルトバージョンを設定するには、`CreatePolicyVersion` または `SetDefaultPolicyVersion` API オペレーションを使用できます。ユーザーが既存のポリシーにデフォルトバージョンのポリシーを設定できるようにするには、`iam:CreatePolicyVersion` アクションあるいは `iam:SetDefaultPolicyVersion` アクションのいずれかへのアクセスを許可できます。`iam:CreatePolicyVersion` アクションは、ポリシーの新しいバージョンを作成して、デフォルトとしてこのバージョンを設定できるようにします。`iam:SetDefaultPolicyVersion` アクションは、既存のすべてのポリシーをデフォルトとして設定できるようにします。

**重要**  
ユーザーがポリシーのデフォルトバージョンを変更できないようにするには、`iam:CreatePolicyVersion` および `iam:SetDefaultPolicyVersion` の両方を拒否する必要があります。

ユーザーが既存のカスタマー管理ポリシーの変更にアクセスすることを拒否するには、次のポリシーを使用できます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "iam:CreatePolicyVersion",
                "iam:SetDefaultPolicyVersion"
            ],
            "Resource": "arn:aws:iam::*:policy/POLICY-NAME"
        }
    ]
}
```

------

## カスタマー管理ポリシーのデフォルトバージョンの設定
<a name="default-version"></a>

管理ポリシーのバージョンのうちの 1 つは*デフォルト*バージョンに設定されています。ポリシーのデフォルトバージョンは動作バージョン、つまり管理ポリシーをアタッチするすべてのプリンシパルエンティティ (IAM ユーザー、IAM グループ、および IAM ロール) に対して有効なバージョンです。

カスタマー管理ポリシーを作成すると、ポリシーは v1 として識別される単一バージョンから始まります。管理ポリシーのバージョンが 1 つのみの場合は、そのバージョンが自動的にデフォルトとして設定されます。カスタマー管理ポリシーに複数のバージョンがある場合は、デフォルトとして設定するバージョンを選択します。AWS 管理ポリシーのデフォルトバージョンは AWS によって設定されます。次の図にその概念を示します。

![\[管理ポリシーのバージョンが 1 つのみの場合は、そのバージョンがデフォルトバージョンになる\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-managed-policies-versions-default-one.diagram.png)




![\[カスタマー管理ポリシーに 3 つのバージョンがある場合は、v2 がデフォルトバージョンになる\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-managed-policies-versions-default-multiple.diagram.png)


カスタマー管理ポリシーのデフォルトバージョンを設定すると、そのバージョンは、ポリシーがアタッチされているすべての IAM アイデンティティ (ユーザー、ユーザーグループ、ロール) に対してそのバージョンを適用できます｡ AWS 管理ポリシーまたはインラインポリシーのデフォルトバージョンを設定することはできません。

**カスタマー管理ポリシーのデフォルトバージョンを設定するには (コンソール)**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーのリストで、デフォルトバージョンを設定するポリシーのポリシー名を選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. [**ポリシーのバージョン**] タブを選択します。デフォルトのバージョンとして設定するバージョンの横にあるチェックボックスをオンにし、**[デフォルトとして設定]** を選択します。

AWS Command Line Interface または AWS API からカスタマー管理ポリシーのデフォルトバージョンを設定するには、「[IAM ポリシーを編集する (AWS CLI)](access_policies_manage-edit-cli.md)」を参照してください。

# IAM ポリシーを編集する
<a name="access_policies_manage-edit"></a>

[ポリシー](access_policies.md) は、ID またはリソースにアタッチされたときに、そのアクセス許可を定義するエンティティです。ポリシーは JSON ドキュメントとして AWS に格納され、IAM の *アイデンティティベースのポリシー* としてプリンシパルに添付されます。IAM ユーザーグループ、ユーザー、ロールなどのプリンシパル (またはアイデンティティ) に、アイデンティティベースのポリシーをアタッチできます。アイデンティティベースのポリシーには、AWS 管理ポリシー、カスタマー管理ポリシー、および[インラインポリシー](access_policies_managed-vs-inline.md)があります。IAM でカスタマー管理ポリシーとインラインポリシーを編集できます。AWS 管理ポリシーは編集できません。AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

一般に、インラインポリシーや AWS マネージドポリシーではなくカスタマー管理ポリシーを使用する方が効果的です。AWS マネージドポリシーには通常、広範な管理アクセス許可または読み取り専用アクセス許可が用意されています。インラインポリシーは、他の ID で再利用したり、埋め込み先の ID 以外で管理したりすることはできません。セキュリティを最大限に高めるには、[最小特権を付与](best-practices.md#grant-least-privilege)します。つまり、特定のジョブタスクの実行に必要なアクセス許可のみを付与します。

IAM ポリシーを作成または編集すると、AWS は、ポリシー検証を自動的に実行し、最小限の権限で効果的なポリシーを作成するのに役立ちます。AWS マネジメントコンソール では、IAM は JSON 構文エラーを識別します。一方、IAM Access Analyzer は、ポリシーをさらに絞り込むのに役立つ推奨事項を含む追加のポリシーチェックを提供します。ポリシーの検証の詳細については、「[IAM ポリシーの検証](access_policies_policy-validator.md)」を参照してください。IAM Access Analyzer のポリシーチェックと実用的な推奨事項の詳細については、「[IAM Access Analyzer ポリシーの検証](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)」を参照してください。

AWS マネジメントコンソール、AWS CLI、または AWS API を使用して、IAM でカスタマー管理ポリシーとインラインポリシーを編集できます。CloudFormation テンプレートを使用してポリシーを追加または更新する方法については、「*CloudFormation ユーザーガイド*」の「[AWS Identity and Access Management リソースタイプリファレンス](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_IAM.html)」を参照してください。

**Topics**
+ [IAM ポリシーを編集する (コンソール)](access_policies_manage-edit-console.md)
+ [IAM ポリシーを編集する (AWS CLI)](access_policies_manage-edit-cli.md)
+ [IAM ポリシーを編集する (AWS API)](access_policies_manage-edit-api.md)

# IAM ポリシーを編集する (コンソール)
<a name="access_policies_manage-edit-console"></a>

[ポリシー](access_policies.md) は、ID またはリソースにアタッチされたときに、そのアクセス許可を定義するエンティティです。AWS マネジメントコンソール を使用して、IAM の*カスタマー管理ポリシー*と*インラインポリシー*を編集できます。AWS マネージドポリシーは編集できません。AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

ポリシーの構造や構文の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」および「[IAM JSON ポリシー要素のリファレンス](reference_policies_elements.md)」を参照してください。

## 前提条件
<a name="edit-customer-managed-policy-console-prerequisites"></a>

ポリシーのアクセス許可を変更する前に、サービスレベルの最近のアクティビティを確認する必要があります。これは、アクセス権を使用しているプリンシパル (ユーザーまたはアプリケーション) から削除しないようにするために重要です。最後にアクセスした情報を表示する方法の詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

## カスタマー管理ポリシーの編集 (コンソール)
<a name="edit-customer-managed-policy-console"></a>

カスタマー管理ポリシーを編集して、AWS マネジメントコンソール のポリシーで定義されたアクセス許可を変更することができます。カスタマー管理ポリシーは最大 5 つのバージョンを持つことができます。これは､管理ポリシーのバージョンを 5 つ以上にする必要がある場合は、AWS マネジメントコンソール より、削除するバージョンを指定するよう求められるため､重要です｡ ポリシーを編集する前に、デフォルトのバージョンを変更したり、ポリシーのバージョンを削除したりすることもできます。バージョンの詳細については、「[IAM ポリシーのバージョニング](access_policies_managed-versioning.md)」を参照してください。

------
#### [ Console ]

**カスタマー管理ポリシーを編集するには**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーの一覧で、編集するポリシーの名前を選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. [**アクセス許可**] タブを選択し、[**編集**] を選択します。

1. 次のいずれかを行います。
   + **[ビジュアル]** オプションを選択し、JSON 構文を理解することなくポリシーを変更します。ポリシー内の各権限ブロックのサービス、アクション、リソース、またはオプションの条件を変更することができます。また、ポリシーをインポートして、ポリシーの最下部に権限を追加することもできます。変更が完了したら、**[次へ]** を選択して続行します。
   + **[JSON]** オプションを選択し、JSON テキストボックスにテキストを入力または貼り付けてポリシーを変更します。また、ポリシーをインポートして、ポリシーの最下部に権限を追加することもできます。[ポリシーの検証](access_policies_policy-validator.md)中に生成されたセキュリティ警告、エラー、または一般警告をすべて解決してから、**[次へ]** を選択します。
**注記**  
いつでも **[Visual]** と **[JSON]** エディタオプションを切り替えることができます。ただし、**[Visual]** エディタで **[次へ]** に変更または選択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

1. [**確認して保存]** ページで、**このポリシーで定義されているアクセス許可**を確認し、[**変更を保存**] を選択して作業を保存します。

1. 最大 5 つのバージョンの管理ポリシーがすでにある場合は、**[変更を保存]** を選択すると、ダイアログボックスが表示されます。新しいバージョンを保存するには、ポリシーの最も古い非デフォルトバージョンが削除され、この新しいバージョンに置き換えられます。オプションで、新しいバージョンをポリシーのデフォルトバージョンとして設定できます。

   [**ポリシーを保存**] を選択して、新しいバージョンのポリシーを保存します。

------

## カスタマー管理ポリシーのデフォルトバージョンの設定 (コンソール)
<a name="edit-customer-managed-policy-console-set-default-policy-version"></a>

AWS マネジメントコンソール からカスタマー管理ポリシーのデフォルトバージョンを設定できます。このポリシーを使用して、組織全体のアクセス許可に対して一貫したベースライン設定を確立できます。新しくポリシーをアタッチする際は、この標準化されたアクセス許可セットを使用します。

------
#### [  Console  ]

**カスタマー管理ポリシーのデフォルトバージョンを設定するには (コンソール)**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーのリストで、デフォルトバージョンを設定するポリシーのポリシー名を選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. [**ポリシーのバージョン**] タブを選択します。デフォルトのバージョンとして設定するバージョンの横にあるチェックボックスをオンにし、[**デフォルトとして設定**] を選択します。

------

## カスタマー管理ポリシーのバージョンの削除 (コンソール)
<a name="edit-customer-managed-policy-console-delete-policy-version"></a>

不要になったり、潜在的なセキュリティリスクを引き起こす可能性がある古いアクセス許可や誤ったアクセス許可を削除するには、カスタマー管理ポリシーのバージョンを削除する必要がある場合があります。必要なバージョンのみを維持することで、管理ポリシーのバージョン数の上限である 5 つを超えないようにし、将来の更新および改善の余地を確保できます。カスタマー管理ポリシーのバージョンを AWS マネジメントコンソール から削除できます。

------
#### [ Console ]

**カスタマー管理ポリシーのバージョンを削除するには**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. 削除するバージョンのカスタマー管理ポリシーの名前を選択します。検索ボックスを使用して、ポリシーのリストをフィルタリングできます。

1. [**ポリシーのバージョン**] タブを選択します。削除するバージョンの横にあるチェックボックスをオンにします。その後、**[削除]** をクリックします。

1. バージョンを削除することを確認し、[**Delete (削除)**] を選択します。

------

## インラインポリシーの編集 (コンソール)
<a name="edit-inline-policy-console"></a>

カスタマー管理ポリシーを編集して、付与されたアクセス許可を更新または絞り込み、組織セキュリティ要件とアクセスコントロールのニーズの変化に確実に一致させる必要がある場合があります。編集することで、ポリシーの JSON ドキュメントを調整したり、特定のアクション、リソース、条件を追加、変更、または削除したりして、最小特権の原則を維持し、環境やプロセスの変化に適応させることができます。インラインポリシーは AWS マネジメントコンソール から編集できます。

------
#### [ Console ]

**ユーザー、ユーザーグループ、ロールのインラインポリシーを編集するには**

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

1. ポリシーを修正するユーザー、ユーザーグループ、またはロールの名前を選択します。次に [**Permissions (アクセス許可)**] タブを選択し、ポリシーを展開します。

1. インラインポリシーを編集するには、[**ポリシーの編集**] を選択します。

1. 次のいずれかを行います。
   + **[ビジュアル]** オプションを選択し、JSON 構文を理解することなくポリシーを変更します。ポリシー内の各権限ブロックのサービス、アクション、リソース、またはオプションの条件を変更することができます。また、ポリシーをインポートして、ポリシーの最下部に権限を追加することもできます。変更が完了したら、**[次へ]** を選択して続行します。
   + **[JSON]** オプションを選択し、JSON テキストボックスにテキストを入力または貼り付けてポリシーを変更します。また、ポリシーをインポートして、ポリシーの最下部に権限を追加することもできます。[ポリシーの検証](access_policies_policy-validator.md)中に生成されたセキュリティ警告、エラー、または一般警告をすべて解決してから、**[次へ]** を選択します。現在アタッチされているエンティティには影響を与えず変更を保存するには、[**デフォルトのバージョンとして設定**] チェックボックスをオフにします。
**注記**  
いつでも [**Visual**] と [**JSON**] エディタオプションを切り替えることができます。ただし、**[Visual]** エディタで **[次へ]** に変更または選択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

1. [**確認**] ページで、ポリシーの概要を確認してから、[**変更を保存**] を選択して作業を保存します。

------

# IAM ポリシーを編集する (AWS CLI)
<a name="access_policies_manage-edit-cli"></a>

[ポリシー](access_policies.md) は、ID またはリソースにアタッチされたときに、そのアクセス許可を定義するエンティティです。AWS Command Line Interface (AWS CLI) を使用して、IAM の*カスタマー管理ポリシー*と*インラインポリシー*を編集できます。AWS マネージドポリシーは編集できません。AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

ポリシーの構造や構文の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」および「[IAM JSON ポリシー要素のリファレンス](reference_policies_elements.md)」を参照してください。

## 前提条件
<a name="edit-customer-managed-policy-cli-prerequisites"></a>

ポリシーのアクセス許可を変更する前に、サービスレベルの最近のアクティビティを確認する必要があります。これは、アクセス権を使用しているプリンシパル (ユーザーまたはアプリケーション) から削除しないようにするために重要です。最後にアクセスした情報を表示する方法の詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

## カスタマー管理ポリシーの編集 (AWS CLI)
<a name="edit-customer-managed-policy-cli"></a>

カスタマー管理ポリシーは AWS CLI で編集できます。

**注記**  
マネージド ポリシーは最大 5 つのバージョンを持つことができます。変更するカスタマー管理ポリシーのバージョンが 5 つを超える場合は、最初に 1 つ以上の既存のバージョンを削除する必要があります。

**カスタマー管理ポリシーを編集するには (AWS CLI)**

1. (オプション) ポリシーの情報を表示するには、以下のコマンドを実行します。
   + 管理ポリシーを一覧表示するには: [list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)
   + 管理ポリシーの詳細情報を取得するには: [get-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-policy.html)

1. (オプション) ポリシーとアイデンティティとの関係を確認するには、以下のコマンドを実行します。
   + 管理ポリシーがアタッチされたアイデンティティ (IAM ユーザー、IAM グループ、および IAM ロール) を一覧表示する場合: 
     + [list-entities-for-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/list-entities-for-policy.html)
   + アイデンティティ (ユーザー、ユーザーグループ、ロール) にアタッチされた管理ポリシーを一覧表示する場合:
     + [list-attached-user-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-user-policies.html)
     + [list-attached-group-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-group-policies.html)
     + [list-attached-role-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-role-policies.html)

1. カスタマー管理ポリシーを編集するには、次のコマンドを実行します。
   + [create-policy-version](https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy-version.html)

1. (オプション) カスタマー管理ポリシーを検証するには、次の IAM Access Analyzer コマンドを実行します。
   + [ポリシーの検証](https://docs.aws.amazon.com/cli/latest/reference/accessanalyzer/validate-policy.html)

## カスタマー管理ポリシーのデフォルトバージョンの設定 (AWS CLI)
<a name="edit-customer-managed-policy-cli-set-default-policy-version"></a>

AWS CLI からカスタマー管理ポリシーのデフォルトバージョンを設定できます。

**カスタマー管理ポリシーのデフォルトバージョンを設定するには (AWS CLI)**

1. (オプション) 管理ポリシーを一覧表示するには、次のコマンドを実行します。
   + [list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)

1. カスタマー管理ポリシーのデフォルトバージョンを設定するには、次のコマンドを実行します。
   + [set-default-policy-version](https://docs.aws.amazon.com/cli/latest/reference/iam/set-default-policy-version.html)

## カスタマー管理ポリシーのバージョンの削除 (AWS CLI)
<a name="edit-customer-managed-policy-cli-delete-policy-version"></a>

カスタマー管理ポリシーのバージョンを AWS CLI から削除できます。

**カスタマー管理ポリシーのバージョンを削除するには (AWS CLI)**

1. (オプション) 管理ポリシーを一覧表示するには、次のコマンドを実行します。
   + [list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)

1. カスタマー管理ポリシーを削除するには、次のコマンドを実行します。
   + [delete-policy-version](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-policy-version.html)

## インラインポリシーの編集 (AWS CLI)
<a name="edit-inline-policy-cli"></a>

インラインポリシーは AWS CLI から編集できます。

**インラインポリシーを編集するには (AWS CLI)**

1. (オプション) ポリシーの情報を表示するには、以下のコマンドを実行します。
   + ID (ユーザー、ユーザーグループ、またはロール) に関連付けられたインラインポリシーを一覧表示するには: 
     + [list-user-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-user-policies.html)
     + [list-role-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-role-policies.html)
     + [list-group-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-group-policies.html)
   + インラインポリシーに関する詳細情報を取得するには: 
     + [get-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-user-policy.html)
     + [get-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-role-policy.html)
     + [get-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-group-policy.html)

1. インラインポリシーを編集するには、次のコマンドを実行します。
   + [put-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-user-policy.html)
   + [put-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-role-policy.html)
   + [put-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/put-group-policy.html)

1. (オプション) インラインポリシーを検証するには、次の IAM Access Analyzer コマンドを実行します。
   + [ポリシーの検証](https://docs.aws.amazon.com/cli/latest/reference/accessanalyzer/validate-policy.html)

# IAM ポリシーを編集する (AWS API)
<a name="access_policies_manage-edit-api"></a>

[ポリシー](access_policies.md) は、ID またはリソースにアタッチされたときに、そのアクセス許可を定義するエンティティです。AWS API を使用して、IAM の*カスタマー管理ポリシー*と*インラインポリシー*を編集できます。AWS マネージドポリシーは編集できません。AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

ポリシーの構造や構文の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」および「[IAM JSON ポリシー要素のリファレンス](reference_policies_elements.md)」を参照してください。

## 前提条件
<a name="edit-customer-managed-policy-api-prerequisites"></a>

ポリシーのアクセス許可を変更する前に、サービスレベルの最近のアクティビティを確認する必要があります。これは、アクセス権を使用しているプリンシパル (ユーザーまたはアプリケーション) から削除しないようにするために重要です。最後にアクセスした情報を表示する方法の詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

## カスタマー管理ポリシーの編集 (AWS API)
<a name="edit-customer-managed-policy-api"></a>

カスタマー管理ポリシーは AWS API で編集できます。

**注記**  
マネージド ポリシーは最大 5 つのバージョンを持つことができます。変更するカスタマー管理ポリシーのバージョンが 5 つを超える場合は、最初に 1 つ以上の既存のバージョンを削除する必要があります。

**カスタマー管理ポリシーを編集するには (AWS API)**

1. (オプション) ポリシーの情報を表示するには、以下のオペレーションを呼び出します。
   + 管理ポリシーを一覧表示するには: [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html)
   + 管理ポリシーの詳細情報を取得するには: [GetPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetPolicy.html)

1. (オプション) ポリシーとアイデンティティとの関係を確認するには、以下のオペレーションを呼び出します。
   + 管理ポリシーがアタッチされたアイデンティティ (IAM ユーザー、IAM グループ、および IAM ロール) を一覧表示する場合: 
     + [ListEntitiesForPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListEntitiesForPolicy.html)
   + アイデンティティ (ユーザー、ユーザーグループ、ロール) にアタッチされた管理ポリシーを一覧表示する場合:
     + [ListAttachedUserPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedUserPolicies.html)
     + [ListAttachedGroupPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedGroupPolicies.html)
     + [ListAttachedRolePolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedRolePolicies.html)

1. カスタマー管理ポリシーを編集するには、次のオペレーションを呼び出します。
   + [CreatePolicyVersion](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreatePolicyVersion.html)

1. (オプション) カスタマー管理ポリシーを検証するには、次の IAM Access Analyzer オペレーションを呼び出します。
   + [検証ポリシー](https://docs.aws.amazon.com/access-analyzer/latest/APIReference/API_ValidatePolicy.html)

## カスタマー管理ポリシーのデフォルトバージョンの設定 (AWS API)
<a name="edit-customer-managed-policy-api-set-default-policy-version"></a>

AWS API からカスタマー管理ポリシーのデフォルトバージョンを設定できます。

**カスタマー管理ポリシーのデフォルトバージョンを設定するには (AWS API)**

1. (オプション) 管理ポリシーを一覧表示するには、次のオペレーションを呼び出します。
   + [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html)

1. カスタマー管理ポリシーのデフォルトバージョンを設定するには、次のオペレーションを呼び出します。
   + [SetDefaultPolicyVersion](https://docs.aws.amazon.com/IAM/latest/APIReference/API_SetDefaultPolicyVersion.html)

## カスタマー管理ポリシーのバージョンの削除 (AWS API)
<a name="edit-customer-managed-policy-api-delete-policy-version"></a>

カスタマー管理ポリシーのバージョンを AWS API から削除できます。

**カスタマー管理ポリシーのバージョンを削除するには (AWS API)**

1. (オプション) 管理ポリシーを一覧表示するには、次のオペレーションを呼び出します。
   + [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html)

1. カスタマー管理ポリシーを削除するには、次のオペレーションを呼び出します。
   + [DeletePolicyVersion](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicyVersion.html)

## インラインポリシーの編集 (AWS API)
<a name="edit-inline-policy-api"></a>

インラインポリシーは AWS API から編集できます。

**インラインポリシーを編集するには (AWS API)**

1. (オプション) インラインポリシーの情報を表示するには、次のオペレーションを実行します。
   + ID (ユーザー、ユーザーグループ、またはロール) に関連付けられたインラインポリシーを一覧表示するには: 
     + [ListUserPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUserPolicies.html)
     + [ListRolePolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListRolePolicies.html)
     + [ListGroupPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListGroupPolicies.html)
   + インラインポリシーに関する詳細情報を取得するには: 
     + [GetUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUserPolicy.html)
     + [GetRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRolePolicy.html)
     + [GetGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetGroupPolicy.html)

1. インラインポリシーを編集するには、次の操作を実行します。
   + [PutUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutUserPolicy.html)
   + [PutRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutRolePolicy.html)
   + [PutGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutGroupPolicy.html)

1. (オプション) インラインポリシーを検証するには、次の IAM Access Analyzer オペレーションを実行します。
   + [検証ポリシー](https://docs.aws.amazon.com/access-analyzer/latest/APIReference/API_ValidatePolicy.html)

# IAM ポリシーを削除する
<a name="access_policies_manage-delete"></a>

AWS マネジメントコンソール、AWS Command Line Interface (AWS CLI)、または AWS API を使用して IAM ポリシーを削除できます。

**注記**  
IAM ポリシーの削除は永久的です。ポリシーが削除された後、復元できません。

IAM ポリシーの構造や構文の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」および「[IAM JSON ポリシー要素のリファレンス](reference_policies_elements.md)」を参照してください。

管理ポリシーとインラインポリシーの違いの詳細については、「[管理ポリシーとインラインポリシー](access_policies_managed-vs-inline.md)」を参照してください。

AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

**Topics**
+ [IAM ポリシーを削除する (コンソール)](access_policies_manage-delete-console.md)
+ [IAM ポリシーを削除する (AWS CLI)](access_policies_manage-delete-cli.md)
+ [IAM ポリシーを削除する (AWS API)](access_policies_manage-delete-api.md)

# IAM ポリシーを削除する (コンソール)
<a name="access_policies_manage-delete-console"></a>

AWS マネジメントコンソール を使用して、IAM で*カスタマー管理ポリシー*と*インラインポリシー*を削除できます。AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

**注記**  
IAM ポリシーの削除は永久的です。ポリシーが削除された後、復元できません。

IAM ポリシーの構造や構文の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」および「[IAM JSON ポリシー要素のリファレンス](reference_policies_elements.md)」を参照してください。

管理ポリシーとインラインポリシーの違いの詳細については、「[管理ポリシーとインラインポリシー](access_policies_managed-vs-inline.md)」を参照してください。

## 前提条件
<a name="delete-policy-prerequisites-console"></a>

ポリシーを削除する前に、サービスレベルの最近のアクティビティを確認する必要があります。これは、アクセス権を使用しているプリンシパル (ユーザーまたはアプリケーション) から削除しないようにするために重要です。最後にアクセスした情報を表示する方法の詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

## IAM ポリシーの削除 (コンソール)
<a name="delete-customer-managed-policy-console"></a>

カスタマー管理ポリシーが古くなった場合や、組織のセキュリティ要件やアクセスコントロールのニーズに合わなくなった場合は、削除する必要がある場合があります。不要なポリシーを削除することで、古くなったポリシーや未使用のポリシーに関連する潜在的なセキュリティリスクを軽減できます。カスタマー管理ポリシーを削除して、AWS アカウント からこのポリシーを削除することができます。AWS 管理ポリシーを削除することはできません。

------
#### [ Console ]

**カスタマー管理ポリシーを削除するには**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. 削除するカスタマー管理ポリシーの横にあるラジオボックスを選択します。検索ボックスを使用して、グループのリストをフィルタリングできます。

1. **[アクション]**、**[削除]** の順に選択します。

1. 指示に従ってポリシーを削除することを確認し、[**削除**] を選択します。

------

## インラインポリシーの削除 (コンソール)
<a name="delete-inline-policy-console"></a>

特定のアクセス許可が、直接アタッチされている IAM ユーザー、グループ、またはロールに不要になった場合、インラインポリシーを削除する必要がある場合があります。不要なインラインポリシーを削除することで、特に管理ポリシーのように複数の ID で再利用または共有できないインラインポリシーに関連する、意図しないアクセスリスクを軽減できます。インラインポリシーを削除して、AWS アカウント から削除できます。AWS 管理ポリシーを削除することはできません。

------
#### [ Console ]

**IAM ユーザー、グループ、ロールのインラインポリシーを削除するには**

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

1. ポリシーを削除するユーザーグループ、ユーザー、またはロールの名前を選択します。次に、[**Permissions (アクセス許可)**] タブを選択します。

1. 削除するポリシーの横にあるチェックボックスをオンにして、**[削除]** を選択します。次に、確認ダイアログで、ポリシーが削除されることを確認します。
   + **ユーザー**または**ロール**のインラインポリシーを削除するには、[**削除**] を選択して削除を確定します。
   + 1 つのインラインポリシーを削除する場合は、**[ユーザーグループ]** にポリシーの名前を入力し、[**削除**を選択します。複数のインラインポリシーを選択する場合は、**[ユーザーグループ]** に削除するポリシーの数を入力し、**inline policies** に続いて **[削除]** を選択します。たとえば、3 つのインラインポリシーを削除する場合は、**3 inline policies** と入力します。

------

# IAM ポリシーを削除する (AWS CLI)
<a name="access_policies_manage-delete-cli"></a>

AWS Command Line Interface (AWS CLI) を使用して、IAM で*カスタマー管理ポリシー*と*インラインポリシー*を削除できます。AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

**注記**  
IAM ポリシーの削除は永久的です。ポリシーが削除された後、復元できません。

IAM ポリシーの構造や構文の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」および「[IAM JSON ポリシー要素のリファレンス](reference_policies_elements.md)」を参照してください。

管理ポリシーとインラインポリシーの違いの詳細については、「[管理ポリシーとインラインポリシー](access_policies_managed-vs-inline.md)」を参照してください。

## 前提条件
<a name="delete-policy-prerequisites-cli"></a>

ポリシーを削除する前に、サービスレベルの最近のアクティビティを確認する必要があります。これは、アクセス権を使用しているプリンシパル (ユーザーまたはアプリケーション) から削除しないようにするために重要です。最後にアクセスした情報を表示する方法の詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

## カスタマー管理ポリシーの削除 (AWS CLI)
<a name="delete-customer-managed-policy-cli"></a>

カスタマー管理ポリシーは AWS Command Line Interface から削除できます。

**カスタマー管理ポリシーを削除するには (AWS CLI)**

1. (オプション) ポリシーの情報を表示するには、以下のコマンドを実行します。
   + 管理ポリシーを一覧表示するには: [list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)
   + 管理ポリシーの詳細情報を取得するには: [get-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-policy.html)

1. (オプション) ポリシーとアイデンティティとの関係を確認するには、以下のコマンドを実行します。
   + 管理ポリシーがアタッチされたアイデンティティ (IAM ユーザー、IAM グループ、および IAM ロール) を一覧表示するには、次のコマンドを実行します。
     + [list-entities-for-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/list-entities-for-policy.html)
   + アイデンティティ (ユーザー、ユーザーグループ、またはロール) にアタッチされている管理ポリシーを一覧表示するには、以下のいずれかのコマンドを実行します。
     + [list-attached-user-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-user-policies.html)
     + [list-attached-group-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-group-policies.html)
     + [list-attached-role-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-role-policies.html)

1. カスタマー管理ポリシーを削除するには、次のコマンドを実行します。
   + [delete-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-policy.html)

## インラインポリシーの削除 (AWS CLI)
<a name="delete-inline-policy-cli"></a>

インラインポリシーは AWS CLI から削除できます。

**インラインポリシーを削除するには (AWS CLI)**

1. (オプション) アイデンティティ (ユーザー、ユーザーグループ、ロール) にアタッチされたすべてのインラインポリシーを一覧表示するには、以下のいずれかのコマンドを使用します。
   + [aws iam list-user-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-user-policies.html)
   + [aws iam list-group-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-group-policies.html)
   + [aws iam list-role-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-role-policies.html)

1. (オプション) アイデンティティ (ユーザー、ユーザーグループ、またはロール) に埋め込まれたインラインポリシードキュメントを取得するには、以下のいずれかのコマンドを使用します。
   + [aws iam get-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-user-policy.html)
   + [aws iam get-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-group-policy.html)
   + [aws iam get-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-role-policy.html)

1. インラインポリシーを ID (ユーザー、ユーザーグループ、または *[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*以外のロール) から削除するには、以下のいずれかのコマンドを使用します。
   + [aws iam delete-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-user-policy.html)
   + [aws iam delete-group-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-group-policy.html)
   + [aws iam delete-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-role-policy.html)

# IAM ポリシーを削除する (AWS API)
<a name="access_policies_manage-delete-api"></a>

AWS API を使用して、IAM で*カスタマー管理ポリシー*と*インラインポリシー*を削除できます。AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「[IAM と AWS STSクォータ](reference_iam-quotas.md)」を参照してください。

**注記**  
IAM ポリシーの削除は永久的です。ポリシーが削除された後、復元できません。

IAM ポリシーの構造や構文の詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」および「[IAM JSON ポリシー要素のリファレンス](reference_policies_elements.md)」を参照してください。

管理ポリシーとインラインポリシーの違いの詳細については、「[管理ポリシーとインラインポリシー](access_policies_managed-vs-inline.md)」を参照してください。

## 前提条件
<a name="delete-policy-prerequisites-api"></a>

ポリシーを削除する前に、サービスレベルの最近のアクティビティを確認する必要があります。これは、アクセス権を使用しているプリンシパル (ユーザーまたはアプリケーション) から削除しないようにするために重要です。最後にアクセスした情報を表示する方法の詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

## カスタマー管理ポリシーの削除 (AWS API)
<a name="delete-customer-managed-policy-api"></a>

カスタマー管理ポリシーは AWS API で削除できます。

**カスタマー管理ポリシーを削除するには (AWS API)**

1. (オプション) ポリシーの情報を表示するには、以下のオペレーションを呼び出します。
   + 管理ポリシーを一覧表示するには: [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html)
   + 管理ポリシーの詳細情報を取得するには: [GetPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetPolicy.html)

1. (オプション) ポリシーとアイデンティティとの関係を確認するには、以下のオペレーションを呼び出します。
   + 管理ポリシーがアタッチされたアイデンティティ (IAM ユーザー、IAM グループ、および IAM ロール) を一覧表示するには、次のオペレーションを呼び出します。
     + [ListEntitiesForPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListEntitiesForPolicy.html)
   + アイデンティティ (ユーザー、ユーザーグループ、またはロール) にアタッチされている管理ポリシーを一覧表示するには、以下のいずれかのオペレーションを呼び出します。
     + [ListAttachedUserPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedUserPolicies.html)
     + [ListAttachedGroupPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedGroupPolicies.html)
     + [ListAttachedRolePolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedRolePolicies.html)

1. カスタマー管理ポリシーを削除するには、次のオペレーションを呼び出します。
   + [DeletePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicy.html)

## インラインポリシーの削除 (AWS API)
<a name="delete-inline-policy-api"></a>

AWS API を使用してインラインポリシーを削除できます。

**インラインポリシーを削除するには (AWS API)**

1. (オプション) アイデンティティ (ユーザー、ユーザーグループ、ロール) にアタッチされたすべてのインラインポリシーを一覧表示するには、以下のいずれかのオペレーションを呼び出します。
   + [ListUserPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUserPolicies.html)
   + [ListGroupPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListGroupPolicies.html)
   + [ListRolePolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListRolePolicies.html)

1. (オプション) アイデンティティ (ユーザー、ユーザーグループ、またはロール) に埋め込まれたインラインポリシードキュメントを取得するには、以下のいずれかのオペレーションを呼び出します。
   + [GetUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUserPolicy.html)
   + [GetGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetGroupPolicy.html)
   + [GetRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRolePolicy.html)

1. インラインポリシーを ID (ユーザー、ユーザーグループ、または *[サービスにリンクされたロール](id_roles.md#iam-term-service-linked-role)*以外のロール) から削除するには、以下のいずれかのオペレーションを呼び出します。
   + [DeleteUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUserPolicy.html)
   + [DeleteGroupPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteGroupPolicy.html)
   + [DeleteRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteRolePolicy.html)

# 最終アクセス情報を使用して AWS のアクセス許可を調整する
<a name="access_policies_last-accessed"></a>

管理者として、IAM リソース (ロール、ユーザー、ユーザーグループまたはポリシー) に必要以上のアクセス許可を付与する可能性があります。IAM は、未使用のアクセス許可を特定して削除できるようにするために、最終アクセス情報を提供します。サービスの最終アクセス情報を使用して、ポリシーを調整し、IAM ID およびポリシーで使用されるサービスとアクションにのみアクセスを許可することができます。これにより、[最小権限のベストプラクティス](best-practices.md#grant-least-privilege)に準拠できるようになります。IAM または AWS Organizations に存在する ID またはポリシーの最終アクセス情報を表示できます。

未使用のアクセスアナライザーを使用して、最終アクセス時間情報を継続的に監視できます。詳しくは、「[外部アクセスと未使用のアクセスに関する検出結果](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-findings.html)」を参照してください。

**Topics**
+ [IAM の最終アクセス情報タイプ](#access_policies_last-accessed-data-types)
+ [AWS Organizations の最終アクセス情報](#access_policies_last-accessed-orgs)
+ [最終アクセス情報についての主要事項](#access_policies_last-accessed-know)
+ [必要なアクセス許可](#access_policies_last-accessed-permissions)
+ [IAM および AWS Organizations エンティティのトラブルシューティングアクティビティ](#access_policies_last-accessed-troubleshooting)
+ [AWS が最終アクセス情報を追跡する場所](#last-accessed_tracking-period)
+ [IAM の最終アクセス情報を表示する](access_policies_last-accessed-view-data.md)
+ [AWS Organizations の最終アクセス情報を表示する](access_policies_last-accessed-view-data-orgs.md)
+ [最終アクセス情報を使用するシナリオ例](access_policies_last-accessed-example-scenarios.md)
+ [IAM アクションの最終アクセス情報サービスとアクション](access_policies_last-accessed-action-last-accessed.md)

## IAM の最終アクセス情報タイプ
<a name="access_policies_last-accessed-data-types"></a>

IAM ID の最終アクセス情報には、許可された AWS サービス情報と許可されたアクション情報の 2 つのタイプが表示されます。この情報には、AWS API へのアクセスの試行が行われた日時が含まれます。アクションについては、最終アクセス情報によってサービス管理アクションが報告されます。管理アクションには、作成、削除、および変更アクションが含まれます。IAM の最終アクセス情報の表示方法の詳細については、「[IAM の最終アクセス情報を表示する](access_policies_last-accessed-view-data.md)」を参照してください。

IAM ID に付与するアクセス許可に関する意思決定を行うために最終アクセス情報を使用するシナリオ例については、「[最終アクセス情報を使用するシナリオ例](access_policies_last-accessed-example-scenarios.md)」を参照してください。

管理アクションの情報の提供方法の詳細については、「[最終アクセス情報についての主要事項](#access_policies_last-accessed-know)」を参照してください。

## AWS Organizations の最終アクセス情報
<a name="access_policies_last-accessed-orgs"></a>

管理アカウント認証情報を使用してサインインした場合、組織の IAM エンティティAWS Organizationsまたはポリシーに関してサービスの最終アクセス情報を表示することもできます。AWS Organizations エンティティには、組織のルート、組織単位 (OU)、またはアカウントが含まれています。AWS Organizations の最終アクセス情報には、サービスコントロールポリシー (SCP) によって許可されるサービスに関する情報が含まれます。この情報は、組織またはアカウント内のどのプリンシパル (ルートユーザー、IAM ユーザーまたはロール) が最後にサービスにアクセスしようとしたかを示しています。レポートの詳細と AWS Organizations の最終アクセス情報の表示方法については、「[AWS Organizations の最終アクセス情報を表示する](access_policies_last-accessed-view-data-orgs.md)」を参照してください。

AWS Organizations エンティティに付与するアクセス許可に関する意思決定を行うために最終アクセス時間情報を使用するシナリオ例については、「[最終アクセス情報を使用するシナリオ例](access_policies_last-accessed-example-scenarios.md)」を参照してください。

## 最終アクセス情報についての主要事項
<a name="access_policies_last-accessed-know"></a>

レポートの最終アクセス時間情報を使用してIAM ID または AWS Organizations エンティティのアクセス許可を変更する前に、その情報に関する次の詳細を確認してください。
+ **追跡期間** – 最近のアクティビティは、4 時間以内に IAM コンソールに表示されます。サービス情報の追跡期間は、サービスがアクション情報の追跡を開始した時期に応じて、400 日以上です。Amazon S3 アクション情報の追跡期間は、2020 年 4 月 12 日に始まりました。Amazon EC2、IAM、および Lambda アクションの追跡期間は、2021 年 4 月 7 日から始まりました。その他すべてのサービスの追跡期間は 2023 年 5 月 23 日に開始されました。アクションの最終アクセス情報があるサービスのリストについては、「[IAM アクションの最終アクセス情報サービスとアクション](access_policies_last-accessed-action-last-accessed.md)」を参照してください。どのリージョンのアクションの最終アクセス情報が参照できるかについての詳細は、「[AWS が最終アクセス情報を追跡する場所](#last-accessed_tracking-period)」を参照してください
+ **報告された試行** – サービスの最終アクセス時間データには、成功したものだけではなく、AWS API へのすべてのアクセスの試行が含まれます。これには、AWS マネジメントコンソール、いずれかの SDK を通じた AWS API、またはその他のコマンドラインツールを使用して行われたすべての試行が含まれます。サービスの最終アクセス時間データで予期しないエントリが表示されても、リクエストが拒否された可能性があるため、アカウントが侵害されたことを意味するわけではありません。すべての API 呼び出しと、それらが成功したか、アクセスか拒否されたかに関する情報については、権威あるソースとして CloudTrail ログを参照してください。
+ **PassRole** – `iam:PassRole` アクションは追跡されず、IAM アクションの最終アクセス情報には含まれません。
+ **アクションの最終アクセス情報** — アクションの最終アクセス情報は、IAM ID がアクセスするサービス管理アクションで使用できます。どのアクションの最終アクセス情報が報告されるかについては、「[サービスの一覧とアクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_last-accessed-action-last-accessed.html#access_policies_last-accessed-action-last-accessed-supported-actions)」を参照してください。
**注記**  
最終アクセス情報のアクションは、データプレーンイベントに利用できません。
+ **管理イベント** — IAM は、CloudTrail によってログ記録されるサービス管理イベントのアクション情報を提供します。CloudTrail 管理イベントは、コントロールプレーンオペレーションまたはコントロールプレーンイベントと呼ばれることもあります。管理イベントでは、AWS アカウント のリソースで実行される管理オペレーションについて知ることができます。CloudTrail の管理イベントの詳細については、AWS CloudTrail ユーザーガイドの「[Cloudtrail を使用した管理イベントのログ記録](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html)」を参照してください。
+ **レポート所有者** – レポートを生成するプリンシパル のみがレポートの詳細を表示できます。つまり、AWS マネジメントコンソールで情報を表示するときに、情報が生成されてロードされるのを待たなければならない場合があります。AWS CLI または AWS API を使用してレポートの詳細を取得する場合、認証情報はレポートを生成したプリンシパルの認証情報と一致する必要があります。ロールまたは AWS STS フェデレーションユーザーのプリンシパルに一時的な認証情報を使用する場合、同じセッション中にレポートを生成および取得する必要があります。引き受けたロールセッションのプリンシパルの詳細については、「[AWS JSON ポリシーの要素: Principal](reference_policies_elements_principal.md)」を参照してください。
+ **IAM リソース** — IAM の最終アクセス情報には、アカウントの IAM リソース (ロール、ユーザー、IAM グループ、ポリシー) が含まれます。AWS Organizations への最終アクセスに関する情報には、指定された AWS Organizations エンティティのプリンシパル (IAM ユーザー、IAM ロール、または AWS アカウントのルートユーザー) が含まれます。最終アクセス情報には、認証されていない試行は含まれません。
+ **IAM ポリシータイプ** — IAM の最終アクセス情報には、IAM アイデンティティポリシーで許可されているサービスが含まれます。以下は、ロールにアタッチされたポリシーか、ユーザーに直接、またはグループ経由でアタッチされたポリシーを示します。他のポリシータイプで許可されているアクセスはレポートに含まれていません。除外されたポリシータイプには、リソースベースのポリシー、アクセスコントロールリスト、AWS Organizations SCP、IAM アクセス許可の境界、およびセッションポリシーなどがあります。サービスにリンクされたロールによって提供されるアクセス許可は、リンク先のサービスによって定義され、IAM で変更することはできません。サービスにリンクされたロールの詳細については、「[サービスにリンクされたロールの作成](id_roles_create-service-linked-role.md)」を参照してください。さまざまなポリシータイプを評価してアクセスを許可または拒否する方法については、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。
+ **AWS Organizations ポリシータイプ** – AWS Organizations の情報には、AWS Organizations エンティティの継承されたサービスコントロールポリシー (SCP) で許可されているサービスが含まれます。SCP は、Root、OU、またはアカウントに接続されているポリシーです。他のポリシータイプで許可されているアクセスはレポートに含まれていません。除外されたポリシータイプには、アイデンティティベースのポリシー、リソースベースのポリシー、アクセスコントロールリスト、IAM アクセス許可の境界、およびセッションポリシーなどがあります。アクセスを許可または拒否するために各ポリシータイプを評価する方法については、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。
+ **ポリシー ID の指定** - AWS CLI または AWS APIを使用して AWS Organizations で最終アクセス時間情報のレポートを生成する際、オプションでポリシー ID を指定できます。生成されたレポートには、そのポリシーのみで許可されているサービスの情報が含まれます。この情報には、指定した AWS Organizations エンティティまたはエンティティの子の最新のアカウントアクティビティが含まれます。詳細については、「[aws iam generate-organizations-access-report](https://docs.aws.amazon.com/cli/latest/reference/iam/generate-organizations-access-report.html)」または「[GenerateOrganizationsAccessReport](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GenerateOrganizationsAccessReport.html)」を参照してください。
+ **AWS Organizations 管理アカウント** – サービスの最終アクセス情報を表示するには、組織の管理アカウントにサインインする必要があります。IAM コンソール、AWS CLI、または AWS API を使用して管理アカウントのデータを表示するように選択できます。管理アカウントは SCP によって制限されないため、結果として得られるレポートにすべての AWS サービスがリストされます。CLI または API でポリシー ID を指定した場合、ポリシーは無視されます。サービスごとに、管理アカウントのみの情報がレポートに含まれます。ただし、他の AWS Organizations エンティティのレポートでは、管理アカウントのアクティビティに関する情報は返されません。
+ **AWS Organizations 設定** – 管理者は AWS Organizations のデータを生成する前に[組織ルートで SCP を有効にする必要があります](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies.html#enable_policies_on_root)。

## 必要なアクセス許可
<a name="access_policies_last-accessed-permissions"></a>

AWS マネジメントコンソール で最終アクセス情報を表示するには、必要なアクセス許可を付与するポリシーが必要です。

### IAM 情報のアクセス許可
<a name="access_policies_last-accessed-permissions-iam"></a>

IAM コンソールを使用して、 ユーザー、ロール、またはポリシーの最終アクセス情報を表示するには、以下のアクションを含むポリシーが必要です。
+ `iam:GenerateServiceLastAccessedDetails`
+ `iam:Get*`
+ `iam:List*`

これらのアクセス許可では、ユーザーは、以下を表示することができます。
+ [管理ポリシー](https://docs.aws.amazon.com/glossary/latest/reference/glos-chap.html#managed_policy)にアタッチされているユーザー、グループ、またはロール
+ ユーザーまたはロールがアクセスできるサービス
+ 最後にサービスにアクセスした時間
+ 最後に特定の Amazon EC2、IAM、Lambda、または Amazon S3 アクションを使用しようとした時間

AWS CLI または AWS API を使用して IAM の最終アクセス情報を表示するには、使用するオペレーションに一致するアクセス許可も必要です。
+ `iam:GenerateServiceLastAccessedDetails`
+ `iam:GetServiceLastAccessedDetails`
+ `iam:GetServiceLastAccessedDetailsWithEntities`
+ `iam:ListPoliciesGrantingServiceAccess`

この例では、IAM の最終アクセス情報の表示を許可する ID ベースのポリシーを作成する方法を示します。さらに、IAM のすべてのへの読み取り専用アクセスが許可されます。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:GenerateServiceLastAccessedDetails",
            "iam:Get*",
            "iam:List*"
        ],
        "Resource": "*"
    }
}
```

------

### AWS Organizations 情報のアクセス許可
<a name="access_policies_last-accessed-permissions-orgs"></a>

IAM コンソールを使用して AWS Organizations のルート、OU、またはアカウントエンティティのレポートを表示するには、以下のアクションを含むポリシーが必要です。
+ `iam:GenerateOrganizationsAccessReport`
+ `iam:GetOrganizationsAccessReport`
+ `organizations:DescribeAccount`
+ `organizations:DescribeOrganization`
+ `organizations:DescribeOrganizationalUnit`
+ `organizations:DescribePolicy`
+ `organizations:ListChildren`
+ `organizations:ListParents`
+ `organizations:ListPoliciesForTarget`
+ `organizations:ListRoots`
+ `organizations:ListTargetsForPolicy`

AWS CLI または AWS API を使用して AWS Organizations のサービスの最終アクセス時間情報を表示するには、以下のアクションを含むポリシーが必要です。
+ `iam:GenerateOrganizationsAccessReport`
+ `iam:GetOrganizationsAccessReport`
+ `organizations:DescribePolicy`
+ `organizations:ListChildren`
+ `organizations:ListParents`
+ `organizations:ListPoliciesForTarget`
+ `organizations:ListRoots`
+ `organizations:ListTargetsForPolicy`

この例では、AWS Organizations のサービスの最終アクセス情報の閲覧を許可する ID ベースのポリシーを作成する方法を示します。さらに、AWS Organizations のすべてのへの読み取り専用アクセスが許可されます。このポリシーは、プログラムおよびコンソールアクセスのアクセス許可を定義します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iam:GenerateOrganizationsAccessReport",
            "iam:GetOrganizationsAccessReport",
            "organizations:Describe*",
            "organizations:List*"
        ],
        "Resource": "*"
    }
}
```

------

また、[iam:OrganizationsPolicyId](reference_policies_iam-condition-keys.md#ck_OrganizationsPolicyId) 条件キーを使用して、特定の AWS Organizations ポリシーのみのレポートの生成を許可することもできます。ポリシーの例については「[IAM: AWS Organizations ポリシーのサービスの最終アクセス時間情報を表示](reference_policies_examples_iam_service-accessed-data-orgs.md)」を参照してください。

## IAM および AWS Organizations エンティティのトラブルシューティングアクティビティ
<a name="access_policies_last-accessed-troubleshooting"></a>

場合によっては、AWS マネジメントコンソールの最終アクセス情報のテーブルが空になる可能性もあります。または、AWS CLI または AWS API リクエストにより、空の情報セットまたは null フィールドが返される可能性があります。このような場合は、次の点を確認してください。
+ アクションの最終アクセス情報については、表示される予定のアクションがリストに返されないことがあります。これは、IAM アイデンティティがアクションのアクセス許可を持っていないか、最終アクセス情報のアクションを AWS がまだ追跡していないために発生します。
+ IAM ユーザーの場合は、直接またはグループメンバーシップで、インラインポリシーまたは管理ポリシーが 1 つ以上アタッチされていることを確認します。
+ IAM グループの場合は、グループにインラインポリシーまたは管理ポリシーが 1 つ以上アタッチされていることを確認します。
+ IAM グループの場合は、サービスにアクセスするためにグループのポリシーを使用したメンバーのサービスの最終アクセス情報のみ、レポートにより返されます。メンバーが他のポリシーを使用していたかどうかを確認するには、そのユーザーの最終アクセス情報を確認します。
+ IAM ロールの場合は、ロールにインラインポリシーまたは管理ポリシーが 1 つ以上アタッチされていることを確認します。
+ IAM エンティティ (ユーザーまたはロール) の場合は、そのエンティティのアクセス許可に影響する可能性のある他のポリシータイプを確認します。このポリシータイプには、リソースベースのポリシー、アクセスコントロールリスト、AWS Organizations ポリシー、IAM アクセス許可の境界、またはセッションポリシーなどがあります。詳細については「[ポリシータイプ](access_policies.md#access_policy-types)」または「[単一のアカウント内のリクエストのポリシー評価](reference_policies_evaluation-logic_policy-eval-basics.md)」を参照してください。
+ IAM ポリシーで、指定した管理ポリシーが、1 人以上のユーザー、メンバーを持つグループ、またはロールに関連付けられていることを確認します。
+ AWS Organizations エンティティ (ルート、OU、またはアカウント) の場合は、AWS Organizations 管理アカウントの認証情報を使用してサインインしていることを確認します。
+ [SCP が組織のルートで有効になっている](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies.html#enable_policies_on_root)ことを確認します。
+ アクション最終アクセス時間情報は、[IAM アクションの最終アクセス情報サービスとアクション](access_policies_last-accessed-action-last-accessed.md) にリストされているアクションでのみ使用できます。

変更したら、アクティビティが IAM コンソールレポートに表示されるまで 4 時間以上かかります。AWS CLI または AWS API を使用する場合は、新しいレポートを生成して更新データを表示する必要があります。

## AWS が最終アクセス情報を追跡する場所
<a name="last-accessed_tracking-period"></a>

AWS は、標準の AWS リージョンの最終アクセス情報を収集します。AWS でさらにリージョンを追加すると、AWS の各リージョンにおける情報の追跡開始日とあわせて、これらのリージョンが以下のテーブルに追加されます。
+ **サービス情報** – サービスの追跡期間は過去 400 日以上です。リージョンが過去 400 日以内にこの機能を追跡し始めた場合は、それよりも短くなります。
+ **アクション情報** – Amazon S3 管理アクションの追跡期間は、2020 年 4 月 12 日に始まりました。Amazon EC2、IAM、および Lambda の管理アクションの追跡期間は、2021 年 4 月 7 日に始まりました。その他すべてのサービスの管理アクションの追跡期間は、2023 年 5 月 23 日に開始します。リージョンの追跡日が 2023 年 5 月 23 日より後の場合、そのリージョンのアクション最終アクセス日情報は後の日付から開始されます。


| リージョン名 | リージョン | 追跡開始日 | 
| --- | --- | --- | 
| 米国東部 (オハイオ) | us-east-2 | 2017 年 10 月 27 日 | 
| 米国東部 (バージニア北部) | us–east–1 | 2015 年 10 月 1 日 | 
| 米国西部（北カリフォルニア) | us-west-1 | 2015 年 10 月 1 日 | 
| 米国西部 (オレゴン) | us-west-2 | 2015 年 10 月 1 日 | 
| アフリカ (ケープタウン) | af-south-1 | 2020 年 4 月 22 日 | 
| アジアパシフィック (香港) | ap-east-1 | 2019 年 4 月 24 日 | 
| アジアパシフィック (ハイデラバード) | ap-south-2 | 2022 年 11 月 22 日 | 
| アジアパシフィック (ジャカルタ) | ap-southeast-3 | 2021 年 12 月 13 日 | 
| アジアパシフィック (メルボルン) | ap-southeast-4 | 2023 年 1 月 23 日 | 
| アジアパシフィック (ムンバイ) | ap-south-1 | 2016 年 6 月 27 日 | 
| アジアパシフィック (大阪) | ap-northeast-3 | 2018 年 2 月 11 日 | 
| アジアパシフィック (ソウル) | ap-northeast-2 | 2016 年 1 月 6 日 | 
| アジアパシフィック (シンガポール) | ap-southeast-1 | 2015 年 10 月 1 日 | 
| アジアパシフィック (シドニー) | ap-southeast-2 | 2015 年 10 月 1 日 | 
| アジアパシフィック (東京) | ap-northeast-1 | 2015 年 10 月 1 日 | 
| カナダ (中部) | ca-central-1 | 2017 年 10 月 28 日 | 
| 欧州 (フランクフルト) | eu-central-1 | 2015 年 10 月 1 日 | 
| 欧州 (アイルランド) | eu-west-1 | 2015 年 10 月 1 日 | 
| 欧州 (ロンドン) | eu-west-2 | 2017 年 10 月 28 日 | 
| 欧州 (ミラノ) | eu-south-1 | 2020 年 4 月 28 日 | 
| 欧州 (パリ) | eu-west-3 | 2017 年 12 月 18 日 | 
| 欧州 (スペイン) | eu-south-2 | 2022 年 11 月 15 日 | 
| 欧州 (ストックホルム) | eu-north-1 | 2018 年 12 月 12 日 | 
| 欧州 (チューリッヒ) | eu-central-2 | 2022 年 11 月 8 日 | 
| イスラエル (テルアビブ) | il-central-1 | 2023 年 8 月 1 日 | 
| 中東 (バーレーン) | me-south-1 | 2019 年 7 月 29 日 | 
| 中東 (アラブ首長国連邦) | me-central-1 | 2022 年 8 月 30 日 | 
| 南米 (サンパウロ） | sa-east-1 | 2015 年 12 月 11 日 | 
| AWS GovCloud (米国東部) | us-gov-east-1 | 2023 年 7 月 1 日 | 
| AWS GovCloud (米国西部) | us-gov-west-1 | 2023 年 7 月 1 日 | 

前の表にリージョンが記載されていない場合、そのリージョンは、まだ最終アクセス情報を提供していません。

AWS リージョンは地理的な領域内の AWS リソースのコレクションです。リージョンは、パーティションにグループ化されます。標準リージョンは、`aws` パーティションに属するリージョンです。各パーティションの詳細については、『AWS 全般のリファレンス』の「[Amazon Resource Names (ARNs) Format](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arns-syntax)」を参照してください。リージョンの詳細については、『AWS 全般のリファレンス』の「 [About AWS Regions](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#region-what-is)」も参照してください。

# IAM の最終アクセス情報を表示する
<a name="access_policies_last-accessed-view-data"></a>

AWS マネジメントコンソール、AWS CLI、または AWS API を使用して、IAM の最終アクセス情報を表示できます。最終アクセス情報が表示される[サービスとそのアクションのリスト](access_policies_last-accessed-action-last-accessed.md)を参照してください。最終アクセス情報の詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

IAM では、次の各タイプのリソースに関する情報を表示できます。いずれの場合も、情報には、指定された報告期間に許可されたサービスが含まれます。
+ **ユーザー** – ユーザーが許可された各サービスへのアクセスを最後に試みた時間を表示します。
+ **ユーザーグループ** – グループメンバーが許可された各サービスへのアクセスを最後に試みた時間に関する情報を表示します。また、このレポートには、アクセスを試みたメンバーの合計数も表示されます。
+ **ロール** – 許可された各サービスへのアクセスにおいて、ユーザーが最後にロールを使用した時間を表示します。
+ **ポリシー** – ユーザーまたはロールが許可された各サービスへのアクセスを最後に試みた時間に関する情報を表示します。また、このレポートには、アクセスを試みたエンティティの合計数も表示されます。

**注記**  
IAM のリソースに関するアクセス情報を表示する前に、情報のレポート期間、レポート対象のエンティティ、評価対象のポリシータイプをご確認ください。詳細については、[最終アクセス情報についての主要事項](access_policies_last-accessed.md#access_policies_last-accessed-know)を参照してください。

## IAM の情報の表示 (コンソール)
<a name="access_policies_last-accessed-viewing"></a>

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

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

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

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

1. 任意のユーザー、ユーザーグループ、ロール、またはポリシーの名前をクリックして、その**[概要]** ページを開き、**[最終アクセス]** タブを選択します。選択したリソースに基づき、次の情報を表示します。
   + **ユーザーグループ** – ユーザーグループメンバー (ユーザー) がアクセスできるサービスのリストを表示します。また、メンバーが最後にサービスにアクセスした日時、使用したユーザーグループポリシー、リクエストを行ったユーザーグループメンバーも表示できます。ポリシーの名前を選択して、ポリシーが管理ポリシーかインラインユーザーグループポリシーかを確認します。ユーザーグループメンバーの名前を選択して、ユーザーグループのすべてのメンバーと、サービスへの最終アクセス時間を選択します。
   + **ユーザー** – ユーザーがアクセスできるサービスのリストを表示します。また、最後にサービスにアクセスした日時と現在ユーザーに関連付けられているポリシーも表示できます。ポリシーの名前を選択して、そのポリシーが管理ポリシー、インラインユーザーポリシー、ユーザーグループのインラインポリシーのいずれであるかを確認します。
   + **ロール** – ロールでアクセスできるサービス、サービスへのロールの最終アクセス時間、および使用したポリシーのリストを表示します。ポリシーの名前を選択して、ポリシーが管理ポリシーかインラインロールポリシーかを確認します。
   + **ポリシー** – ポリシーで許可されたアクションを含むサービスのリストを表示します。また、サービスにアクセスするために最後にポリシーが使用された日時と、ポリシーを使用したエンティティ (ユーザーまたはロール) も表示できます。**最終アクセス日**には、別のポリシーを通じてこのポリシーへのアクセスが許可された日付も含まれます。エンティティの名前を選択して、このポリシーがアタッチされているエンティティや、サービスへの最終アクセス時間を確認します。

1. テーブルの **[サービス]** 列で、[アクションの最終アクセス情報を含むサービス](access_policies_last-accessed-action-last-accessed.md)の名前のいずれかを選択し、IAM エンティティがアクセスしようとした管理アクションのリストを表示します。AWS リージョン と、ユーザーが最後にアクションを実行しようとした日時を示すタイムスタンプを表示できます。

1. **[最終アクセス日]** の列は、[アクションの最終アクセス情報を含むサービスとサービスの管理アクションに表示されます](access_policies_last-accessed-action-last-accessed.md)。この列で返される可能性のある次の結果を確認します。これらの結果は、サービスやアクションが許可されているかどうか、アクセスされたかどうか、および最終アクセス情報が AWS によって追跡されているかどうかによって異なります。  
**<数値> 日前**  
追跡期間中にサービスまたはアクションが使用されてから経過した日数。サービスの追跡期間は、過去 400 日間です。Amazon S3 アクションの追跡期間は、2020 年 4 月 12 日に開始しました。Amazon EC2 IAM および Lambda アクションの追跡期間は、2021 年 4 月 7 日に開始しました。その他すべてのサービスの追跡期間は 2023 年 5 月 23 日に開始されました。各 AWS リージョン の追跡開始日の詳細については、「[AWS が最終アクセス情報を追跡する場所](access_policies_last-accessed.md#last-accessed_tracking-period)」を参照してください。  
**追跡期間内にアクセスがない**  
追跡対象のサービスまたはアクションが、追跡期間中にエンティティによって使用されていません。

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

## IAM の情報の表示（AWS CLI)
<a name="access_policies_last-accessed-viewing-cli"></a>

AWS CLI を使用して、IAMリソースが AWS サービスおよび Amazon S3、Amazon EC2、IAM、Lambda アクションへのアクセスを試行するために最後に使用された時刻に関する情報を取得できます。IAM リソースには、ユーザー、ユーザーグループ、ロール、またはポリシーを選択できます。

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

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

1. 前のステップの `job-id` パラメータを使用して、レポートに関する詳細を取得します。
   + [aws iam get-service-last-accessed-details](https://docs.aws.amazon.com/cli/latest/reference/iam/get-service-last-accessed-details.html)

   このオペレーションでは、`generate-service-last-accessed-details` オペレーションでリクエストしたリソースのタイプと粒度レベルに基づき、次の情報が返されます。
   + **ユーザー** – 指定したユーザーがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、ユーザーが最後に試行した日時とユーザーの ARN を返します。
   + **ユーザーグループ** — 指定したユーザーグループのメンバーがアクセスできるサービスのリストを返します。このユーザーグループにアタッチされたポリシーを使用して、サービスのリストを返します。サービスごとに、オペレーションは、ユーザーグループメンバーが最後に試行した日時を返します。また、そのユーザーの ARN と、サービスにアクセスしようとしたユーザーグループメンバーの合計数も返ります。[GetServiceLastAccessedDetailsWithEntities](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetServiceLastAccessedDetailsWithEntities.html) オペレーションを使用して、すべてのメンバーのリストを取得します。
   + **ロール** – 指定したロールがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、ロールが最後に試行した日時とロールの ARN を返します。
   + **ポリシー** – 指定されたポリシーがアクセスを許可するサービスのリストを返します。各サービスについて、オペレーションは、エンティティ (ユーザーまたはロール) が最後にポリシーを使用してサービスにアクセスしようとした日時を返します。また、そのエンティティの ARN とアクセスを試みたエンティティの合計数も返ります。

1. 特定のサービスにアクセスするためにユーザーグループまたはポリシーのアクセス許可を使用したエンティティについて説明します。このオペレーションは、各エンティティの ARN、ID、名前、パス、タイプ (ユーザーまたはロール)、および最後にサービスにアクセスしようとしたエンティティのリストを返します。このオペレーションは、ユーザーとロールに対しても使用できますが、そのエンティティに関する情報のみが返ります。
   + [aws iam get-service-last-accessed-details-with-entities](https://docs.aws.amazon.com/cli/latest/reference/iam/get-service-last-accessed-details-with-entities.html)

1. 特定のサービスにアクセスする際にアイデンティティ (ユーザー、ユーザーグループ、またはロール) が使用したアイデンティティベースのポリシーについて説明します。アイデンティティとサービスを指定すると、このオペレーションは、アイデンティティが指定されたサービスにアクセスするために使用できるアクセス許可ポリシーのリストを返します。このオペレーションは、ポリシーの現在の状態を示し、生成されたレポートには依存しません。また、他のポリシータイプ (例: リソースベースのポリシー、アクセスコントロールリスト、AWS Organizations ポリシー、IAM アクセス許可の境界、セッションポリシー) は返されません。詳細については「[ポリシータイプ](access_policies.md#access_policy-types)」または「[単一のアカウント内のリクエストのポリシー評価](reference_policies_evaluation-logic_policy-eval-basics.md)」を参照してください。
   + [aws iam list-policies-granting-service-access](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies-granting-service-access.html)

## IAM の情報の表示 (AWS API)
<a name="access_policies_last-accessed-viewing-api"></a>

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

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

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

1. 前のステップの `JobId` パラメータを使用して、レポートに関する詳細を取得します。
   + [GetServiceLastAccessedDetails](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetServiceLastAccessedDetails.html)

   このオペレーションでは、`GenerateServiceLastAccessedDetails` オペレーションでリクエストしたリソースのタイプと粒度レベルに基づき、次の情報が返されます。
   + **ユーザー** – 指定したユーザーがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、ユーザーが最後に試行した日時とユーザーの ARN を返します。
   + **ユーザーグループ** — 指定したユーザーグループのメンバーがアクセスできるサービスのリストを返します。このユーザーグループにアタッチされたポリシーを使用して、サービスのリストを返します。サービスごとに、オペレーションは、ユーザーグループメンバーが最後に試行した日時を返します。また、そのユーザーの ARN と、サービスにアクセスしようとしたユーザーグループメンバーの合計数も返ります。[GetServiceLastAccessedDetailsWithEntities](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetServiceLastAccessedDetailsWithEntities.html) オペレーションを使用して、すべてのメンバーのリストを取得します。
   + **ロール** – 指定したロールがアクセスできるサービスのリストを返します。サービスごとに、オペレーションは、ロールが最後に試行した日時とロールの ARN を返します。
   + **ポリシー** – 指定されたポリシーがアクセスを許可するサービスのリストを返します。各サービスについて、オペレーションは、エンティティ (ユーザーまたはロール) が最後にポリシーを使用してサービスにアクセスしようとした日時を返します。また、そのエンティティの ARN とアクセスを試みたエンティティの合計数も返ります。

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

1. 特定のサービスにアクセスする際にアイデンティティ (ユーザー、ユーザーグループ、またはロール) が使用したアイデンティティベースのポリシーについて説明します。アイデンティティとサービスを指定すると、このオペレーションは、アイデンティティが指定されたサービスにアクセスするために使用できるアクセス許可ポリシーのリストを返します。このオペレーションは、ポリシーの現在の状態を示し、生成されたレポートには依存しません。また、他のポリシータイプ (例: リソースベースのポリシー、アクセスコントロールリスト、AWS Organizations ポリシー、IAM アクセス許可の境界、セッションポリシー) は返されません。詳細については「[ポリシータイプ](access_policies.md#access_policy-types)」または「[単一のアカウント内のリクエストのポリシー評価](reference_policies_evaluation-logic_policy-eval-basics.md)」を参照してください。
   + [ListPoliciesGrantingServiceAccess](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPoliciesGrantingServiceAccess.html)

# AWS Organizations の最終アクセス情報を表示する
<a name="access_policies_last-accessed-view-data-orgs"></a>

AWS Organizations のサービスの最終アクセス情報を表示するには、IAM コンソール、AWS CLI、または AWS API を使用します。データ、必要なアクセス許可、トラブルシューティング、およびサポートされているリージョンに関する重要な情報については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

AWS Organizations 管理アカウントの認証情報を使用して IAM コンソールにサインインした場合、組織内の任意のエンティティの情報を表示できます。AWS Organizations エンティティには、組織ルート、組織単位 (OU) 、およびアカウントが含まれます。IAM コンソールを使用して、組織のサービスコントロールポリシー (SCP) の情報を表示することもできます。IAM は、エンティティに適用される SCP によって許可されているサービスのリストを表示します。サービスごとに、選択した AWS Organizations エンティティまたはエンティティの子の最新のアカウントアクティビティ情報を表示できます。

AWS CLI または AWS API を管理アカウント認証情報とともに使用した場合、組織のすべてのエンティティまたはポリシーのレポートを生成できます。エンティティに関するプログラムによるレポートには、エンティティに適用される SCP によって許可されているサービスのリストが含まれます。サービスごとに、このレポートには、指定した AWS Organizations エンティティまたはエンティティのサブツリーでのアカウントの最新のアクティビティが含まれます。

ポリシーに関するプログラムによるレポートを生成する場合、AWS Organizations エンティティを指定する必要があります。このレポートには、指定した SCP によって許可されているサービスのリストが含まれます。サービスごとに、このレポートには、そのポリシーによってアクセス権限が付与されているエンティティまたはエンティティの子での最新のアカウントアクティビティが含まれます。詳細については、「[aws iam generate-organizations-access-report](https://docs.aws.amazon.com/cli/latest/reference/iam/generate-organizations-access-report.html)」または「[GenerateOrganizationsAccessReport](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GenerateOrganizationsAccessReport.html)」を参照してください。

レポートを表示する前に、管理アカウントの要件および情報、レポート期間、レポート対象のエンティティ、評価対象のポリシータイプをご確認ください。詳細については、[最終アクセス情報についての主要事項](access_policies_last-accessed.md#access_policies_last-accessed-know)を参照してください。

## AWS Organizations エンティティパスを理解する
<a name="access_policies_last-accessed-viewing-orgs-entity-path"></a>

AWS CLI または AWS API を使用して AWS Organizations アクセスレポートを生成する場合は、エンティティパスを指定する必要があります。パスとは、AWS Organizations エンティティの構造をテキストで表記したものです。

組織の既知の構造を使用して、エンティティパスを構築できます。たとえば、AWS Organizations に次のような組織構造があるとします。

![\[組織パス構造\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/ou-path-diagram.png)


[**Dev Managers (開発マネージャー)**] の OU のパスは、組織の ID、ルート、および OU までのパスにあるすべての OU を使用して構築されます。

```
o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-ghi0-awsccccc/ou-jkl0-awsddddd/
```

[**Production (本番稼働用)**] OU のアカウントのパスは、組織の ID、ルート、OU、およびアカウント番号を使用して構築されます。

```
o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-abc0-awsaaaaa/111111111111/
```

**注記**  
組織 ID はグローバルに一意ですが、OU ID とルート ID は組織内でのみ一意です。これは、2 つの組織が同じ組織 ID を共有しないことを意味します。ただし、別の組織が自分と同じ ID を持つ OU またはルートを持っている可能性があります。OU またはルートを指定するときは、必ず組織 ID を含めることをお勧めします。

## AWS Organizations の情報の表示 (コンソール)
<a name="access_policies_last-accessed-viewing-orgs"></a>

IAM コンソールを使用して、ルート、OU、アカウント、またはポリシーのサービスの最終アクセス情報を表示できます。

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

1. AWS Organizations 管理アカウントの認証情報を使用して AWS マネジメントコンソール にサインインし、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. **[Access Reports]** (レポートへのアクセス) セクションの下にあるナビゲーションペインで、**[Organization activity]** (組織アクティビティ) を選択します。

1. [**Organization activity (組織アクティビティ)**] ページで、[**ルート**] を選択します。

1. **[Details and activity]** (詳細およびアクティビティ) タブで、**[Service access report]** (サービスアクセスレポート) セクションを表示します。情報には、ルートに直接アタッチされているポリシーによって許可されているサービスのリストが含まれます。この情報は、サービスに最後にアクセスしたアカウントとその時間が示されます。サービスにアクセスしたプリンシパルの詳細については、そのアカウントの管理者としてサインインし、[IAM サービスの最終アクセス情報を表示します](access_policies_last-accessed-view-data.md)。

1. [**Attached SCPs (アタッチされた SCP)**] タブを選択し、ルートにアタッチされているサービスコントロールポリシー (SCP) のリストを表示します。 に、各ポリシーがアタッチされているターゲットエンティティの数が示されます。IAM は各ポリシーがアタッチされているターゲットエンティティの数を表示できます。この情報を使用して確認する SCP を決定します。

1. SCP の名前を選択し、ポリシーで許可されているすべてのサービスを表示します。サービスごとに、サービスに最後にアクセスしたアカウントとその時間を表示します。

1. **[AWS Organizations での編集]** を選択して、追加の詳細を表示し、AWS Organizations コンソールで SCP を編集します。詳細については、*AWS Organizations ユーザーガイド*の「[SCP の更新](https://docs.aws.amazon.com/organizations/latest/userguide/create-policy.html#update_policy)」を参照してください。

**OU またはアカウントの情報を表示するには (コンソール)**

1. AWS Organizations 管理アカウントの認証情報を使用して AWS マネジメントコンソール にサインインし、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. **[Access Reports]** (レポートへのアクセス) セクションの下にあるナビゲーションペインで、**[Organization activity]** (組織アクティビティ) を選択します。

1. [**Organization activity (組織アクティビティ)**] ページで、組織の構造を展開します。管理アカウントを除き、表示する OU またはアカウントの名前を選択します。

1. **[Details and activity]** (詳細およびアクティビティ) タブで、**[Service access report]** (サービスアクセスレポート) セクションを表示します。情報には、OU またはアカウント*と* そのすべての親にアタッチされている SCP によって許可されているサービスのリストが含まれます。この情報は、サービスに最後にアクセスしたアカウントとその時間が示されます。サービスにアクセスしたプリンシパルの詳細については、そのアカウントの管理者としてサインインし、[IAM サービスの最終アクセス情報を表示します](access_policies_last-accessed-view-data.md)。

1. [**Attached SCPs (アタッチされた SCP)**] タブを選択し、OU またはアカウントに直接アタッチされているサービスコントロールポリシー (SCP) のリストを表示します。IAM は各ポリシーがアタッチされているターゲットエンティティの数を表示します。この情報を使用して確認する SCP を決定します。

1. SCP の名前を選択し、ポリシーで許可されているすべてのサービスを表示します。サービスごとに、サービスに最後にアクセスしたアカウントとその時間を表示します。

1. **[AWS Organizations での編集]** を選択して、追加の詳細を表示し、AWS Organizations コンソールで SCP を編集します。詳細については、*AWS Organizations ユーザーガイド*の「[SCP の更新](https://docs.aws.amazon.com/organizations/latest/userguide/create-policy.html#update_policy)」を参照してください。

**管理アカウントの情報を表示するには (コンソール)**

1. AWS Organizations 管理アカウントの認証情報を使用して AWS マネジメントコンソール にサインインし、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. **[Access Reports]** (レポートへのアクセス) セクションの下にあるナビゲーションペインで、**[Organization activity]** (組織アクティビティ) を選択します。

1. [**Organization activity (組織アクティビティ)**] ページで、組織の構造を展開して管理アカウントの名前を選択します。

1. **[Details and activity]** (詳細およびアクティビティ) タブで、**[Service access report]** (サービスアクセスレポート) セクションを表示します。情報には、すべての AWS サービスのリストが含まれます。管理アカウントは SCP によって制限されません。情報に、アカウントがサービスに最後にアクセスしたかどうかとその時間が示されます。サービスにアクセスしたプリンシパルの詳細については、そのアカウントの管理者としてサインインし、[IAM サービスの最終アクセス情報を表示します](access_policies_last-accessed-view-data.md)。

1. アカウントが管理アカウントであるため、[**Attached SCPs (アタッチされた SCP)**] タブを選択して、アタッチされた SCP がないことを確認します。

**ポリシーの情報を表示するには (コンソール)**

1. AWS Organizations 管理アカウントの認証情報を使用して AWS マネジメントコンソール にサインインし、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. [**Access Reports (レポートへのアクセス)**] セクションの下にあるナビゲーションペインで、[**Service control policies (SCPs) (サービスコントロールポリシー (SCP))**] を選択します。

1. [**Service control policies (SCPs) (サービスコントロールポリシー (SCP))**] ページで、組織内のポリシーのリストを表示します。 各ポリシーがアタッチされているターゲットエンティティの数を表示できます。

1. SCP の名前を選択し、ポリシーで許可されているすべてのサービスを表示します。サービスごとに、サービスに最後にアクセスしたアカウントとその時間を表示します。

1. **[AWS Organizations での編集]** を選択して、追加の詳細を表示し、AWS Organizations コンソールで SCP を編集します。詳細については、「*AWS Organizations ユーザーガイド*」の「[SCP の更新](https://docs.aws.amazon.com/organizations/latest/userguide/create-policy.html#update_policy)」を参照してください。

## AWS Organizations の情報の表示 (AWS CLI)
<a name="access_policies_last-accessed-viewing-orgs-cli"></a>

AWS CLI を使用して、AWS Organizations ルート、OU、アカウント、またはポリシーのサービスの最終アクセス時間情報を取得できます。

**AWS Organizations サービスの最終アクセス時間情報を表示するには (AWS CLI)**

1. 必要なIAMと AWS Organizations のアクセス許可を持つ AWS Organizations 管理アカウントの認証情報を使用して、ルートに対して SCP が有効になっていることを確認します。詳細については、「[最終アクセス情報についての主要事項](access_policies_last-accessed.md#access_policies_last-accessed-know)」を参照してください。

1. レポートを生成します。リクエストには、レポートが必要な AWS Organizations エンティティ (ルート、OU、またはアカウント) のパスを含める必要があります。必要に応じて、`organization-policy-id` パラメータを含めて、特定のポリシーのレポートを表示できます。コマンドにより、`job-id` が返されます。これを `get-organizations-access-report` コマンドで使用してジョブが完了するまで `job-status` をモニタリングできます。
   + [aws iam generate-organizations-access-report](https://docs.aws.amazon.com/cli/latest/reference/iam/generate-organizations-access-report.html)

1. 前のステップの `job-id` パラメータを使用して、レポートに関する詳細を取得します。
   + [aws iam get-organizations-access-report](https://docs.aws.amazon.com/cli/latest/reference/iam/get-organizations-access-report.html)

   このコマンドにより、エンティティメンバーがアクセスできるサービスのリストが返されます。サービスごとに、このコマンドにより、エンティティメンバーが最後に試行した日時とアカウントのエンティティパスが返されます。また、アクセス可能なサービスの総数とアクセスされなかったサービスの数も返されます。オプションの `organizations-policy-id` パラメータを指定した場合、アクセス可能なサービスは指定したポリシーによって許可されたものです。

## AWS Organizations の情報の表示 (AWS API)
<a name="access_policies_last-accessed-viewing-orgs-api"></a>

AWS API を使用して、AWS Organizations ルート、OU、アカウント、またはポリシーのサービスの最終アクセス時間情報を取得できます。

**AWS Organizations サービスの最終アクセス時間情報を表示するには (AWS API)**

1. 必要なIAMと AWS Organizations のアクセス許可を持つ AWS Organizations 管理アカウントの認証情報を使用して、ルートに対して SCP が有効になっていることを確認します。詳細については、「[最終アクセス情報についての主要事項](access_policies_last-accessed.md#access_policies_last-accessed-know)」を参照してください。

1. レポートを生成します。リクエストには、レポートが必要な AWS Organizations エンティティ (ルート、OU、またはアカウント) のパスを含める必要があります。必要に応じて、`OrganizationsPolicyId` パラメータを含めて、特定のポリシーのレポートを表示できます。オペレーションにより、`JobId` が返されます。これを `GetOrganizationsAccessReport` オペレーションで使用して、ジョブが完了するまで、`JobStatus` をモニタリングできます。
   + [GenerateOrganizationsAccessReport](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GenerateOrganizationsAccessReport.html)

1. 前のステップの `JobId` パラメータを使用して、レポートに関する詳細を取得します。
   + [GetOrganizationsAccessReport](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetOrganizationsAccessReport.html)

   このオペレーションにより、エンティティメンバーがアクセスできるサービスのリストが返されます。サービスごとに、このオペレーションにより、エンティティメンバーが最後に試行した日時とアカウントのエンティティパスが返されます。また、アクセス可能なサービスの総数とアクセスされなかったサービスの数も返されます。オプションの `OrganizationsPolicyId` パラメータを指定した場合、アクセス可能なサービスは指定したポリシーによって許可されたものです。

# 最終アクセス情報を使用するシナリオ例
<a name="access_policies_last-accessed-example-scenarios"></a>

最終アクセス情報を使用して、IAM エンティティまたは AWS Organizations エンティティに付与するアクセス許可に関する決定を行うことができます。詳細については、「[最終アクセス情報を使用して AWS のアクセス許可を調整する](access_policies_last-accessed.md)」を参照してください。

**注記**  
IAM または AWS Organizations のエンティティあるいはポリシーに関するアクセス情報を表示する前に、データのレポート期間、レポート対象のエンティティ、評価対象のポリシータイプをご確認ください。詳細については、[最終アクセス情報についての主要事項](access_policies_last-accessed.md#access_policies_last-accessed-know)を参照してください。

お客様は、管理者として、会社に適したアクセシビリティと最小限のアクセス権限のバランスを取る必要があります。

## 情報を使用した IAM グループのアクセス許可の制限
<a name="last-accessed-sample-reduce-permissions-group"></a>

最終アクセス情報を使用して、ユーザーが必要とするサービスのみを含むように IAM グループのアクセス許可を制限することができます。この方法は、サービスレベルで[最小限の権限を付与する](best-practices.md#grant-least-privilege)上で重要なステップです。

たとえば、Paulo Santos は、Example Corp のAWS ユーザー権限の定義を担当する管理者です。この会社は AWS の使用を開始したばかりであり、ソフトウェア開発チームは使用する AWS のサービスをまだ定義していません。Paulo は必要なサービスにのみアクセス可能なアクセス許可をチームに付与しようと考えていますが、サービスが定義されていないため、パワーユーザーのアクセス許可を一時的に付与します。その後、最終アクセス情報を使用してグループのアクセス許可を制限します。

Paulo は、次の JSON テキストを使用して、`ExampleDevelopment` という名前の管理ポリシーを作成します。次に、`Development` という名前のグループにそのポリシーをアタッチし、開発者全員をグループに追加します。

**注記**  
Paulo のパワーユーザーは、一部のサービスや機能を使用するために、`iam:CreateServiceLinkedRole` アクセス許可が必要な場合があります。彼は、このアクセス許可を追加すると、ユーザーがサービスにリンクされたロールを作成することを許可されることを理解しています。彼は、パワーユーザーのためにこのリスクを受け入れます。

------
#### [ JSON ]

****  

```
{

    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "FullAccessToAllServicesExceptPeopleManagement",
            "Effect": "Allow",
            "NotAction": [
                "iam:*",
                "organizations:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "RequiredIamAndOrgsActions",
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceLinkedRole",
                "iam:ListRoles",
                "organizations:DescribeOrganization"
            ],
            "Resource": "*"
        }
    ]
}
```

------

90 日後、Paulo は `Development`を使用して、AWS マネジメントコンソール グループの[最終アクセス情報を表示](access_policies_last-accessed-view-data.md#access_policies_last-accessed-viewing)します。グループメンバーがアクセスしたサービスのリストを表示します。先週、このユーザーがアクセスしたサービスは、AWS CloudTrail、 Amazon CloudWatch Logs、Amazon EC2、AWS KMS、Amazon S3 の 5 つであることが分かりました。AWS の使用開始時は他のいくつかのサービスにもアクセスしていましたが、それ以降はアクセスしていません。

Pauloは、ポリシーの権限を縮小して、これら 5 つのサービスと必要な IAM と AWS Organizations アクションだけを含めることにしました。また、次の JSON テキストを使用して、`ExampleDevelopment` ポリシーを編集します。

**注記**  
Paulo のパワーユーザーは、一部のサービスや機能を使用するために、`iam:CreateServiceLinkedRole` アクセス許可が必要な場合があります。彼は、このアクセス許可を追加すると、ユーザーがサービスにリンクされたロールを作成することを許可されることを理解しています。彼は、パワーユーザーのためにこのリスクを受け入れます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "FullAccessToListedServices",
            "Effect": "Allow",
            "Action": [
                "s3:*",
                "kms:*",
                "cloudtrail:*",
                "logs:*",
                "ec2:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "RequiredIamAndOrgsActions",
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceLinkedRole",
                "iam:ListRoles",
                "organizations:DescribeOrganization"
            ],
            "Resource": "*"
        }
    ]
}
```

------

アクセス許可をさらに制限するために、Paulo は、AWS CloudTrail の [**イベント履歴**] でアカウントのイベントを表示します。そこでは、詳細なイベント情報を表示して、開発者が必要とするアクションとリソースのみが含まれるように、ポリシーのアクセス許可を制限することができます。詳細については、*AWS CloudTrail CloudTrail ユーザーガイド*の [CloudTrail イベント履歴でのイベントの表示](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events-console.html)を参照してください。

## 情報を使用した IAM ユーザーのアクセス許可の制限
<a name="access_policies_last-accessed-reduce-permissions-users"></a>

最終アクセス情報を使用して、各 IAM ユーザーのアクセス許可を制限することができます。

たとえば、Martha Rivera は、アクセス許可を管理する IT 管理者であり、AWS アクセス許可を組織内のユーザーに過剰に付与しないように管理する必要があります。定期的なセキュリティチェックの一部として、彼女はすべての IAM ユーザーのアクセス許可を見直します。これらのユーザーの中には、以前にセキュリティエンジニアのロールを担っていた、Nikhil Jayashankar という名前のアプリケーション開発者がいます。ジョブ要件が変更され、Nikhil は現在 `app-dev` グループと `security-team` グループの両方のメンバーです。`app-dev` グループでは、Amazon EC2、Amazon EBS、Auto Scaling、Amazon S3、Route 53、Elastic Transcoder などの複数のサービスへのアクセス許可が付与されています。以前のジョブの `security-team` グループでは、IAM および CloudTrail へのアクセス許可が付与されています。

管理者である Martha が IAM コンソールにサインインして**ユーザー**を選択後、`nikhilj` という名前を選択し、[**最終アクセス**] タブを選択します。

Martha は [**最終アクセス**] 列を確認し、Nikhil が最近 、IAM、CloudTrail、Route 53、Amazon Elastic Transcoder、および多数の AWS サービスにアクセスしていないことに気づきました。ニヒルは Amazon S3 にアクセスしました。Martha は、サービスのリストから [**S3**] を選択し、Nikhil が過去 2 週間以内にいくつかの Amazon S3 `List` アクションを実行したことを知ります。Martha は、Nikhil が社内のセキュリティチームのメンバーではなくなったため、IAM と CloudTrail にアクセスするビジネス上のニーズがなくなったことを確認します。

Martha は、サービスおよびアクションの最終アクセス情報に基づいて作業を行う準備ができました。ただし、前の例のグループとは異なり、`nikhilj` のような IAM ユーザーには、複数のポリシーが適用され、複数のグループのメンバーになることがあります。Martha は、`nikhilj` やその他のグループメンバーのアクセスを誤って中断しないように慎重に進める必要があります。彼女は、Nikhil に付与する必要のあるアクセス権だけでなく、これらのアクセス許可が付与されている*背景*を確認する必要があります。

Martha は、[**アクセス許可**] タブを選択します。ここでは、`nikhilj` に直接アタッチされているポリシーと、グループからアタッチされているポリシーを確認します。各ポリシーを展開して、ポリシーの概要を確認し、Nikhil が現在使用していないサービスへのアクセスを許可しているポリシーを確認します。
+ IAM – `IAMFullAccess` AWS 管理ポリシーは、`nikhilj` に直接アタッチされているほか、`security-team` グループにもアタッチされています。
+ CloudTrail - `AWSCloudTrailReadOnlyAccess` AWS 管理ポリシー は、`security-team` グループにアタッチされています。
+ Route 53 - `App-Dev-Route53` カスタマー管理ポリシーは、`app-dev` グループにアタッチされています。
+ Elastic Transcoder - `App-Dev-ElasticTranscoder` カスタマー管理ポリシーは、`app-dev` グループにアタッチされています。

Martha は、`nikhilj` に直接アタッチされている AWS 管理ポリシー `IAMFullAccess` を削除することにしました。また、Nikhil の `security-team` グループのメンバーシップも削除します。これらの 2 つのアクションによって、IAM および CloudTrail への不要なアクセスが削除されます。

Route 53 および Elastic Transcoder への Nikhil のアクセス許可は、`app-dev` グループによって付与されています。Nikhil は、これらのサービスを使用していませんが、グループの他のメンバーは使用する可能性があります。Martha は、`app-dev` グループの最終アクセス情報を確認し、複数のメンバーが最近 Route 53 と Amazon S3 にアクセスしたことを知ります。しかし、昨年 Elastic Transcoder にアクセスしたグループメンバーはいませんでした。彼女は、カスタマー管理ポリシー `App-Dev-ElasticTranscoder` をグループから削除します。

次に、カスタマー管理ポリシー `App-Dev-ElasticTranscoder` の最終アクセス情報を確認します。このポリシーは、その他の IAM アイデンティティのいずれにもアタッチされていないことが分かりました。彼女は社内で調査を行い、このポリシーは今後不要であることを確認して削除しました。

## IAM リソースを削除する前に情報を使用する
<a name="last-accessed-sample-delete-resources"></a>

IAM リソースを削除する前に、最終アクセス情報を使用して、最後にリソースを使用してから一定の時間が経過したことを確認できます。これは、ユーザー、グループ、ロール、ポリシーに適用されます。これらのアクションの詳細については、以下のトピックを参照してください。
+ **IAM ユーザー** – [IAM ユーザーを削除または非アクティブ化する](id_users_remove.md)
+ **グループ** – [IAM グループを削除する](id_groups_manage_delete.md)
+ **ロール** – [ロールまたはインスタンスプロファイルを削除する](id_roles_manage_delete.md)
+ **ポリシー** – [IAM ポリシーを削除する (これにより、ポリシーは ID から切り離されます)](access_policies_manage-delete.md)

## IAM ポリシーを編集する前に情報を使用する
<a name="last-accessed-sample-edit-policies"></a>

IAM アイデンティティ (ユーザー、グループ、ロール)、またはそのリソースに影響するポリシーを編集する前の IAM ポリシーの最終アクセス情報を確認できます。使用しているユーザーのアクセスを削除しないように、このステップは重要です。

例えば、Arnav Desai は Example Corp の開発者および AWS 管理者です。彼のチームが AWS Organizations を使い始めたとき、IAM と AWS を除くすべてのサービスへのフルアクセスを許可するパワーユーザーアクセスをすべての開発者に与えました。[最小限の権限の付与](best-practices.md#grant-least-privilege)の最初のステップとして、Arnav は AWS CLI を使用して、アカウントの管理ポリシーを確認しようとしています。

そのために、Arnav はまず、アイデンティティにアタッチされているアカウントのカスタマー管理ポリシーを表示します。次のコマンドを使用します。

```
aws iam list-policies --scope Local --only-attached --policy-usage-filter PermissionsPolicy
```

レスポンスから、各ポリシーの ARN をキャプチャします。Arnav は次に、次のコマンドを使用して、各ポリシーの最終アクセス情報のレポートを生成します。

```
aws iam generate-service-last-accessed-details --arn arn:aws:iam::123456789012:policy/ExamplePolicy1
```

レスポンスから、`JobId` フィールドから生成したレポートの ID をキャプチャします。続いて、Arnav は、`JobStatus` フィールドより `COMPLETED` または `FAILED` の値が返るまで、次のコマンドをポーリングします。ジョブが失敗した場合は、そのエラーをキャプチャします。

```
aws iam get-service-last-accessed-details --job-id 98a765b4-3cde-2101-2345-example678f9
```

ジョブが `COMPLETED` のステータスになったら、Arnav は JSON 形式の `ServicesLastAccessed` 配列の内容を解析します。

```
 "ServicesLastAccessed": [
        {
            "TotalAuthenticatedEntities": 1,
            "LastAuthenticated": 2018-11-01T21:24:33.222Z,
            "ServiceNamespace": "dynamodb",
            "LastAuthenticatedEntity": "arn:aws:iam::123456789012:user/IAMExampleUser",
            "ServiceName": "Amazon DynamoDB"
        },

        {
            "TotalAuthenticatedEntities": 0,
            "ServiceNamespace": "ec2",
            "ServiceName": "Amazon EC2"
        },

        {
            "TotalAuthenticatedEntities": 3,
            "LastAuthenticated": 2018-08-25T15:29:51.156Z,
            "ServiceNamespace": "s3",
            "LastAuthenticatedEntity": "arn:aws:iam::123456789012:role/IAMExampleRole",
            "ServiceName": "Amazon S3"
        }
    ]
```

Arnav は、この情報から、`ExamplePolicy1` ポリシーによって、Amazon DynamoDB、Amazon S3、Amazon EC2 の 3 つのサービスへのアクセスが許可されていることを理解します。`IAMExampleUser` という名前の IAM ユーザーが、11 月 1 日に DynamoDB に最後にアクセスを試み、8 月 25 日には `IAMExampleRole` ロールを使用して、Amazon S3 にアクセスしようとしたユーザーがいました。昨年 Amazon S3 にアクセスを試みたエンティティは他にも 2 つあります。ただし、昨年 Amazon EC2 にアクセスしようとしたユーザーはいませんでした。

つまり、Arnav は、ポリシーから Amazon EC2 アクションを安全に削除することができます。Arnav は、このポリシーの最新の JSON ドキュメントを確認しようとしています。まず、次のコマンドを使用して、ポリシーのバージョン番号を確認する必要があります。

```
aws iam list-policy-versions --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1
```

レスポンスから、Arnav は `Versions` 配列の現在のデフォルトバージョン番号を収集します。続いて、次のコマンドでそのバージョン番号 (`v2`) を使用して、JSON ポリシードキュメントをリクエストします。

```
aws iam get-policy-version --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1 --version-id v2
```

Arnav は、`PolicyVersion` 配列の `Document` フィールドで返る JSON ポリシードキュメントを保存します。Arnav は、ポリシードキュメント内で、`ec2` 名前空間内のアクションを検索します。ポリシーに残っている他の名前空間からのアクションがない場合、影響を受けるアイデンティティ (ユーザー、グループ、およびロール) からポリシーを切り離します。その後、ポリシーを削除します。この場合、ポリシーには Amazon DynamoDB サービスと Amazon S3 サービスが含まれます。したがって、Arnav は、ドキュメントから Amazon EC2 アクションを削除し、変更内容を保存します。また、次のコマンドを使用して、ポリシーをドキュメントの新しいバージョンで更新し、そのバージョンをデフォルトのポリシーバージョンとして設定します。

```
aws iam create-policy-version --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1 --policy-document file://UpdatedPolicy.json --set-as-default
```

これで、`ExamplePolicy1` ポリシーは更新され、不要な Amazon EC2 サービスへのアクセスは削除されました。

## その他の IAM のシナリオ
<a name="last-accessed-scenarios-other"></a>

IAM リソース (ユーザー、グループ、ロール、ポリシー) によって、サービスに最後にアクセスを試みた際に関する情報は、次のタスクを完了する際に役立ちます。
+ **ポリシー** – [既存のカスタマー管理ポリシーまたはインラインポリシーを編集してアクセス許可を削除する](access_policies_manage-edit.md)
+ **ポリシー** – [インラインポリシーを削除して、管理ポリシーに変換し、削除する](access_policies-convert-inline-to-managed.md)
+ **ポリシー** – [既存のポリシーに明示的な拒否を追加する](reference_policies_evaluation-logic_AccessPolicyLanguage_Interplay.md)
+ **ポリシー** – [管理ポリシーを ID (ユーザー、グループ、ロール) からデタッチする](access_policies_manage-attach-detach.md#detach-managed-policy-console)
+ **エンティティ** – [IAM エンティティ (ユーザーまたはロール) が持つことができる最大のアクセス許可を制御するためのアクセス許可の境界を設定する](access_policies_manage-attach-detach.md)
+ **グループ** – [グループからユーザーを削除する](id_groups_manage_add-remove-users.md)

## 情報を使用した組織単位のアクセス許可の調整
<a name="access_policies_last-accessed-reduce-permissions-orgs"></a>

最終アクセス情報を使用して、AWS Organizations で組織単位 (OU) のアクセス許可を制限することができます。

たとえば、John Stiles は AWS Organizations 管理者です。彼は、会社の AWS アカウント でユーザーに過剰なアクセス許可を与えないようにする責任があります。定期的なセキュリティ監査の一部として、彼は自分の組織のアクセス権限を見直します。彼の `Development` OU には、新しい AWS サービスのテストによく使用されるアカウントが含まれています。John は、180 日間以上アクセスされていないサービスに関するレポートを定期的に見直すことに決定します。その後、彼は OU のメンバーがそれらのサービスにアクセスするためのアクセス許可を削除します。

John は自分の管理アカウント認証情報を使用して IAM コンソールにサインインします。IAM コンソールで、彼は `Development` OU の AWS Organizations データを見つけます。彼は、**サービスアクセスレポート**テーブルを見直し、希望期間の 180 日間以上アクセスされていない 2 つの AWS サービスがあることを確認します。彼は、開発チームが Amazon Lex および AWS Database Migration Service にアクセスするためのアクセス権限を追加したことを覚えています。John は、開発チームに連絡し、これらのサービスをテストするビジネスニーズがないことを確認します。

John は、最終アクセス情報に基づいて作業を行う準備ができました。彼は、**[AWS Organizations での編集]** を選択し、SCP が複数のエンティティにアタッチされていることが通知されます。彼は [**Continue (続行)**] を選択します。AWS Organizations で、彼は SCP がアタッチされている AWS Organizations エンティティを確認するためにターゲットを見直します。すべてのエンティティは `Development` OU 内にあります。

John は、AWS Database Migration Service SCP の Amazon Lex および `NewServiceTest` アクションへのアクセスを拒否することに決定します。このアクションにより、サービスへの不要なアクセスが削除されます。

# IAM アクションの最終アクセス情報サービスとアクション
<a name="access_policies_last-accessed-action-last-accessed"></a>

次の表は、[IAM アクションの最終アクセス情報](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_last-accessed.html)が表示される AWS サービスの一覧です。各サービスのアクションのリストについては、「サービス認可リファレンス」の「[AWS サービスのアクション、リソース、条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html)」を参照してください。

AWS は、ポリシー管理ワークフローの自動化を合理化するために、JSON 形式のアクション最終アクセス情報を提供します。サービスリファレンス情報を使用すると、マシンが読み取り可能なファイルから AWS のサービス全体のアクセスの最終アクセス時情報にアクセスできます。詳細については、「[サービス認可リファレンス」の「プログラムによるアクセスの簡素化された AWS のサービス 情報](https://docs.aws.amazon.com/service-authorization/latest/reference/service-reference.html)」を参照してください。


|  **サービス**  |  **サービスプレフィックス**  | 
| --- | --- | 
|  [AWS Identity and Access Management and Access Analyzer](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiamaccessanalyzer.html)  | アクセスアナライザー | 
|  [AWS アカウント管理](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsaccountmanagement.html)  | アカウント | 
|  [AWS Certificate Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscertificatemanager.html)  | acm | 
|  [Amazon Managed Workflows for Apache Airflow](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmanagedworkflowsforapacheairflow.html)  | airflow | 
|  [AWS Amplify](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsamplify.html)  | amplify | 
|  [AWS Amplify UI Builder](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsamplifyuibuilder.html)  | amplifyuibuilder | 
|  [Amazon アプリインテグレーション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonappintegrations.html)  | app-integrations | 
|  [AWS AppConfig](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsappconfig.html)  | appconfig | 
|  [Amazon AppFlow](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonappflow.html)  | appflow | 
|  [AWS Application Cost Profiler](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsapplicationcostprofilerservice.html)  | application-cost-profiler | 
|  [Amazon CloudWatch Application Insights](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncloudwatchapplicationinsights.html)  | applicationinsights | 
|  [AWS App Mesh](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsappmesh.html)  | appmesh | 
|  [Amazon WorkSpaces Applications](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonappstream2.0.html)  | appstream | 
|  [AWS AppSync](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsappsync.html)  | appsync | 
|  [Amazon Managed Service for Prometheus](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmanagedserviceforprometheus.html)  | aps | 
|  [Amazon Athena](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonathena.html)  | athena | 
|  [AWS Audit Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsauditmanager.html)  | auditmanager | 
|  [AWS Auto Scaling](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsautoscaling.html)  | autoscaling | 
|  [AWS Marketplace](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsmarketplace.html)  | aws-marketplace | 
|  [AWS Backup](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsbackup.html)  | バックアップ | 
|  [AWS Batch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsbatch.html)  | バッチ | 
|  [Amazon Braket](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbraket.html)  | braket | 
|  [AWS Budgets](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsbudgetservice.html)  | 予算 | 
|  [AWS Cloud9](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscloud9.html)  | cloud9 | 
|  [AWS CloudFormation](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscloudformation.html)  | cloudformation | 
|  [Amazon CloudFront](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncloudfront.html)  | cloudfront | 
|  [AWS CloudHSM](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscloudhsm.html)  | cloudhsm | 
|  [Amazon CloudSearch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncloudsearch.html)  | cloudsearch | 
|  [AWS CloudTrail](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscloudtrail.html)  | CloudTrail | 
|  [Amazon CloudWatch](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncloudwatch.html)  | cloudwatch | 
|  [AWS CodeArtifact](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscodeartifact.html)  | codeartifact | 
|  [AWS CodeDeploy](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscodedeploy.html)  | codedeploy | 
|  [Amazon CodeGuru Profiler](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncodeguruprofiler.html)  | codeguru-profiler | 
|  [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncodegurureviewer.html)  | codeguru-reviewer | 
|  [AWS CodePipeline](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscodepipeline.html)  | codepipeline | 
|  [AWS CodeStar](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscodestar.html)  | codestar | 
|  [AWS CodeStar 通知](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscodestarnotifications.html)  | codestar-notifications | 
|  [Amazon Cognito ID](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncognitoidentity.html)  | cognito-identity | 
|  [Amazon Cognito ユーザープール](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncognitouserpools.html)  | cognito-idp | 
|  [Amazon Cognito Sync](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncognitosync.html)  | cognito-sync | 
|  [Amazon Comprehend Medical](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncomprehendmedical.html)  | comprehendmedical | 
|  [AWS Compute Optimizer](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscomputeoptimizer.html)  | compute-optimizer | 
|  [AWS Config](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsconfig.html)  | config | 
|  [Amazon Connect](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonconnect.html)  | connect | 
|  [AWS Cost and Usage Report](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscostandusagereport.html)  | cur | 
|  [AWS Glue DataBrew](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsgluedatabrew.html)  | databrew | 
|  [AWS Data Exchange](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsdataexchange.html)  | dataexchange | 
|  [AWS Data Pipeline](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsdatapipeline.html)  | datapipeline | 
|  [DynamoDB Accelerator](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazondynamodbacceleratordax.html)  | dax | 
|  [AWS Device Farm](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsdevicefarm.html)  | devicefarm | 
|  [Amazon DevOps Guru](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazondevopsguru.html)  | devops-guru | 
|  [AWS Direct Connect](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsdirectconnect.html)  | directconnect | 
|  [Amazon Data Lifecycle Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazondatalifecyclemanager.html)  | dlm | 
|  [AWS Database Migration Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsdatabasemigrationservice.html)  | dms | 
|  [Amazon DocumentDB Elastic Clusters](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazondocumentdbelasticclusters.html)  | docdb-elastic | 
|  [Amazon DynamoDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazondynamodb.html)  | dynamodb | 
|  [Amazon Elastic Block Store](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelasticblockstore.html)  | ebs | 
|  [Amazon Elastic Compute Cloud](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonec2.html)  | Ec2 | 
|  [Amazon Elastic Container Registry](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelasticcontainerregistry.html)  | ecr | 
|  [Amazon Elastic Container Registry Public](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelasticcontainerregistrypublic.html)  | ecr-public | 
|  [Amazon Elastic Container Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelasticcontainerservice.html)  | Ecs | 
|  [Amazon Elastic Kubernetes Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastickubernetesservice.html)  | eks | 
|  [Amazon ElastiCache](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelasticache.html)  | elasticache | 
|  [AWS Elastic Beanstalk](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselasticbeanstalk.html)  | elasticbeanstalk | 
|  [Amazon Elastic File System](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelasticfilesystem.html)  | elasticfilesystem | 
|  [エラスティックロードバランシング](https://docs.aws.amazon.com/service-authorization/latest/reference/list_elasticloadbalancing.html)  | elasticloadbalancing | 
|  [Amazon Elastic Transcoder](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastictranscoder.html)  | elastictranscoder | 
|  [Amazon EMR on EKS (EMR コンテナ)](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonemroneksemrcontainers.html)  | emr-containers | 
|  [Amazon EMR Serverless](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonemrserverless.html)  | emr-serverless | 
|  [Amazon OpenSearch Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonopensearchservice.html)  | es | 
|  [Amazon EventBridge](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoneventbridge.html)  | イベント | 
|  [Amazon CloudWatch Evidently](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncloudwatchevidently.html)  | evidently | 
|  [Amazon FinSpace](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonfinspace.html)  | finspace | 
|  [Amazon Data Firehose](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkinesisfirehose.html)  | firehose | 
|  [AWS Fault Injection Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsfaultinjectionsimulator.html)  | fis | 
|  [AWS Firewall Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsfirewallmanager.html)  | fms | 
|  [Amazon Fraud Detector](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonfrauddetector)  | frauddetector | 
|  [Amazon FSx](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonfsx)  | fsx | 
|  [Amazon GameLift Servers](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazongamelift)  | gamelift | 
|  [Amazon Location Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlocation.html)  | geo | 
|  [Amazon Glacier](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3glacier.html)  | glacier | 
|  [Amazon Managed Grafana](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmanagedgrafana.html)  | grafana | 
|  [AWS IoT Greengrass](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotgreengrass.html)  | greengrass | 
|  [AWS Ground Station](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsgroundstation.html)  | groundstation | 
|  [Amazon GuardDuty](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonguardduty.html)  | guardduty | 
|  [AWS HealthLake](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonhealthlake.html)  | healthlake | 
|  [Amazon Honeycode](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonhoneycode.html)  | honeycode | 
|  [AWS Identity and Access Management](https://docs.aws.amazon.com/service-authorization/latest/reference/list_identityandaccessmanagement.html)  | iam | 
|  [AWS Identity Store](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsidentitystore.html)  | identitystore | 
|  [EC2 イメージビルダー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonec2imagebuilder.html)  | imagebuilder | 
|  [Amazon Inspector Classic](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoninspector.html)  | inspector | 
|  [Amazon Inspector](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoninspector2.html)  | inspector2 | 
|  [AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html)  | iot | 
|  [AWS IoT Analytics](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotanalytics.html)  | iotanalytics | 
|  [AWS IoT Core Device Advisor](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotcoredeviceadvisor.html)  | iotdeviceadvisor | 
|  [AWS IoT Events](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotevents.html)  | iotevents | 
|  [AWS IoT Fleet Hub](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html)  | iotfleethub | 
|  [AWS IoT SiteWise](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotsitewise.html)  | iotsitewise | 
|  [AWS IoT TwinMaker](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiottwinmaker.html)  | iottwinmaker | 
|  [AWS IoT Wireless](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotwireless.html)  | iotwireless | 
|  [Amazon Interactive Video Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoninteractivevideoservice.html)  | ivs | 
|  [Amazon Interactive Video Service Chat](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoninteractivevideoservicechat.html)  | ivschat | 
|  [Amazon Managed Streaming for Apache Kafka](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmanagedstreamingforapachekafka.html)  | kafka | 
|  [Amazon Managed Streaming for Kafka Connect](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmanagedstreamingforkafkaconnect.html)  | kafkaconnect | 
|  [Amazon Kendra](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkendra.html)  | kendra | 
|  [Amazon Kinesis](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkinesis.html)  | kinesis | 
|  [Amazon Kinesis Analytics V2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonkinesisanalyticsv2.html)  | kinesisanalytics | 
|  [AWS Key Management Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awskeymanagementservice.html)  | kms | 
|  [AWS Lambda](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awslambda.html)  | lambda | 
|  [Amazon Lex](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlexv2.html)  | lex | 
|  [AWS License Manager Linux サブスクリプションマネージャー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awslicensemanagerlinuxsubscriptionsmanager.html)  | license-manager-linux-subscriptions | 
|  [Amazon Lightsail](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlightsail.html)  | lightsail | 
|  [Amazon CloudWatch Logs](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncloudwatchlogs.html)  | ログ | 
|  [Amazon Lookout for Equipment](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlookoutforequipment.html)  | lookoutequipment | 
|  [Amazon Lookout for Metrics](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlookoutformetrics.html)  | lookoutmetrics | 
|  [Amazon Lookout for Vision](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonlookoutforvision.html)  | lookoutvision | 
|  [AWS Mainframe Modernization](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsmainframemodernizationservice.html)  | m2 | 
|  [Amazon Managed Blockchain](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmanagedblockchain.html)  | managedblockchain | 
|  [AWS Elemental MediaConnect](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselementalmediaconnect.html)  | mediaconnect | 
|  [AWS Elemental MediaConvert](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselementalmediaconvert.html)  | mediaconvert | 
|  [AWS Elemental MediaLive](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselementalmedialive.html)  | medialive | 
|  [AWS Elemental MediaStore](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselementalmediastore.html)  | mediastore | 
|  [AWS Elemental MediaTailor](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awselementalmediatailor.html)  | mediatailor | 
|  [Amazon MemoryDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmemorydb.html)  | memorydb | 
|  [AWS Application Migration Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsapplicationmigrationservice.html)  | mgn | 
|  [AWS Migration Hub](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsmigrationhub.html)  | mgh | 
|  [AWS Migration Hub 戦略レコメンデーション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsmigrationhubstrategyrecommendations.html)  | migrationhub-strategy | 
|  [Amazon Pinpoint](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonpinpoint.html)  | mobiletargeting | 
|  [Amazon MQ](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmq.html)  | mq | 
|  [AWS Network Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsnetworkmanager.html)  | networkmanager | 
|  [Amazon Nimble Studio](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonnimblestudio.html)  | nimble | 
|  [AWS HealthOmics](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awshealthomics.html)  | omics | 
|  [AWS OpsWorks](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsopsworks.html)  | opsworks | 
|  [AWS OpsWorks CM](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsopsworksconfigurationmanagement)  | opsworks-cm | 
|  [AWS Outposts](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsoutposts.html)  | outposts | 
|  [AWS Organizations](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsorganizations.html)  | 組織 | 
|  [AWS Panorama](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awspanorama.html)  | panorama | 
|  [AWS Performance Insights](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsperformanceinsights.html)  | pi | 
|  [Amazon EventBridge パイプ](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoneventbridgepipes.html)  | pipes | 
|  [Amazon Polly](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonpolly.html)  | polly | 
|  [Amazon Connect Customer Profiles](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonconnectcustomerprofiles.html)  | profile | 
|  [Amazon QLDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonqldb.html)  | qldb | 
|  [AWS Resource Access Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsresourceaccessmanager.html)  | ram | 
|  [AWS ごみ箱](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsrecyclebin.html)  | rbin | 
|  [Amazon Relational Database Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonrds.html)  | rds | 
|  [Amazon Redshift](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonredshift.html)  | redshift | 
|  [Amazon Redshift Data API](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonredshiftdataapi.html)  | redshift-data | 
|  [AWS Migration Hub Refactor Spaces](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsmigrationhubrefactorspaces.html)  | refactor-spaces | 
|  [Amazon Rekognition](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonrekognition.html)  | rekognition | 
|  [AWS Resilience Hub](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsresiliencehub.html)  | resiliencehub | 
|  [AWS Resource Explorer](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsresourceexplorer.html)  | resource-explorer-2 | 
|  [AWS Resource Groups](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsresourcegroups.html)  | resource-groups | 
|  [AWS RoboMaker](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsrobomaker.html)  | robomaker | 
|  [AWS Identity and Access Management Roles Anywhere](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsidentityandaccessmanagementrolesanywhere.html)  | rolesanywhere | 
|  [Amazon Route 53](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonroute53.html)  | route53 | 
|  [Amazon Route 53 Recovery コントロール](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonroute53recoverycontrols.html)  | route53-recovery-control-config | 
|  [Amazon Route 53 Recovery 準備状況](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonroute53recoveryreadiness.html)  | route53-recovery-readiness | 
|  [Amazon Route 53 Resolver](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonroute53resolver.html)  | route53resolver | 
|  [AWS CloudWatch RUM](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscloudwatchrum.html)  | rum | 
|  [Amazon Simple Storage Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html)  | s3 | 
|  [Amazon S3 on Outposts](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3onoutposts.html)  | s3-outposts | 
|  [Amazon SageMaker AI 地理空間機能](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemakergeospatialcapabilities.html)  | sagemaker-geospatial | 
|  [Savings Plans](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssavingsplans.html)  | savingsplans | 
|  [Amazon EventBridge スキーマ](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoneventbridgeschemas.html)  | schemas | 
|  [Amazon SimpleDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsimpledb.html)  | sdb | 
|  [AWS Secrets Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssecretsmanager.html)  | secretsmanager | 
|  [AWS Security Hub CSPM](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssecurityhub.html)  | securityhub | 
|  [Amazon Security Lake](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsecuritylake.html)  | securitylake | 
|  [AWS Serverless Application Repository](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsserverlessapplicationrepository.html)  | serverlessrepo | 
|  [AWS Service Catalog](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsservicecatalog.html)  | servicecatalog | 
|  [AWS Cloud Map](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscloudmap.html)  | servicediscovery | 
|  [Service Quotas](https://docs.aws.amazon.com/service-authorization/latest/reference/list_servicequotas.html)  | servicequotas | 
|  [Amazon Simple Email Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonses.html)  | ses | 
|  [AWS Shield](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsshield.html)  | shield | 
|  [AWS Signer](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssigner.html)  | signer | 
|  [AWS SimSpace Weaver](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssimspaceweaver.html)  | simspaceweaver | 
|  [AWS Server Migration Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsservermigrationservice.html)  | sms | 
|  [Amazon Pinpoint SMS および音声サービス](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonpinpointsmsandvoiceservice.html)  | sms-voice | 
|  [AWS Snowball Edge](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssnowball.html)  | snowball | 
|  [Amazon Simple Queue Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsqs.html)  | sqs | 
|  [AWS Systems Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssystemsmanager.html)  | ssm | 
|  [AWS Systems Manager Incident Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssystemsmanagerincidentmanager.html)  | ssm-incidents | 
|  [AWS Systems Manager for SAP](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssystemsmanagerforsap.html)  | ssm-sap | 
|  [AWS Step Functions](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsstepfunctions.html)  | states | 
|  [AWS Security Token Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssecuritytokenservice.html)  | sts | 
|  [Amazon Simple Workflow Service](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsimpleworkflowservice.html)  | swf | 
|  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncloudwatchsynthetics.html)  | synthetics | 
|  [AWS Resource Groups Tagging API](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonresourcegrouptaggingapi.html)  | tag | 
|  [Amazon Textract](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazontextract.html)  | textract | 
|  [Amazon Timestream](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazontimestream.html)  | timestream | 
|  [AWS 通信ネットワークビルダー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awstelconetworkbuilder.html)  | tnb | 
|  [Amazon Transcribe](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazontranscribe.html)  | transcribe | 
|  [AWS Transfer Family](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awstransferfamily.html)  | 転送 | 
|  [Amazon Translate](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazontranslate.html)  | translate | 
|  [Amazon Connect Voice ID](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonconnectvoiceid.html)  | voiceid | 
|  [Amazon VPC Lattice](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonvpclattice.html)  | vpc-lattice | 
|  [AWS WAFV2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awswafv2.html)  | wafv2 | 
|  [AWS Well-Architected Tool](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awswell-architectedtool.html)  | wellarchitected | 
|  [Amazon Connect Wisdom](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonconnectwisdom.html)  | wisdom | 
|  [Amazon WorkLink](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonworklink.html)  | worklink | 
|  [Amazon WorkSpaces](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonworkspaces.html)  | ワークスペース | 
|  [AWS X-Ray](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsx-ray.html)  | xray | 

## アクションの最終アクセス情報をサポートするアクション
<a name="access_policies_last-accessed-action-last-accessed-supported-actions"></a>

次の表は、アクションの最終アクセス情報が入手できるアクションの一覧です。

**重要**  
`iam:UpdateAccountName` アクションは 2026 年 4 月 22 日に廃止されます。2026 年 4 月 22 日以降は、アカウント名の更新アクセスを制御するのは `[account:PutAccountName](https://docs.aws.amazon.com/accounts/latest/reference/API_PutAccountName.html)` アクセス許可のみになります。`account:PutAccountName` アクセス許可を使用するように、アカウント名の更新を制御する[サービスコントロールポリシー](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)を更新することを強くお勧めします。


|  **サービスプレフィックス**  |  **アクション**  | 
| --- | --- | 
| アクセスアナライザー |  access-analyzer:ApplyArchiveRule access-analyzer:CancelPolicyGeneration access-analyzer:CheckAccessNotGranted access-analyzer:CheckNoNewAccess access-analyzer:CheckNoPublicAccess access-analyzer:CreateAccessPreview access-analyzer:CreateAnalyzer access-analyzer:CreateArchiveRule access-analyzer:DeleteAnalyzer access-analyzer:DeleteArchiveRule access-analyzer:GenerateFindingRecommendation access-analyzer:GetAccessPreview access-analyzer:GetAnalyzedResource access-analyzer:GetAnalyzer access-analyzer:GetArchiveRule access-analyzer:GetFinding access-analyzer:GetFindingRecommendation access-analyzer:GetFindingsStatistics access-analyzer:GetGeneratedPolicy access-analyzer:ListAccessPreviewFindings access-analyzer:ListAccessPreviews access-analyzer:ListAnalyzedResources access-analyzer:ListAnalyzers access-analyzer:ListArchiveRules access-analyzer:ListFindings access-analyzer:ListPolicyGenerations access-analyzer:StartPolicyGeneration access-analyzer:StartResourceScan access-analyzer:UpdateAnalyzer access-analyzer:UpdateArchiveRule access-analyzer:UpdateFindings access-analyzer:ValidatePolicy  | 
| アカウント |  account:AcceptPrimaryEmailUpdate account:DeleteAlternateContact account:DisableRegion account:EnableRegion account:GetAccountInformation account:GetAlternateContact account:GetContactInformation account:GetGovCloudAccountInformation account:GetPrimaryEmail account:GetRegionOptStatus account:ListRegions account:PutAccountName account:PutAlternateContact account:PutContactInformation account:StartPrimaryEmailUpdate  | 
| acm |  acm:DeleteCertificate acm:DescribeCertificate acm:ExportCertificate acm:GetAccountConfiguration acm:GetCertificate acm:ImportCertificate acm:ListCertificates acm:PutAccountConfiguration acm:RenewCertificate acm:RequestCertificate acm:ResendValidationEmail acm:UpdateCertificateOptions  | 
| airflow |  airflow:CreateCliToken airflow:CreateEnvironment airflow:CreateWebLoginToken airflow:DeleteEnvironment airflow:GetEnvironment airflow:ListEnvironments airflow:PublishMetrics airflow:UpdateEnvironment  | 
| amplify |  amplify:CreateApp amplify:CreateBackendEnvironment amplify:CreateBranch amplify:CreateDeployment amplify:CreateDomainAssociation amplify:CreateWebHook amplify:DeleteApp amplify:DeleteBackendEnvironment amplify:DeleteBranch amplify:DeleteDomainAssociation amplify:DeleteJob amplify:DeleteWebHook amplify:GenerateAccessLogs amplify:GetApp amplify:GetArtifactUrl amplify:GetBackendEnvironment amplify:GetBranch amplify:GetDomainAssociation amplify:GetJob amplify:GetWebHook amplify:ListApps amplify:ListArtifacts amplify:ListBackendEnvironments amplify:ListBranches amplify:ListDomainAssociations amplify:ListJobs amplify:ListWebHooks amplify:StartDeployment amplify:StartJob amplify:StopJob amplify:UpdateApp amplify:UpdateBranch amplify:UpdateDomainAssociation amplify:UpdateWebHook  | 
| amplifyuibuilder |  amplifyuibuilder:CreateComponent amplifyuibuilder:CreateForm amplifyuibuilder:CreateTheme amplifyuibuilder:DeleteComponent amplifyuibuilder:DeleteForm amplifyuibuilder:DeleteTheme amplifyuibuilder:ExportComponents amplifyuibuilder:ExportThemes amplifyuibuilder:GetCodegenJob amplifyuibuilder:ListCodegenJobs amplifyuibuilder:ListComponents amplifyuibuilder:ListForms amplifyuibuilder:ListThemes amplifyuibuilder:ResetMetadataFlag amplifyuibuilder:StartCodegenJob amplifyuibuilder:UpdateComponent amplifyuibuilder:UpdateForm amplifyuibuilder:UpdateTheme  | 
| app-integrations |  app-integrations:CreateApplication app-integrations:CreateDataIntegration app-integrations:CreateDataIntegrationAssociation app-integrations:CreateEventIntegration app-integrations:DeleteApplication app-integrations:DeleteDataIntegration app-integrations:DeleteEventIntegration app-integrations:GetApplication app-integrations:GetDataIntegration app-integrations:GetEventIntegration app-integrations:ListApplicationAssociations app-integrations:ListApplications app-integrations:ListDataIntegrationAssociations app-integrations:ListDataIntegrations app-integrations:ListEventIntegrationAssociations app-integrations:ListEventIntegrations app-integrations:UpdateApplication app-integrations:UpdateDataIntegration app-integrations:UpdateDataIntegrationAssociation app-integrations:UpdateEventIntegration  | 
| appconfig |  appconfig:CreateApplication appconfig:CreateConfigurationProfile appconfig:CreateDeploymentStrategy appconfig:CreateEnvironment appconfig:CreateExtension appconfig:CreateExtensionAssociation appconfig:CreateHostedConfigurationVersion appconfig:DeleteApplication appconfig:DeleteConfigurationProfile appconfig:DeleteDeploymentStrategy appconfig:DeleteEnvironment appconfig:DeleteExtension appconfig:DeleteExtensionAssociation appconfig:DeleteHostedConfigurationVersion appconfig:GetAccountSettings appconfig:GetApplication appconfig:GetConfiguration appconfig:GetConfigurationProfile appconfig:GetDeployment appconfig:GetDeploymentStrategy appconfig:GetEnvironment appconfig:GetExtension appconfig:GetExtensionAssociation appconfig:GetHostedConfigurationVersion appconfig:ListApplications appconfig:ListConfigurationProfiles appconfig:ListDeploymentStrategies appconfig:ListDeployments appconfig:ListEnvironments appconfig:ListExtensionAssociations appconfig:ListExtensions appconfig:ListHostedConfigurationVersions appconfig:StartDeployment appconfig:StopDeployment appconfig:UpdateAccountSettings appconfig:UpdateApplication appconfig:UpdateConfigurationProfile appconfig:UpdateDeploymentStrategy appconfig:UpdateEnvironment appconfig:UpdateExtension appconfig:UpdateExtensionAssociation appconfig:ValidateConfiguration  | 
| appflow |  appflow:CancelFlowExecutions appflow:CreateConnectorProfile appflow:CreateFlow appflow:DeleteConnectorProfile appflow:DeleteFlow appflow:DescribeConnector appflow:DescribeConnectorEntity appflow:DescribeConnectorProfiles appflow:DescribeConnectors appflow:DescribeFlow appflow:DescribeFlowExecutionRecords appflow:ListConnectorEntities appflow:ListConnectors appflow:ListFlows appflow:RegisterConnector appflow:ResetConnectorMetadataCache appflow:StartFlow appflow:StopFlow appflow:UnRegisterConnector appflow:UpdateConnectorProfile appflow:UpdateConnectorRegistration appflow:UpdateFlow  | 
| applicationinsights |  applicationinsights:AddWorkload applicationinsights:CreateApplication applicationinsights:CreateComponent applicationinsights:CreateLogPattern applicationinsights:DeleteApplication applicationinsights:DeleteComponent applicationinsights:DeleteLogPattern applicationinsights:DescribeApplication applicationinsights:DescribeComponent applicationinsights:DescribeComponentConfiguration applicationinsights:DescribeComponentConfigurationRecommendation applicationinsights:DescribeLogPattern applicationinsights:DescribeObservation applicationinsights:DescribeProblem applicationinsights:DescribeProblemObservations applicationinsights:DescribeWorkload applicationinsights:ListApplications applicationinsights:ListComponents applicationinsights:ListConfigurationHistory applicationinsights:ListLogPatternSets applicationinsights:ListLogPatterns applicationinsights:ListProblems applicationinsights:ListWorkloads applicationinsights:RemoveWorkload applicationinsights:UpdateApplication applicationinsights:UpdateComponent applicationinsights:UpdateComponentConfiguration applicationinsights:UpdateLogPattern applicationinsights:UpdateWorkload  | 
| appmesh |  appmesh:CreateGatewayRoute appmesh:CreateMesh appmesh:CreateRoute appmesh:CreateVirtualGateway appmesh:CreateVirtualNode appmesh:CreateVirtualRouter appmesh:CreateVirtualService appmesh:DeleteGatewayRoute appmesh:DeleteMesh appmesh:DeleteRoute appmesh:DeleteVirtualGateway appmesh:DeleteVirtualNode appmesh:DeleteVirtualRouter appmesh:DeleteVirtualService appmesh:DescribeGatewayRoute appmesh:DescribeMesh appmesh:DescribeRoute appmesh:DescribeVirtualGateway appmesh:DescribeVirtualNode appmesh:DescribeVirtualRouter appmesh:DescribeVirtualService appmesh:ListGatewayRoutes appmesh:ListMeshes appmesh:ListRoutes appmesh:ListVirtualGateways appmesh:ListVirtualNodes appmesh:ListVirtualRouters appmesh:ListVirtualServices appmesh:StreamAggregatedResources appmesh:UpdateGatewayRoute appmesh:UpdateMesh appmesh:UpdateRoute appmesh:UpdateVirtualGateway appmesh:UpdateVirtualNode appmesh:UpdateVirtualRouter appmesh:UpdateVirtualService  | 
| appstream |  appstream:AssociateAppBlockBuilderAppBlock appstream:AssociateApplicationFleet appstream:AssociateApplicationToEntitlement appstream:AssociateFleet appstream:AssociateSoftwareToImageBuilder appstream:BatchAssociateUserStack appstream:BatchDisassociateUserStack appstream:CopyImage appstream:CreateAppBlock appstream:CreateAppBlockBuilder appstream:CreateAppBlockBuilderStreamingURL appstream:CreateApplication appstream:CreateDirectoryConfig appstream:CreateEntitlement appstream:CreateFleet appstream:CreateImageBuilder appstream:CreateImageBuilderStreamingURL appstream:CreateStack appstream:CreateStreamingURL appstream:CreateThemeForStack appstream:CreateUpdatedImage appstream:CreateUsageReportSubscription appstream:CreateUser appstream:DeleteAppBlock appstream:DeleteAppBlockBuilder appstream:DeleteApplication appstream:DeleteDirectoryConfig appstream:DeleteEntitlement appstream:DeleteFleet appstream:DeleteImage appstream:DeleteImageBuilder appstream:DeleteImagePermissions appstream:DeleteStack appstream:DeleteThemeForStack appstream:DeleteUsageReportSubscription appstream:DeleteUser appstream:DescribeAppBlockBuilderAppBlockAssociations appstream:DescribeAppBlockBuilders appstream:DescribeAppBlocks appstream:DescribeAppLicenseUsage appstream:DescribeApplicationFleetAssociations appstream:DescribeApplications appstream:DescribeDirectoryConfigs appstream:DescribeEntitlements appstream:DescribeFleets appstream:DescribeImageBuilders appstream:DescribeImagePermissions appstream:DescribeImages appstream:DescribeSessions appstream:DescribeStacks appstream:DescribeThemeForStack appstream:DescribeUsageReportSubscriptions appstream:DescribeUserStackAssociations appstream:DescribeUsers appstream:DisableUser appstream:DisassociateAppBlockBuilderAppBlock appstream:DisassociateApplicationFleet appstream:DisassociateApplicationFromEntitlement appstream:DisassociateFleet appstream:DisassociateSoftwareFromImageBuilder appstream:EnableUser appstream:ExpireSession appstream:GetExportImageTask appstream:ListAssociatedFleets appstream:ListAssociatedStacks appstream:ListEntitledApplications appstream:ListExportImageTasks appstream:StartAppBlockBuilder appstream:StartFleet appstream:StartImageBuilder appstream:StartSoftwareDeploymentToImageBuilder appstream:StopAppBlockBuilder appstream:StopFleet appstream:StopImageBuilder appstream:UpdateAppBlockBuilder appstream:UpdateApplication appstream:UpdateDirectoryConfig appstream:UpdateEntitlement appstream:UpdateFleet appstream:UpdateImagePermissions appstream:UpdateStack appstream:UpdateThemeForStack  | 
| appsync |  appsync:AssociateApi appsync:AssociateMergedGraphqlApi appsync:AssociateSourceGraphqlApi appsync:AssociateWebACL appsync:CreateApi appsync:CreateApiCache appsync:CreateApiKey appsync:CreateChannelNamespace appsync:CreateDataSource appsync:CreateDomainName appsync:CreateFunction appsync:CreateGraphqlApi appsync:CreateResolver appsync:CreateType appsync:DeleteApi appsync:DeleteApiCache appsync:DeleteApiKey appsync:DeleteChannelNamespace appsync:DeleteDataSource appsync:DeleteDomainName appsync:DeleteFunction appsync:DeleteGraphqlApi appsync:DeleteResolver appsync:DeleteType appsync:DisassociateApi appsync:DisassociateMergedGraphqlApi appsync:DisassociateSourceGraphqlApi appsync:DisassociateWebACL appsync:EvaluateCode appsync:EvaluateMappingTemplate appsync:FlushApiCache appsync:GetApi appsync:GetApiAssociation appsync:GetApiCache appsync:GetChannelNamespace appsync:GetDataSource appsync:GetDataSourceIntrospection appsync:GetDomainName appsync:GetFunction appsync:GetGraphqlApi appsync:GetGraphqlApiEnvironmentVariables appsync:GetIntrospectionSchema appsync:GetResolver appsync:GetSchemaCreationStatus appsync:GetSourceApiAssociation appsync:GetType appsync:GetWebACLForResource appsync:ListApiKeys appsync:ListApis appsync:ListChannelNamespaces appsync:ListDataSources appsync:ListDomainNames appsync:ListFunctions appsync:ListGraphqlApis appsync:ListResolvers appsync:ListResolversByFunction appsync:ListResourcesForWebACL appsync:ListSourceApiAssociations appsync:ListTypes appsync:ListTypesByAssociation appsync:PutGraphqlApiEnvironmentVariables appsync:StartDataSourceIntrospection appsync:StartSchemaCreation appsync:StartSchemaMerge appsync:UpdateApi appsync:UpdateApiCache appsync:UpdateApiKey appsync:UpdateChannelNamespace appsync:UpdateDataSource appsync:UpdateDomainName appsync:UpdateFunction appsync:UpdateGraphqlApi appsync:UpdateResolver appsync:UpdateSourceApiAssociation appsync:UpdateType  | 
| aps |  aps:CreateAlertManagerDefinition aps:CreateAnomalyDetector aps:CreateLoggingConfiguration aps:CreateQueryLoggingConfiguration aps:CreateRuleGroupsNamespace aps:CreateWorkspace aps:DeleteAlertManagerDefinition aps:DeleteAnomalyDetector aps:DeleteLoggingConfiguration aps:DeleteQueryLoggingConfiguration aps:DeleteResourcePolicy aps:DeleteRuleGroupsNamespace aps:DeleteScraper aps:DeleteScraperLoggingConfiguration aps:DeleteWorkspace aps:DescribeAlertManagerDefinition aps:DescribeAnomalyDetector aps:DescribeLoggingConfiguration aps:DescribeQueryLoggingConfiguration aps:DescribeResourcePolicy aps:DescribeRuleGroupsNamespace aps:DescribeScraper aps:DescribeScraperLoggingConfiguration aps:DescribeWorkspace aps:DescribeWorkspaceConfiguration aps:GetDefaultScraperConfiguration aps:ListAnomalyDetectors aps:ListRuleGroupsNamespaces aps:ListScrapers aps:ListWorkspaces aps:PutAlertManagerDefinition aps:PutAnomalyDetector aps:PutResourcePolicy aps:PutRuleGroupsNamespace aps:UpdateLoggingConfiguration aps:UpdateQueryLoggingConfiguration aps:UpdateScraper aps:UpdateScraperLoggingConfiguration aps:UpdateWorkspaceAlias aps:UpdateWorkspaceConfiguration  | 
| athena |  athena:BatchGetNamedQuery athena:BatchGetPreparedStatement athena:BatchGetQueryExecution athena:CancelCapacityReservation athena:CreateCapacityReservation athena:CreateDataCatalog athena:CreateNamedQuery athena:CreateNotebook athena:CreatePreparedStatement athena:CreatePresignedNotebookUrl athena:CreateWorkGroup athena:DeleteCapacityReservation athena:DeleteDataCatalog athena:DeleteNamedQuery athena:DeleteNotebook athena:DeletePreparedStatement athena:DeleteWorkGroup athena:ExportNotebook athena:GetCalculationExecution athena:GetCalculationExecutionCode athena:GetCalculationExecutionStatus athena:GetCapacityAssignmentConfiguration athena:GetCapacityReservation athena:GetDataCatalog athena:GetDatabase athena:GetNamedQuery athena:GetNotebookMetadata athena:GetPreparedStatement athena:GetQueryExecution athena:GetQueryResults athena:GetQueryResultsStream athena:GetQueryRuntimeStatistics athena:GetResourceDashboard athena:GetSession athena:GetSessionEndpoint athena:GetSessionStatus athena:GetTableMetadata athena:GetWorkGroup athena:ImportNotebook athena:ListApplicationDPUSizes athena:ListCalculationExecutions athena:ListCapacityReservations athena:ListDataCatalogs athena:ListDatabases athena:ListEngineVersions athena:ListExecutors athena:ListNamedQueries athena:ListNotebookMetadata athena:ListNotebookSessions athena:ListPreparedStatements athena:ListQueryExecutions athena:ListSessions athena:ListTableMetadata athena:ListWorkGroups athena:PutCapacityAssignmentConfiguration athena:StartCalculationExecution athena:StartQueryExecution athena:StartSession athena:StopCalculationExecution athena:StopQueryExecution athena:TerminateSession athena:UpdateCapacityReservation athena:UpdateDataCatalog athena:UpdateNamedQuery athena:UpdateNotebook athena:UpdateNotebookMetadata athena:UpdatePreparedStatement athena:UpdateWorkGroup  | 
| auditmanager |  auditmanager:AssociateAssessmentReportEvidenceFolder auditmanager:BatchAssociateAssessmentReportEvidence auditmanager:BatchCreateDelegationByAssessment auditmanager:BatchDeleteDelegationByAssessment auditmanager:BatchDisassociateAssessmentReportEvidence auditmanager:BatchImportEvidenceToAssessmentControl auditmanager:CreateAssessment auditmanager:CreateAssessmentFramework auditmanager:CreateAssessmentReport auditmanager:CreateControl auditmanager:DeleteAssessment auditmanager:DeleteAssessmentFramework auditmanager:DeleteAssessmentFrameworkShare auditmanager:DeleteAssessmentReport auditmanager:DeleteControl auditmanager:DeregisterAccount auditmanager:DeregisterOrganizationAdminAccount auditmanager:DisassociateAssessmentReportEvidenceFolder auditmanager:GetAccountStatus auditmanager:GetAssessment auditmanager:GetAssessmentFramework auditmanager:GetAssessmentReportUrl auditmanager:GetChangeLogs auditmanager:GetControl auditmanager:GetDelegations auditmanager:GetEvidence auditmanager:GetEvidenceByEvidenceFolder auditmanager:GetEvidenceFileUploadUrl auditmanager:GetEvidenceFolder auditmanager:GetEvidenceFoldersByAssessment auditmanager:GetEvidenceFoldersByAssessmentControl auditmanager:GetInsights auditmanager:GetInsightsByAssessment auditmanager:GetOrganizationAdminAccount auditmanager:GetServicesInScope auditmanager:GetSettings auditmanager:ListAssessmentControlInsightsByControlDomain auditmanager:ListAssessmentFrameworkShareRequests auditmanager:ListAssessmentFrameworks auditmanager:ListAssessmentReports auditmanager:ListAssessments auditmanager:ListControlDomainInsights auditmanager:ListControlDomainInsightsByAssessment auditmanager:ListControlInsightsByControlDomain auditmanager:ListControls auditmanager:ListKeywordsForDataSource auditmanager:ListNotifications auditmanager:RegisterAccount auditmanager:RegisterOrganizationAdminAccount auditmanager:StartAssessmentFrameworkShare auditmanager:UpdateAssessment auditmanager:UpdateAssessmentControl auditmanager:UpdateAssessmentControlSetStatus auditmanager:UpdateAssessmentFramework auditmanager:UpdateAssessmentFrameworkShare auditmanager:UpdateAssessmentStatus auditmanager:UpdateControl auditmanager:UpdateSettings auditmanager:ValidateAssessmentReportIntegrity  | 
| autoscaling |  autoscaling:AttachInstances autoscaling:AttachLoadBalancerTargetGroups autoscaling:AttachLoadBalancers autoscaling:AttachTrafficSources autoscaling:BatchDeleteScheduledAction autoscaling:BatchPutScheduledUpdateGroupAction autoscaling:CancelInstanceRefresh autoscaling:CompleteLifecycleAction autoscaling:CreateAutoScalingGroup autoscaling:CreateLaunchConfiguration autoscaling:DeleteAutoScalingGroup autoscaling:DeleteLaunchConfiguration autoscaling:DeleteLifecycleHook autoscaling:DeleteNotificationConfiguration autoscaling:DeletePolicy autoscaling:DeleteScheduledAction autoscaling:DeleteWarmPool autoscaling:DescribeAccountLimits autoscaling:DescribeAdjustmentTypes autoscaling:DescribeAutoScalingGroups autoscaling:DescribeAutoScalingInstances autoscaling:DescribeAutoScalingNotificationTypes autoscaling:DescribeInstanceRefreshes autoscaling:DescribeLaunchConfigurations autoscaling:DescribeLifecycleHookTypes autoscaling:DescribeLifecycleHooks autoscaling:DescribeLoadBalancerTargetGroups autoscaling:DescribeLoadBalancers autoscaling:DescribeMetricCollectionTypes autoscaling:DescribeNotificationConfigurations autoscaling:DescribePolicies autoscaling:DescribeScalingActivities autoscaling:DescribeScalingProcessTypes autoscaling:DescribeScheduledActions autoscaling:DescribeTerminationPolicyTypes autoscaling:DescribeTrafficSources autoscaling:DescribeWarmPool autoscaling:DetachInstances autoscaling:DetachLoadBalancerTargetGroups autoscaling:DetachLoadBalancers autoscaling:DetachTrafficSources autoscaling:DisableMetricsCollection autoscaling:EnableMetricsCollection autoscaling:EnterStandby autoscaling:ExecutePolicy autoscaling:ExitStandby autoscaling:GetPredictiveScalingForecast autoscaling:PutLifecycleHook autoscaling:PutNotificationConfiguration autoscaling:PutScalingPolicy autoscaling:PutScheduledUpdateGroupAction autoscaling:PutWarmPool autoscaling:RecordLifecycleActionHeartbeat autoscaling:ResumeProcesses autoscaling:RollbackInstanceRefresh autoscaling:SetDesiredCapacity autoscaling:SetInstanceHealth autoscaling:SetInstanceProtection autoscaling:StartInstanceRefresh autoscaling:SuspendProcesses autoscaling:TerminateInstanceInAutoScalingGroup autoscaling:UpdateAutoScalingGroup  | 
| aws-marketplace |  aws-marketplace:GetEntitlements  | 
| バックアップ |  backup:CancelLegalHold backup:CreateBackupPlan backup:CreateBackupSelection backup:CreateBackupVault backup:CreateFramework backup:CreateLegalHold backup:CreateLogicallyAirGappedBackupVault backup:CreateReportPlan backup:CreateRestoreAccessBackupVault backup:CreateRestoreTestingPlan backup:CreateRestoreTestingSelection backup:CreateTieringConfiguration backup:DeleteBackupPlan backup:DeleteBackupSelection backup:DeleteBackupVault backup:DeleteBackupVaultAccessPolicy backup:DeleteBackupVaultLockConfiguration backup:DeleteBackupVaultNotifications backup:DeleteFramework backup:DeleteRecoveryPoint backup:DeleteReportPlan backup:DeleteRestoreTestingPlan backup:DeleteRestoreTestingSelection backup:DeleteTieringConfiguration backup:DescribeBackupJob backup:DescribeBackupVault backup:DescribeCopyJob backup:DescribeFramework backup:DescribeGlobalSettings backup:DescribeProtectedResource backup:DescribeRecoveryPoint backup:DescribeRegionSettings backup:DescribeReportJob backup:DescribeReportPlan backup:DescribeRestoreJob backup:DescribeScanJob backup:DisassociateRecoveryPoint backup:DisassociateRecoveryPointFromParent backup:ExportBackupPlanTemplate backup:GetBackupPlan backup:GetBackupPlanFromJSON backup:GetBackupPlanFromTemplate backup:GetBackupSelection backup:GetBackupVaultAccessPolicy backup:GetBackupVaultNotifications backup:GetLegalHold backup:GetRecoveryPointRestoreMetadata backup:GetRestoreJobMetadata backup:GetRestoreTestingInferredMetadata backup:GetRestoreTestingPlan backup:GetRestoreTestingSelection backup:GetSupportedResourceTypes backup:GetTieringConfiguration backup:ListBackupJobSummaries backup:ListBackupJobs backup:ListBackupPlanTemplates backup:ListBackupPlanVersions backup:ListBackupPlans backup:ListBackupSelections backup:ListBackupVaults backup:ListCopyJobSummaries backup:ListCopyJobs backup:ListFrameworks backup:ListIndexedRecoveryPoints backup:ListLegalHolds backup:ListProtectedResources backup:ListRecoveryPointsByBackupVault backup:ListRecoveryPointsByLegalHold backup:ListRecoveryPointsByResource backup:ListReportJobs backup:ListReportPlans backup:ListRestoreAccessBackupVaults backup:ListRestoreJobSummaries backup:ListRestoreJobs backup:ListRestoreJobsByProtectedResource backup:ListRestoreTestingPlans backup:ListRestoreTestingSelections backup:ListScanJobSummaries backup:ListScanJobs backup:ListTieringConfigurations backup:PutBackupVaultAccessPolicy backup:PutBackupVaultLockConfiguration backup:PutBackupVaultNotifications backup:PutRestoreValidationResult backup:StartBackupJob backup:StartCopyJob backup:StartReportJob backup:StartRestoreJob backup:StopBackupJob backup:UpdateBackupPlan backup:UpdateFramework backup:UpdateGlobalSettings backup:UpdateRecoveryPointLifecycle backup:UpdateRegionSettings backup:UpdateReportPlan backup:UpdateRestoreTestingPlan backup:UpdateRestoreTestingSelection backup:UpdateTieringConfiguration  | 
| バッチ |  batch:CancelJob batch:CreateComputeEnvironment batch:CreateConsumableResource batch:CreateJobQueue batch:CreateSchedulingPolicy batch:CreateServiceEnvironment batch:DeleteComputeEnvironment batch:DeleteConsumableResource batch:DeleteJobQueue batch:DeleteSchedulingPolicy batch:DeleteServiceEnvironment batch:DeregisterJobDefinition batch:DescribeComputeEnvironments batch:DescribeConsumableResource batch:DescribeJobDefinitions batch:DescribeJobQueues batch:DescribeJobs batch:DescribeSchedulingPolicies batch:DescribeServiceEnvironments batch:DescribeServiceJob batch:GetJobQueueSnapshot batch:ListConsumableResources batch:ListJobs batch:ListJobsByConsumableResource batch:ListSchedulingPolicies batch:ListServiceJobs batch:RegisterJobDefinition batch:SubmitJob batch:SubmitServiceJob batch:TerminateJob batch:TerminateServiceJob batch:UpdateComputeEnvironment batch:UpdateConsumableResource batch:UpdateJobQueue batch:UpdateSchedulingPolicy batch:UpdateServiceEnvironment  | 
| braket |  braket:CancelJob braket:CancelQuantumTask braket:CreateJob braket:CreateQuantumTask braket:CreateSpendingLimit braket:GetDevice braket:GetJob braket:GetQuantumTask braket:SearchDevices braket:SearchJobs braket:SearchQuantumTasks braket:SearchSpendingLimits  | 
| 予算 |  budgets:CreateBudgetAction budgets:DeleteBudgetAction budgets:DescribeBudgetAction budgets:DescribeBudgetActionHistories budgets:DescribeBudgetActionsForAccount budgets:DescribeBudgetActionsForBudget budgets:ExecuteBudgetAction budgets:ModifyBudget budgets:UpdateBudgetAction budgets:ViewBudget  | 
| cloud9 |  cloud9:CreateEnvironmentEC2 cloud9:CreateEnvironmentMembership cloud9:DeleteEnvironment cloud9:DeleteEnvironmentMembership cloud9:DescribeEnvironmentMemberships cloud9:DescribeEnvironmentStatus cloud9:DescribeEnvironments cloud9:ListEnvironments cloud9:UpdateEnvironment cloud9:UpdateEnvironmentMembership  | 
| cloudformation |  cloudformation:BatchDescribeTypeConfigurations cloudformation:CancelUpdateStack cloudformation:ContinueUpdateRollback cloudformation:CreateChangeSet cloudformation:CreateGeneratedTemplate cloudformation:CreateStack cloudformation:CreateStackInstances cloudformation:CreateStackSet cloudformation:DeactivateType cloudformation:DeleteChangeSet cloudformation:DeleteGeneratedTemplate cloudformation:DeleteStack cloudformation:DeleteStackInstances cloudformation:DeleteStackSet cloudformation:DeregisterType cloudformation:DescribeAccountLimits cloudformation:DescribeChangeSet cloudformation:DescribeChangeSetHooks cloudformation:DescribeEvents cloudformation:DescribeGeneratedTemplate cloudformation:DescribeOrganizationsAccess cloudformation:DescribePublisher cloudformation:DescribeResourceScan cloudformation:DescribeStackDriftDetectionStatus cloudformation:DescribeStackEvents cloudformation:DescribeStackInstance cloudformation:DescribeStackResource cloudformation:DescribeStackResourceDrifts cloudformation:DescribeStackResources cloudformation:DescribeStackSet cloudformation:DescribeStackSetOperation cloudformation:DescribeStacks cloudformation:DescribeType cloudformation:DescribeTypeRegistration cloudformation:DetectStackDrift cloudformation:DetectStackResourceDrift cloudformation:DetectStackSetDrift cloudformation:EstimateTemplateCost cloudformation:ExecuteChangeSet cloudformation:GetGeneratedTemplate cloudformation:GetHookResult cloudformation:GetStackPolicy cloudformation:GetTemplate cloudformation:GetTemplateSummary cloudformation:ImportStacksToStackSet cloudformation:ListChangeSets cloudformation:ListExports cloudformation:ListGeneratedTemplates cloudformation:ListHookResults cloudformation:ListImports cloudformation:ListResourceScanRelatedResources cloudformation:ListResourceScanResources cloudformation:ListResourceScans cloudformation:ListStackInstanceResourceDrifts cloudformation:ListStackInstances cloudformation:ListStackRefactors cloudformation:ListStackResources cloudformation:ListStackSetAutoDeploymentTargets cloudformation:ListStackSetOperationResults cloudformation:ListStackSetOperations cloudformation:ListStackSets cloudformation:ListTypeRegistrations cloudformation:ListTypeVersions cloudformation:ListTypes cloudformation:PublishType cloudformation:RecordHandlerProgress cloudformation:RegisterPublisher cloudformation:RegisterType cloudformation:RollbackStack cloudformation:SetStackPolicy cloudformation:SetTypeConfiguration cloudformation:SetTypeDefaultVersion cloudformation:SignalResource cloudformation:StartResourceScan cloudformation:StopStackSetOperation cloudformation:TestType cloudformation:UpdateGeneratedTemplate cloudformation:UpdateStack cloudformation:UpdateStackInstances cloudformation:UpdateStackSet cloudformation:UpdateTerminationProtection cloudformation:ValidateTemplate  | 
| cloudfront |  cloudfront:AssociateAlias cloudfront:AssociateDistributionTenantWebACL cloudfront:AssociateDistributionWebACL cloudfront:CreateCachePolicy cloudfront:CreateCloudFrontOriginAccessIdentity cloudfront:CreateConnectionFunction cloudfront:CreateContinuousDeploymentPolicy cloudfront:CreateDistributionTenant cloudfront:CreateFieldLevelEncryptionConfig cloudfront:CreateFieldLevelEncryptionProfile cloudfront:CreateFunction cloudfront:CreateInvalidation cloudfront:CreateKeyGroup cloudfront:CreateKeyValueStore cloudfront:CreateMonitoringSubscription cloudfront:CreateOriginAccessControl cloudfront:CreateOriginRequestPolicy cloudfront:CreatePublicKey cloudfront:CreateRealtimeLogConfig cloudfront:CreateResponseHeadersPolicy cloudfront:CreateTrustStore cloudfront:DeleteAnycastIpList cloudfront:DeleteCachePolicy cloudfront:DeleteCloudFrontOriginAccessIdentity cloudfront:DeleteConnectionFunction cloudfront:DeleteConnectionGroup cloudfront:DeleteContinuousDeploymentPolicy cloudfront:DeleteDistribution cloudfront:DeleteDistributionTenant cloudfront:DeleteFieldLevelEncryptionConfig cloudfront:DeleteFieldLevelEncryptionProfile cloudfront:DeleteFunction cloudfront:DeleteKeyGroup cloudfront:DeleteKeyValueStore cloudfront:DeleteMonitoringSubscription cloudfront:DeleteOriginAccessControl cloudfront:DeleteOriginRequestPolicy cloudfront:DeletePublicKey cloudfront:DeleteRealtimeLogConfig cloudfront:DeleteResponseHeadersPolicy cloudfront:DeleteStreamingDistribution cloudfront:DeleteTrustStore cloudfront:DeleteVpcOrigin cloudfront:DescribeFunction cloudfront:DescribeKeyValueStore cloudfront:DisassociateDistributionTenantWebACL cloudfront:DisassociateDistributionWebACL cloudfront:GetAnycastIpList cloudfront:GetCachePolicy cloudfront:GetCachePolicyConfig cloudfront:GetCloudFrontOriginAccessIdentity cloudfront:GetCloudFrontOriginAccessIdentityConfig cloudfront:GetContinuousDeploymentPolicy cloudfront:GetContinuousDeploymentPolicyConfig cloudfront:GetDistributionConfig cloudfront:GetFieldLevelEncryption cloudfront:GetFieldLevelEncryptionConfig cloudfront:GetFieldLevelEncryptionProfile cloudfront:GetFieldLevelEncryptionProfileConfig cloudfront:GetFunction cloudfront:GetInvalidation cloudfront:GetInvalidationForDistributionTenant cloudfront:GetKeyGroup cloudfront:GetKeyGroupConfig cloudfront:GetMonitoringSubscription cloudfront:GetOriginAccessControl cloudfront:GetOriginAccessControlConfig cloudfront:GetOriginRequestPolicy cloudfront:GetOriginRequestPolicyConfig cloudfront:GetPublicKey cloudfront:GetPublicKeyConfig cloudfront:GetRealtimeLogConfig cloudfront:GetResponseHeadersPolicy cloudfront:GetResponseHeadersPolicyConfig cloudfront:GetStreamingDistribution cloudfront:GetStreamingDistributionConfig cloudfront:GetVpcOrigin cloudfront:ListAnycastIpLists cloudfront:ListCachePolicies cloudfront:ListCloudFrontOriginAccessIdentities cloudfront:ListConflictingAliases cloudfront:ListConnectionFunctions cloudfront:ListConnectionGroups cloudfront:ListContinuousDeploymentPolicies cloudfront:ListDistributionTenants cloudfront:ListDistributionTenantsByCustomization cloudfront:ListDistributions cloudfront:ListDistributionsByAnycastIpListId cloudfront:ListDistributionsByCachePolicyId cloudfront:ListDistributionsByConnectionMode cloudfront:ListDistributionsByKeyGroup cloudfront:ListDistributionsByOriginRequestPolicyId cloudfront:ListDistributionsByRealtimeLogConfig cloudfront:ListDistributionsByResponseHeadersPolicyId cloudfront:ListDistributionsByVpcOriginId cloudfront:ListDistributionsByWebACLId cloudfront:ListFieldLevelEncryptionConfigs cloudfront:ListFieldLevelEncryptionProfiles cloudfront:ListFunctions cloudfront:ListInvalidations cloudfront:ListInvalidationsForDistributionTenant cloudfront:ListKeyGroups cloudfront:ListKeyValueStores cloudfront:ListOriginAccessControls cloudfront:ListOriginRequestPolicies cloudfront:ListPublicKeys cloudfront:ListRealtimeLogConfigs cloudfront:ListResponseHeadersPolicies cloudfront:ListStreamingDistributions cloudfront:ListTrustStores cloudfront:PublishConnectionFunction cloudfront:PublishFunction cloudfront:TestConnectionFunction cloudfront:TestFunction cloudfront:UpdateAnycastIpList cloudfront:UpdateCachePolicy cloudfront:UpdateCloudFrontOriginAccessIdentity cloudfront:UpdateConnectionFunction cloudfront:UpdateConnectionGroup cloudfront:UpdateContinuousDeploymentPolicy cloudfront:UpdateDistribution cloudfront:UpdateDistributionTenant cloudfront:UpdateFieldLevelEncryptionConfig cloudfront:UpdateFieldLevelEncryptionProfile cloudfront:UpdateFunction cloudfront:UpdateKeyGroup cloudfront:UpdateKeyValueStore cloudfront:UpdateOriginAccessControl cloudfront:UpdateOriginRequestPolicy cloudfront:UpdatePublicKey cloudfront:UpdateRealtimeLogConfig cloudfront:UpdateResponseHeadersPolicy cloudfront:UpdateTrustStore  | 
| cloudhsm |  cloudhsm:CreateHsm cloudhsm:DeleteBackup cloudhsm:DeleteHsm cloudhsm:DeleteResourcePolicy cloudhsm:DescribeBackups cloudhsm:DescribeClusters cloudhsm:GetResourcePolicy cloudhsm:InitializeCluster cloudhsm:ModifyBackupAttributes cloudhsm:ModifyCluster cloudhsm:PutResourcePolicy cloudhsm:RestoreBackup  | 
| cloudsearch |  cloudsearch:BuildSuggesters cloudsearch:CreateDomain cloudsearch:DefineAnalysisScheme cloudsearch:DefineExpression cloudsearch:DefineIndexField cloudsearch:DefineSuggester cloudsearch:DeleteAnalysisScheme cloudsearch:DeleteDomain cloudsearch:DeleteExpression cloudsearch:DeleteIndexField cloudsearch:DeleteSuggester cloudsearch:DescribeAnalysisSchemes cloudsearch:DescribeAvailabilityOptions cloudsearch:DescribeDomainEndpointOptions cloudsearch:DescribeDomains cloudsearch:DescribeExpressions cloudsearch:DescribeIndexFields cloudsearch:DescribeScalingParameters cloudsearch:DescribeServiceAccessPolicies cloudsearch:DescribeSuggesters cloudsearch:IndexDocuments cloudsearch:ListDomainNames cloudsearch:UpdateAvailabilityOptions cloudsearch:UpdateDomainEndpointOptions cloudsearch:UpdateScalingParameters cloudsearch:UpdateServiceAccessPolicies  | 
| CloudTrail |  cloudtrail:CancelQuery cloudtrail:CreateChannel cloudtrail:CreateDashboard cloudtrail:CreateEventDataStore cloudtrail:CreateTrail cloudtrail:DeleteChannel cloudtrail:DeleteDashboard cloudtrail:DeleteEventDataStore cloudtrail:DeleteResourcePolicy cloudtrail:DeleteTrail cloudtrail:DeregisterOrganizationDelegatedAdmin cloudtrail:DescribeQuery cloudtrail:DescribeTrails cloudtrail:DisableFederation cloudtrail:GenerateQuery cloudtrail:GetChannel cloudtrail:GetDashboard cloudtrail:GetEventConfiguration cloudtrail:GetEventDataStore cloudtrail:GetEventDataStoreData cloudtrail:GetEventSelectors cloudtrail:GetImport cloudtrail:GetInsightSelectors cloudtrail:GetResourcePolicy cloudtrail:GetTrail cloudtrail:GetTrailStatus cloudtrail:ListChannels cloudtrail:ListDashboards cloudtrail:ListEventDataStores cloudtrail:ListImportFailures cloudtrail:ListImports cloudtrail:ListInsightsData cloudtrail:ListPublicKeys cloudtrail:ListQueries cloudtrail:ListTrails cloudtrail:LookupEvents cloudtrail:PutEventConfiguration cloudtrail:PutEventSelectors cloudtrail:PutInsightSelectors cloudtrail:PutResourcePolicy cloudtrail:RegisterOrganizationDelegatedAdmin cloudtrail:RestoreEventDataStore cloudtrail:SearchSampleQueries cloudtrail:StartEventDataStoreIngestion cloudtrail:StartImport cloudtrail:StartLogging cloudtrail:StartQuery cloudtrail:StopEventDataStoreIngestion cloudtrail:StopImport cloudtrail:StopLogging cloudtrail:UpdateChannel cloudtrail:UpdateDashboard cloudtrail:UpdateEventDataStore cloudtrail:UpdateTrail  | 
| cloudwatch |  cloudwatch:DeleteAlarms cloudwatch:DeleteAnomalyDetector [cloudwatch:DeleteDashboards] cloudwatch:DeleteInsightRules cloudwatch:DeleteMetricStream cloudwatch:DescribeAlarmHistory cloudwatch:DescribeAlarms cloudwatch:DescribeAlarmsForMetric cloudwatch:DescribeAnomalyDetectors cloudwatch:DescribeInsightRules cloudwatch:DisableAlarmActions cloudwatch:DisableInsightRules cloudwatch:EnableAlarmActions cloudwatch:EnableInsightRules cloudwatch:GetDashboard cloudwatch:GetInsightRuleReport cloudwatch:GetMetricStatistics cloudwatch:GetMetricStream cloudwatch:ListDashboards cloudwatch:ListManagedInsightRules cloudwatch:ListMetricStreams cloudwatch:PutAnomalyDetector cloudwatch:PutCompositeAlarm cloudwatch:PutDashboard cloudwatch:PutInsightRule cloudwatch:PutManagedInsightRules cloudwatch:PutMetricAlarm cloudwatch:PutMetricStream cloudwatch:SetAlarmState cloudwatch:StartMetricStreams cloudwatch:StopMetricStreams  | 
| codeartifact |  codeartifact:AssociateExternalConnection codeartifact:CopyPackageVersions codeartifact:CreateDomain codeartifact:CreateRepository codeartifact:DeleteDomain codeartifact:DeleteDomainPermissionsPolicy codeartifact:DeletePackage codeartifact:DeletePackageVersions codeartifact:DeleteRepository codeartifact:DeleteRepositoryPermissionsPolicy codeartifact:DescribeDomain codeartifact:DescribePackage codeartifact:DescribePackageVersion codeartifact:DescribeRepository codeartifact:DisassociateExternalConnection codeartifact:DisposePackageVersions codeartifact:GetAssociatedPackageGroup codeartifact:GetAuthorizationToken codeartifact:GetDomainPermissionsPolicy codeartifact:GetPackageVersionAsset codeartifact:GetPackageVersionReadme codeartifact:GetRepositoryEndpoint codeartifact:GetRepositoryPermissionsPolicy codeartifact:ListDomains codeartifact:ListPackageGroups codeartifact:ListPackageVersionAssets codeartifact:ListPackageVersionDependencies codeartifact:ListPackageVersions codeartifact:ListPackages codeartifact:ListRepositories codeartifact:ListRepositoriesInDomain codeartifact:PublishPackageVersion codeartifact:PutDomainPermissionsPolicy codeartifact:PutPackageMetadata codeartifact:PutPackageOriginConfiguration codeartifact:PutRepositoryPermissionsPolicy codeartifact:ReadFromRepository codeartifact:UpdatePackageVersionsStatus codeartifact:UpdateRepository  | 
| codedeploy |  codedeploy:BatchGetApplicationRevisions codedeploy:BatchGetApplications codedeploy:BatchGetDeploymentGroups codedeploy:BatchGetDeploymentInstances codedeploy:BatchGetDeploymentTargets codedeploy:BatchGetDeployments codedeploy:BatchGetOnPremisesInstances codedeploy:ContinueDeployment codedeploy:CreateApplication codedeploy:CreateDeployment codedeploy:CreateDeploymentConfig codedeploy:CreateDeploymentGroup codedeploy:DeleteApplication codedeploy:DeleteDeploymentConfig codedeploy:DeleteDeploymentGroup codedeploy:DeleteGitHubAccountToken codedeploy:DeleteResourcesByExternalId codedeploy:DeregisterOnPremisesInstance codedeploy:GetApplication codedeploy:GetApplicationRevision codedeploy:GetDeployment codedeploy:GetDeploymentConfig codedeploy:GetDeploymentGroup codedeploy:GetDeploymentInstance codedeploy:GetDeploymentTarget codedeploy:GetOnPremisesInstance codedeploy:ListApplicationRevisions codedeploy:ListApplications codedeploy:ListDeploymentConfigs codedeploy:ListDeploymentGroups codedeploy:ListDeploymentInstances codedeploy:ListDeploymentTargets codedeploy:ListDeployments codedeploy:ListGitHubAccountTokenNames codedeploy:ListOnPremisesInstances codedeploy:PutLifecycleEventHookExecutionStatus codedeploy:RegisterApplicationRevision codedeploy:RegisterOnPremisesInstance codedeploy:SkipWaitTimeForInstanceTermination codedeploy:StopDeployment codedeploy:UpdateApplication codedeploy:UpdateDeploymentGroup  | 
| codeguru-profiler |  codeguru-profiler:AddNotificationChannels codeguru-profiler:BatchGetFrameMetricData codeguru-profiler:CreateProfilingGroup codeguru-profiler:DeleteProfilingGroup codeguru-profiler:DescribeProfilingGroup codeguru-profiler:GetFindingsReportAccountSummary codeguru-profiler:GetNotificationConfiguration codeguru-profiler:GetPolicy codeguru-profiler:GetProfile codeguru-profiler:GetRecommendations codeguru-profiler:ListFindingsReports codeguru-profiler:ListProfileTimes codeguru-profiler:ListProfilingGroups codeguru-profiler:PutPermission codeguru-profiler:RemoveNotificationChannel codeguru-profiler:RemovePermission codeguru-profiler:SubmitFeedback codeguru-profiler:UpdateProfilingGroup  | 
| codeguru-reviewer |  codeguru-reviewer:AssociateRepository codeguru-reviewer:CreateCodeReview codeguru-reviewer:DescribeCodeReview codeguru-reviewer:DescribeRecommendationFeedback codeguru-reviewer:DescribeRepositoryAssociation codeguru-reviewer:DisassociateRepository codeguru-reviewer:ListCodeReviews codeguru-reviewer:ListRecommendationFeedback codeguru-reviewer:ListRecommendations codeguru-reviewer:ListRepositoryAssociations codeguru-reviewer:PutRecommendationFeedback  | 
| codepipeline |  codepipeline:AcknowledgeJob codepipeline:AcknowledgeThirdPartyJob codepipeline:CreateCustomActionType codepipeline:CreatePipeline codepipeline:DeleteCustomActionType codepipeline:DeletePipeline codepipeline:DeleteWebhook codepipeline:DeregisterWebhookWithThirdParty codepipeline:GetActionType codepipeline:GetJobDetails codepipeline:GetPipeline codepipeline:GetPipelineExecution codepipeline:GetPipelineState codepipeline:GetThirdPartyJobDetails codepipeline:ListActionExecutions codepipeline:ListActionTypes codepipeline:ListPipelineExecutions codepipeline:ListPipelines codepipeline:ListRuleExecutions codepipeline:ListRuleTypes codepipeline:ListWebhooks codepipeline:OverrideStageCondition codepipeline:PollForJobs codepipeline:PollForThirdPartyJobs codepipeline:PutActionRevision codepipeline:PutApprovalResult codepipeline:PutJobFailureResult codepipeline:PutJobSuccessResult codepipeline:PutThirdPartyJobFailureResult codepipeline:PutThirdPartyJobSuccessResult codepipeline:PutWebhook codepipeline:RegisterWebhookWithThirdParty codepipeline:RollbackStage codepipeline:StartPipelineExecution codepipeline:StopPipelineExecution codepipeline:UpdateActionType codepipeline:UpdatePipeline  | 
| codestar |  codestar:AssociateTeamMember codestar:CreateProject codestar:CreateUserProfile codestar:DeleteProject codestar:DeleteUserProfile codestar:DescribeProject codestar:DescribeUserProfile codestar:DisassociateTeamMember codestar:ListProjects codestar:ListResources codestar:ListTeamMembers codestar:ListUserProfiles codestar:UpdateProject codestar:UpdateTeamMember codestar:UpdateUserProfile  | 
| codestar-notifications |  codestar-notifications:CreateNotificationRule codestar-notifications:DeleteNotificationRule codestar-notifications:DeleteTarget codestar-notifications:DescribeNotificationRule codestar-notifications:ListEventTypes codestar-notifications:ListNotificationRules codestar-notifications:ListTargets codestar-notifications:Subscribe codestar-notifications:Unsubscribe codestar-notifications:UpdateNotificationRule  | 
| cognito-identity |  cognito-identity:CreateIdentityPool cognito-identity:DeleteIdentities cognito-identity:DeleteIdentityPool cognito-identity:DescribeIdentity cognito-identity:DescribeIdentityPool cognito-identity:GetIdentityPoolRoles cognito-identity:ListIdentities cognito-identity:ListIdentityPools cognito-identity:LookupDeveloperIdentity cognito-identity:MergeDeveloperIdentities cognito-identity:SetIdentityPoolRoles cognito-identity:UnlinkDeveloperIdentity cognito-identity:UpdateIdentityPool  | 
| cognito-idp |  cognito-idp:AddCustomAttributes cognito-idp:AdminAddUserToGroup cognito-idp:AdminConfirmSignUp cognito-idp:AdminCreateUser cognito-idp:AdminDeleteUser cognito-idp:AdminDeleteUserAttributes cognito-idp:AdminDisableProviderForUser cognito-idp:AdminDisableUser cognito-idp:AdminEnableUser cognito-idp:AdminForgetDevice cognito-idp:AdminGetDevice cognito-idp:AdminGetUser cognito-idp:AdminInitiateAuth cognito-idp:AdminLinkProviderForUser cognito-idp:AdminListDevices cognito-idp:AdminListGroupsForUser cognito-idp:AdminListUserAuthEvents cognito-idp:AdminRemoveUserFromGroup cognito-idp:AdminResetUserPassword cognito-idp:AdminRespondToAuthChallenge cognito-idp:AdminSetUserMFAPreference cognito-idp:AdminSetUserPassword cognito-idp:AdminSetUserSettings cognito-idp:AdminUpdateAuthEventFeedback cognito-idp:AdminUpdateDeviceStatus cognito-idp:AdminUpdateUserAttributes cognito-idp:AdminUserGlobalSignOut cognito-idp:AssociateSoftwareToken cognito-idp:ChangePassword cognito-idp:ConfirmDevice cognito-idp:ConfirmForgotPassword cognito-idp:ConfirmSignUp cognito-idp:CreateGroup cognito-idp:CreateIdentityProvider cognito-idp:CreateManagedLoginBranding cognito-idp:CreateResourceServer cognito-idp:CreateTerms cognito-idp:CreateUserImportJob cognito-idp:CreateUserPool cognito-idp:CreateUserPoolClient cognito-idp:CreateUserPoolDomain cognito-idp:DeleteGroup cognito-idp:DeleteIdentityProvider cognito-idp:DeleteManagedLoginBranding cognito-idp:DeleteResourceServer cognito-idp:DeleteTerms cognito-idp:DeleteUser cognito-idp:DeleteUserAttributes cognito-idp:DeleteUserPool cognito-idp:DeleteUserPoolClient cognito-idp:DeleteUserPoolDomain cognito-idp:DescribeIdentityProvider cognito-idp:DescribeManagedLoginBranding cognito-idp:DescribeManagedLoginBrandingByClient cognito-idp:DescribeResourceServer cognito-idp:DescribeRiskConfiguration cognito-idp:DescribeTerms cognito-idp:DescribeUserImportJob cognito-idp:DescribeUserPool cognito-idp:DescribeUserPoolClient cognito-idp:DescribeUserPoolDomain cognito-idp:ForgetDevice cognito-idp:ForgotPassword cognito-idp:GetCSVHeader cognito-idp:GetDevice cognito-idp:GetGroup cognito-idp:GetIdentityProviderByIdentifier cognito-idp:GetLogDeliveryConfiguration cognito-idp:GetSigningCertificate cognito-idp:GetUICustomization cognito-idp:GetUser cognito-idp:GetUserAttributeVerificationCode cognito-idp:GetUserPoolMfaConfig cognito-idp:GlobalSignOut cognito-idp:InitiateAuth cognito-idp:ListDevices cognito-idp:ListGroups cognito-idp:ListIdentityProviders cognito-idp:ListResourceServers cognito-idp:ListTerms cognito-idp:ListUserImportJobs cognito-idp:ListUserPoolClients cognito-idp:ListUserPools cognito-idp:ListUsers cognito-idp:ListUsersInGroup cognito-idp:ResendConfirmationCode cognito-idp:RespondToAuthChallenge cognito-idp:RevokeToken cognito-idp:SetLogDeliveryConfiguration cognito-idp:SetRiskConfiguration cognito-idp:SetUICustomization cognito-idp:SetUserMFAPreference cognito-idp:SetUserPoolMfaConfig cognito-idp:SetUserSettings cognito-idp:SignUp cognito-idp:StartUserImportJob cognito-idp:StopUserImportJob cognito-idp:UpdateAuthEventFeedback cognito-idp:UpdateDeviceStatus cognito-idp:UpdateGroup cognito-idp:UpdateIdentityProvider cognito-idp:UpdateResourceServer cognito-idp:UpdateTerms cognito-idp:UpdateUserAttributes cognito-idp:UpdateUserPool cognito-idp:UpdateUserPoolClient cognito-idp:UpdateUserPoolDomain cognito-idp:VerifySoftwareToken cognito-idp:VerifyUserAttribute  | 
| cognito-sync |  cognito-sync:BulkPublish cognito-sync:DeleteDataset cognito-sync:DescribeDataset cognito-sync:DescribeIdentityPoolUsage cognito-sync:DescribeIdentityUsage cognito-sync:GetBulkPublishDetails cognito-sync:GetCognitoEvents cognito-sync:GetIdentityPoolConfiguration cognito-sync:ListDatasets cognito-sync:ListIdentityPoolUsage cognito-sync:ListRecords cognito-sync:RegisterDevice cognito-sync:SetCognitoEvents cognito-sync:SetIdentityPoolConfiguration cognito-sync:SubscribeToDataset cognito-sync:UnsubscribeFromDataset cognito-sync:UpdateRecords  | 
| comprehendmedical |  comprehendmedical:DescribeEntitiesDetectionV2Job comprehendmedical:DescribeICD10CMInferenceJob comprehendmedical:DescribePHIDetectionJob comprehendmedical:DescribeRxNormInferenceJob comprehendmedical:DescribeSNOMEDCTInferenceJob comprehendmedical:DetectEntitiesV2 comprehendmedical:DetectPHI comprehendmedical:InferICD10CM comprehendmedical:InferRxNorm comprehendmedical:InferSNOMEDCT comprehendmedical:ListEntitiesDetectionV2Jobs comprehendmedical:ListICD10CMInferenceJobs comprehendmedical:ListPHIDetectionJobs comprehendmedical:ListRxNormInferenceJobs comprehendmedical:ListSNOMEDCTInferenceJobs comprehendmedical:StartEntitiesDetectionV2Job comprehendmedical:StartICD10CMInferenceJob comprehendmedical:StartPHIDetectionJob comprehendmedical:StartRxNormInferenceJob comprehendmedical:StartSNOMEDCTInferenceJob comprehendmedical:StopEntitiesDetectionV2Job comprehendmedical:StopICD10CMInferenceJob comprehendmedical:StopPHIDetectionJob comprehendmedical:StopRxNormInferenceJob comprehendmedical:StopSNOMEDCTInferenceJob  | 
| compute-optimizer |  compute-optimizer:DeleteRecommendationPreferences compute-optimizer:DescribeRecommendationExportJobs compute-optimizer:ExportAutoScalingGroupRecommendations compute-optimizer:ExportEBSVolumeRecommendations compute-optimizer:ExportEC2InstanceRecommendations compute-optimizer:ExportECSServiceRecommendations compute-optimizer:ExportIdleRecommendations compute-optimizer:ExportLambdaFunctionRecommendations compute-optimizer:ExportLicenseRecommendations compute-optimizer:ExportRDSDatabaseRecommendations compute-optimizer:GetEC2RecommendationProjectedMetrics compute-optimizer:GetECSServiceRecommendationProjectedMetrics compute-optimizer:GetEffectiveRecommendationPreferences compute-optimizer:GetEnrollmentStatus compute-optimizer:GetEnrollmentStatusesForOrganization compute-optimizer:GetRDSDatabaseRecommendationProjectedMetrics compute-optimizer:GetRecommendationPreferences compute-optimizer:GetRecommendationSummaries compute-optimizer:PutRecommendationPreferences compute-optimizer:UpdateEnrollmentStatus  | 
| config |  config:BatchGetResourceConfig config:DeleteAggregationAuthorization config:DeleteConfigRule config:DeleteConfigurationAggregator config:DeleteConfigurationRecorder config:DeleteConformancePack config:DeleteDeliveryChannel config:DeleteEvaluationResults config:DeleteOrganizationConfigRule config:DeleteOrganizationConformancePack config:DeletePendingAggregationRequest config:DeleteRemediationConfiguration config:DeleteRemediationExceptions config:DeleteResourceConfig config:DeleteRetentionConfiguration config:DeleteStoredQuery config:DeliverConfigSnapshot config:DescribeAggregateComplianceByConfigRules config:DescribeAggregateComplianceByConformancePacks config:DescribeAggregationAuthorizations config:DescribeComplianceByConfigRule config:DescribeComplianceByResource config:DescribeConfigRuleEvaluationStatus config:DescribeConfigRules config:DescribeConfigurationAggregatorSourcesStatus config:DescribeConfigurationAggregators config:DescribeConfigurationRecorderStatus config:DescribeConfigurationRecorders config:DescribeConformancePackCompliance config:DescribeConformancePackStatus config:DescribeConformancePacks config:DescribeDeliveryChannelStatus config:DescribeDeliveryChannels config:DescribeOrganizationConfigRuleStatuses config:DescribeOrganizationConfigRules config:DescribeOrganizationConformancePackStatuses config:DescribeOrganizationConformancePacks config:DescribePendingAggregationRequests config:DescribeRemediationConfigurations config:DescribeRemediationExceptions config:DescribeRemediationExecutionStatus config:DescribeRetentionConfigurations config:GetComplianceDetailsByConfigRule config:GetComplianceDetailsByResource config:GetComplianceSummaryByConfigRule config:GetComplianceSummaryByResourceType config:GetConformancePackComplianceDetails config:GetConformancePackComplianceSummary config:GetCustomRulePolicy config:GetDiscoveredResourceCounts config:GetOrganizationConfigRuleDetailedStatus config:GetOrganizationConformancePackDetailedStatus config:GetOrganizationCustomRulePolicy config:GetResourceConfigHistory config:GetResourceEvaluationSummary config:GetStoredQuery config:ListConfigurationRecorders config:ListConformancePackComplianceScores config:ListDiscoveredResources config:ListResourceEvaluations config:ListStoredQueries config:PutConfigRule config:PutConfigurationAggregator config:PutConfigurationRecorder config:PutConformancePack config:PutDeliveryChannel config:PutEvaluations config:PutExternalEvaluation config:PutOrganizationConfigRule config:PutOrganizationConformancePack config:PutRemediationConfigurations config:PutRemediationExceptions config:PutResourceConfig config:PutRetentionConfiguration config:PutStoredQuery config:SelectResourceConfig config:StartConfigRulesEvaluation config:StartConfigurationRecorder config:StartRemediationExecution config:StartResourceEvaluation config:StopConfigurationRecorder  | 
| 接続 |  connect:ActivateEvaluationForm connect:AssociateAnalyticsDataSet connect:AssociateApprovedOrigin connect:AssociateBot connect:AssociateContactWithUser connect:AssociateDefaultVocabulary connect:AssociateEmailAddressAlias connect:AssociateFlow connect:AssociateInstanceStorageConfig connect:AssociateLambdaFunction connect:AssociateLexBot connect:AssociatePhoneNumberContactFlow connect:AssociateQueueQuickConnects connect:AssociateRoutingProfileQueues connect:AssociateSecurityKey connect:AssociateUserProficiencies connect:BatchAssociateAnalyticsDataSet connect:BatchCreateDataTableValue connect:BatchDeleteDataTableValue connect:BatchDescribeDataTableValue connect:BatchDisassociateAnalyticsDataSet connect:BatchGetFlowAssociation connect:BatchPutContact connect:BatchUpdateDataTableValue connect:ClaimPhoneNumber connect:CreateAgentStatus connect:CreateContact connect:CreateContactFlow connect:CreateContactFlowModule connect:CreateContactFlowModuleAlias connect:CreateContactFlowModuleVersion connect:CreateContactFlowVersion connect:CreateDataTable connect:CreateDataTableAttribute connect:CreateEmailAddress connect:CreateEvaluationForm connect:CreateHoursOfOperation connect:CreateInstance connect:CreateIntegrationAssociation connect:CreateParticipant connect:CreatePersistentContactAssociation connect:CreatePredefinedAttribute connect:CreatePrompt connect:CreatePushNotificationRegistration connect:CreateQueue connect:CreateQuickConnect connect:CreateRoutingProfile connect:CreateRule connect:CreateSecurityProfile connect:CreateTaskTemplate connect:CreateTrafficDistributionGroup connect:CreateUseCase connect:CreateUser connect:CreateUserHierarchyGroup connect:CreateView connect:CreateViewVersion connect:CreateVocabulary connect:CreateWorkspace connect:DeactivateEvaluationForm connect:DeleteContactEvaluation connect:DeleteContactFlow connect:DeleteContactFlowModule connect:DeleteContactFlowModuleAlias connect:DeleteContactFlowModuleVersion connect:DeleteContactFlowVersion connect:DeleteDataTable connect:DeleteDataTableAttribute connect:DeleteEmailAddress connect:DeleteEvaluationForm connect:DeleteHoursOfOperation connect:DeleteHoursOfOperationOverride connect:DeleteInstance connect:DeleteIntegrationAssociation connect:DeletePredefinedAttribute connect:DeletePrompt connect:DeletePushNotificationRegistration connect:DeleteQueue connect:DeleteQuickConnect connect:DeleteRoutingProfile connect:DeleteRule connect:DeleteSecurityProfile connect:DeleteTaskTemplate connect:DeleteTrafficDistributionGroup connect:DeleteUseCase connect:DeleteUser connect:DeleteUserHierarchyGroup connect:DeleteView connect:DeleteVocabulary connect:DeleteWorkspace connect:DeleteWorkspaceMedia connect:DescribeAuthenticationProfile connect:DescribeContactFlowModuleAlias connect:DescribeDataTableAttribute connect:DescribeHoursOfOperationOverride connect:DescribeInstanceAttribute connect:DescribeInstanceStorageConfig connect:DescribePhoneNumber connect:DescribeRule connect:DescribeTrafficDistributionGroup connect:DescribeUserHierarchyStructure connect:DescribeVocabulary connect:DisassociateAnalyticsDataSet connect:DisassociateApprovedOrigin connect:DisassociateBot connect:DisassociateEmailAddressAlias connect:DisassociateFlow connect:DisassociateInstanceStorageConfig connect:DisassociateLambdaFunction connect:DisassociateLexBot connect:DisassociatePhoneNumberContactFlow connect:DisassociateQueueQuickConnects connect:DisassociateRoutingProfileQueues connect:DisassociateSecurityKey connect:DisassociateUserProficiencies connect:DismissUserContact connect:EvaluateDataTableValues connect:GetContactAttributes connect:GetContactMetrics connect:GetCurrentMetricData connect:GetCurrentUserData connect:GetEffectiveHoursOfOperations connect:GetFederationToken connect:GetFlowAssociation connect:GetMetricData connect:GetMetricDataV2 connect:GetPromptFile connect:GetTaskTemplate connect:GetTrafficDistribution connect:ImportPhoneNumber connect:ImportWorkspaceMedia connect:ListAnalyticsDataAssociations connect:ListAnalyticsDataLakeDataSets connect:ListApprovedOrigins connect:ListAssociatedContacts connect:ListAuthenticationProfiles connect:ListBots connect:ListContactEvaluations connect:ListContactFlowModuleAliases connect:ListContactFlowModuleVersions connect:ListContactFlowModules connect:ListContactFlowVersions connect:ListContactFlows connect:ListContactReferences connect:ListDataTableAttributes connect:ListDataTablePrimaryValues connect:ListDataTableValues connect:ListDataTables connect:ListDefaultVocabularies connect:ListEvaluationFormVersions connect:ListEvaluationForms connect:ListFlowAssociations connect:ListHoursOfOperations connect:ListInstanceAttributes connect:ListInstanceStorageConfigs connect:ListIntegrationAssociations connect:ListLambdaFunctions connect:ListLexBots connect:ListPhoneNumbers connect:ListPhoneNumbersV2 connect:ListPredefinedAttributes connect:ListPrompts connect:ListQueueQuickConnects connect:ListQueues connect:ListQuickConnects connect:ListRealtimeContactAnalysisSegmentsV2 connect:ListRoutingProfileManualAssignmentQueues connect:ListRoutingProfileQueues connect:ListRoutingProfiles connect:ListRules connect:ListSecurityKeys connect:ListSecurityProfileApplications connect:ListSecurityProfileFlowModules connect:ListSecurityProfilePermissions connect:ListSecurityProfiles connect:ListTaskTemplates connect:ListTrafficDistributionGroups connect:ListUseCases connect:ListUserHierarchyGroups connect:ListUsers connect:ListViewVersions connect:ListViews connect:ListWorkspaceMedia connect:ListWorkspacePages connect:ListWorkspaces connect:MonitorContact connect:PauseContact connect:PutUserStatus connect:ReleasePhoneNumber connect:ReplicateInstance connect:ResumeContact connect:ResumeContactRecording connect:SearchAgentStatuses connect:SearchAvailablePhoneNumbers connect:SearchContactEvaluations connect:SearchContactFlowModules connect:SearchContactFlows connect:SearchContacts connect:SearchDataTables connect:SearchEmailAddresses connect:SearchEvaluationForms connect:SearchHoursOfOperations connect:SearchPredefinedAttributes connect:SearchPrompts connect:SearchQueues connect:SearchQuickConnects connect:SearchRoutingProfiles connect:SearchSecurityProfiles connect:SearchUserHierarchyGroups connect:SearchViews connect:SearchVocabularies connect:SearchWorkspaceAssociations connect:SearchWorkspaces connect:SendChatIntegrationEvent connect:SendOutboundEmail connect:StartChatContact connect:StartContactEvaluation connect:StartContactMediaProcessing connect:StartContactRecording connect:StartContactStreaming connect:StartEmailContact connect:StartOutboundChatContact connect:StartOutboundEmailContact connect:StartOutboundVoiceContact connect:StartScreenSharing connect:StartTaskContact connect:StartWebRTCContact connect:StopContact connect:StopContactMediaProcessing connect:StopContactRecording connect:StopContactStreaming connect:SubmitContactEvaluation connect:SuspendContactRecording connect:TransferContact connect:UpdateAgentStatus connect:UpdateAuthenticationProfile connect:UpdateContact connect:UpdateContactAttributes connect:UpdateContactEvaluation connect:UpdateContactFlowContent connect:UpdateContactFlowMetadata connect:UpdateContactFlowModuleAlias connect:UpdateContactFlowModuleContent connect:UpdateContactFlowModuleMetadata connect:UpdateContactFlowName connect:UpdateContactRoutingData connect:UpdateContactSchedule connect:UpdateDataTableAttribute connect:UpdateDataTableMetadata connect:UpdateDataTablePrimaryValues connect:UpdateEmailAddressMetadata connect:UpdateEvaluationForm connect:UpdateHoursOfOperation connect:UpdateHoursOfOperationOverride connect:UpdateInstanceAttribute connect:UpdateInstanceStorageConfig connect:UpdateParticipantAuthentication connect:UpdateParticipantRoleConfig connect:UpdatePhoneNumber connect:UpdatePhoneNumberMetadata connect:UpdatePredefinedAttribute connect:UpdatePrompt connect:UpdateQueueHoursOfOperation connect:UpdateQueueMaxContacts connect:UpdateQueueName connect:UpdateQueueOutboundCallerConfig connect:UpdateQueueOutboundEmailConfig connect:UpdateQueueStatus connect:UpdateQuickConnectConfig connect:UpdateQuickConnectName connect:UpdateRoutingProfileAgentAvailabilityTimer connect:UpdateRoutingProfileConcurrency connect:UpdateRoutingProfileDefaultOutboundQueue connect:UpdateRoutingProfileName connect:UpdateRoutingProfileQueues connect:UpdateRule connect:UpdateSecurityProfile connect:UpdateTaskTemplate connect:UpdateTrafficDistribution connect:UpdateUserHierarchy connect:UpdateUserHierarchyGroupName connect:UpdateUserHierarchyStructure connect:UpdateUserIdentityInfo connect:UpdateUserPhoneConfig connect:UpdateUserProficiencies connect:UpdateUserRoutingProfile connect:UpdateUserSecurityProfiles connect:UpdateViewContent connect:UpdateViewMetadata connect:UpdateWorkspaceMetadata connect:UpdateWorkspaceTheme connect:UpdateWorkspaceVisibility  | 
| cur |  cur:DeleteReportDefinition cur:DescribeReportDefinitions cur:ModifyReportDefinition cur:PutReportDefinition  | 
| databrew |  databrew:BatchDeleteRecipeVersion databrew:CreateDataset databrew:CreateProfileJob databrew:CreateProject databrew:CreateRecipe databrew:CreateRecipeJob databrew:CreateRuleset databrew:CreateSchedule databrew:DeleteDataset databrew:DeleteJob databrew:DeleteProject databrew:DeleteRecipeVersion databrew:DeleteRuleset databrew:DeleteSchedule databrew:DescribeDataset databrew:DescribeJob databrew:DescribeJobRun databrew:DescribeProject databrew:DescribeRecipe databrew:DescribeRuleset databrew:DescribeSchedule databrew:ListDatasets databrew:ListJobRuns databrew:ListJobs databrew:ListProjects databrew:ListRecipeVersions databrew:ListRecipes databrew:ListRulesets databrew:ListSchedules databrew:PublishRecipe databrew:SendProjectSessionAction databrew:StartJobRun databrew:StartProjectSession databrew:StopJobRun databrew:UpdateDataset databrew:UpdateProfileJob databrew:UpdateProject databrew:UpdateRecipe databrew:UpdateRecipeJob databrew:UpdateRuleset databrew:UpdateSchedule  | 
| dataexchange |  dataexchange:AcceptDataGrant dataexchange:CancelJob dataexchange:CreateDataGrant dataexchange:CreateDataSet dataexchange:CreateEventAction dataexchange:CreateJob dataexchange:CreateRevision dataexchange:DeleteAsset dataexchange:DeleteDataGrant dataexchange:DeleteEventAction dataexchange:DeleteRevision dataexchange:GetDataGrant dataexchange:GetEventAction dataexchange:GetJob dataexchange:GetReceivedDataGrant dataexchange:ListDataGrants dataexchange:ListDataSetRevisions dataexchange:ListDataSets dataexchange:ListEventActions dataexchange:ListJobs dataexchange:ListReceivedDataGrants dataexchange:ListRevisionAssets dataexchange:RevokeRevision dataexchange:SendDataSetNotification dataexchange:StartJob dataexchange:UpdateAsset dataexchange:UpdateDataSet dataexchange:UpdateEventAction dataexchange:UpdateRevision  | 
| datapipeline |  datapipeline:ActivatePipeline datapipeline:CreatePipeline datapipeline:DeactivatePipeline datapipeline:DeletePipeline datapipeline:DescribeObjects datapipeline:DescribePipelines datapipeline:EvaluateExpression datapipeline:GetPipelineDefinition datapipeline:ListPipelines datapipeline:PollForTask datapipeline:PutPipelineDefinition datapipeline:QueryObjects datapipeline:ReportTaskProgress datapipeline:ReportTaskRunnerHeartbeat datapipeline:SetStatus datapipeline:SetTaskStatus datapipeline:ValidatePipelineDefinition  | 
| dax |  dax:CreateCluster dax:DecreaseReplicationFactor dax:DeleteCluster dax:DeleteParameterGroup dax:DeleteSubnetGroup dax:DescribeClusters dax:DescribeDefaultParameters dax:DescribeEvents dax:DescribeParameterGroups dax:DescribeParameters dax:DescribeSubnetGroups dax:IncreaseReplicationFactor dax:RebootNode dax:UpdateCluster dax:UpdateParameterGroup dax:UpdateSubnetGroup  | 
| devicefarm |  devicefarm:CreateDevicePool devicefarm:CreateInstanceProfile devicefarm:CreateNetworkProfile devicefarm:CreateProject devicefarm:CreateRemoteAccessSession devicefarm:CreateTestGridProject devicefarm:CreateTestGridUrl devicefarm:CreateUpload devicefarm:CreateVPCEConfiguration devicefarm:DeleteDevicePool devicefarm:DeleteInstanceProfile devicefarm:DeleteNetworkProfile devicefarm:DeleteProject devicefarm:DeleteRemoteAccessSession devicefarm:DeleteRun devicefarm:DeleteTestGridProject devicefarm:DeleteUpload devicefarm:DeleteVPCEConfiguration devicefarm:GetAccountSettings devicefarm:GetDevice devicefarm:GetDeviceInstance devicefarm:GetDevicePool devicefarm:GetDevicePoolCompatibility devicefarm:GetInstanceProfile devicefarm:GetJob devicefarm:GetNetworkProfile devicefarm:GetOfferingStatus devicefarm:GetProject devicefarm:GetRemoteAccessSession devicefarm:GetRun devicefarm:GetSuite devicefarm:GetTest devicefarm:GetTestGridProject devicefarm:GetTestGridSession devicefarm:GetUpload devicefarm:GetVPCEConfiguration devicefarm:ListArtifacts devicefarm:ListDeviceInstances devicefarm:ListDevicePools devicefarm:ListDevices devicefarm:ListInstanceProfiles devicefarm:ListJobs devicefarm:ListNetworkProfiles devicefarm:ListOfferingPromotions devicefarm:ListOfferingTransactions devicefarm:ListOfferings devicefarm:ListProjects devicefarm:ListRemoteAccessSessions devicefarm:ListRuns devicefarm:ListSamples devicefarm:ListSuites devicefarm:ListTestGridProjects devicefarm:ListTestGridSessionActions devicefarm:ListTestGridSessionArtifacts devicefarm:ListTestGridSessions devicefarm:ListTests devicefarm:ListUniqueProblems devicefarm:ListUploads devicefarm:ListVPCEConfigurations devicefarm:PurchaseOffering devicefarm:RenewOffering devicefarm:ScheduleRun devicefarm:StopJob devicefarm:StopRemoteAccessSession devicefarm:StopRun devicefarm:UpdateDeviceInstance devicefarm:UpdateDevicePool devicefarm:UpdateInstanceProfile devicefarm:UpdateNetworkProfile devicefarm:UpdateProject devicefarm:UpdateTestGridProject devicefarm:UpdateUpload devicefarm:UpdateVPCEConfiguration  | 
| devops-guru |  devops-guru:AddNotificationChannel devops-guru:DeleteInsight devops-guru:DescribeAccountHealth devops-guru:DescribeAccountOverview devops-guru:DescribeAnomaly devops-guru:DescribeEventSourcesConfig devops-guru:DescribeFeedback devops-guru:DescribeInsight devops-guru:DescribeOrganizationHealth devops-guru:DescribeOrganizationOverview devops-guru:DescribeOrganizationResourceCollectionHealth devops-guru:DescribeResourceCollectionHealth devops-guru:DescribeServiceIntegration devops-guru:GetCostEstimation devops-guru:GetResourceCollection devops-guru:ListAnomaliesForInsight devops-guru:ListAnomalousLogGroups devops-guru:ListEvents devops-guru:ListInsights devops-guru:ListMonitoredResources devops-guru:ListNotificationChannels devops-guru:ListOrganizationInsights devops-guru:ListRecommendations devops-guru:PutFeedback devops-guru:RemoveNotificationChannel devops-guru:SearchInsights devops-guru:SearchOrganizationInsights devops-guru:StartCostEstimation devops-guru:UpdateEventSourcesConfig devops-guru:UpdateResourceCollection devops-guru:UpdateServiceIntegration  | 
| directconnect |  directconnect:AcceptDirectConnectGatewayAssociationProposal directconnect:AllocateConnectionOnInterconnect directconnect:AllocateHostedConnection directconnect:AllocatePrivateVirtualInterface directconnect:AllocatePublicVirtualInterface directconnect:AllocateTransitVirtualInterface directconnect:AssociateConnectionWithLag directconnect:AssociateHostedConnection directconnect:AssociateMacSecKey directconnect:AssociateVirtualInterface directconnect:ConfirmConnection directconnect:ConfirmCustomerAgreement directconnect:ConfirmPrivateVirtualInterface directconnect:ConfirmPublicVirtualInterface directconnect:ConfirmTransitVirtualInterface directconnect:CreateBGPPeer directconnect:CreateConnection directconnect:CreateDirectConnectGateway directconnect:CreateDirectConnectGatewayAssociation directconnect:CreateDirectConnectGatewayAssociationProposal directconnect:CreateInterconnect directconnect:CreateLag directconnect:CreatePrivateVirtualInterface directconnect:CreatePublicVirtualInterface directconnect:CreateTransitVirtualInterface directconnect:DeleteBGPPeer directconnect:DeleteConnection directconnect:DeleteDirectConnectGateway directconnect:DeleteDirectConnectGatewayAssociation directconnect:DeleteDirectConnectGatewayAssociationProposal directconnect:DeleteInterconnect directconnect:DeleteLag directconnect:DeleteVirtualInterface directconnect:DescribeConnectionLoa directconnect:DescribeConnections directconnect:DescribeConnectionsOnInterconnect directconnect:DescribeCustomerMetadata directconnect:DescribeDirectConnectGatewayAssociationProposals directconnect:DescribeDirectConnectGatewayAssociations directconnect:DescribeDirectConnectGatewayAttachments directconnect:DescribeDirectConnectGateways directconnect:DescribeHostedConnections directconnect:DescribeInterconnectLoa directconnect:DescribeInterconnects directconnect:DescribeLags directconnect:DescribeLoa directconnect:DescribeLocations directconnect:DescribeRouterConfiguration directconnect:DescribeVirtualGateways directconnect:DescribeVirtualInterfaces directconnect:DisassociateConnectionFromLag directconnect:DisassociateMacSecKey directconnect:ListVirtualInterfaceTestHistory directconnect:StartBgpFailoverTest directconnect:StopBgpFailoverTest directconnect:UpdateConnection directconnect:UpdateDirectConnectGateway directconnect:UpdateDirectConnectGatewayAssociation directconnect:UpdateLag directconnect:UpdateVirtualInterfaceAttributes  | 
| dlm |  dlm:CreateLifecyclePolicy dlm:DeleteLifecyclePolicy dlm:GetLifecyclePolicies dlm:GetLifecyclePolicy dlm:UpdateLifecyclePolicy  | 
| dms |  dms:ApplyPendingMaintenanceAction dms:AssociateExtensionPack dms:BatchStartRecommendations dms:CancelMetadataModelCreation dms:CancelReplicationTaskAssessmentRun dms:CreateDataProvider dms:CreateEndpoint dms:CreateEventSubscription dms:CreateInstanceProfile dms:CreateMigrationProject dms:CreateReplicationConfig dms:CreateReplicationInstance dms:CreateReplicationSubnetGroup dms:CreateReplicationTask dms:DeleteCertificate dms:DeleteConnection dms:DeleteDataMigration dms:DeleteDataProvider dms:DeleteEndpoint dms:DeleteEventSubscription dms:DeleteFleetAdvisorCollector dms:DeleteFleetAdvisorDatabases dms:DeleteInstanceProfile dms:DeleteMigrationProject dms:DeleteReplicationConfig dms:DeleteReplicationInstance dms:DeleteReplicationSubnetGroup dms:DeleteReplicationTask dms:DeleteReplicationTaskAssessmentRun dms:DescribeAccountAttributes dms:DescribeApplicableIndividualAssessments dms:DescribeCertificates dms:DescribeConnections dms:DescribeDataMigrations dms:DescribeEndpointSettings dms:DescribeEndpointTypes dms:DescribeEndpoints dms:DescribeEngineVersions dms:DescribeEventCategories dms:DescribeEventSubscriptions dms:DescribeEvents dms:DescribeFleetAdvisorCollectors dms:DescribeFleetAdvisorDatabases dms:DescribeFleetAdvisorLsaAnalysis dms:DescribeFleetAdvisorSchemaObjectSummary dms:DescribeFleetAdvisorSchemas dms:DescribeMetadataModel dms:DescribeMetadataModelChildren dms:DescribeMetadataModelCreations dms:DescribeMetadataModelImports dms:DescribeOrderableReplicationInstances dms:DescribePendingMaintenanceActions dms:DescribeRecommendationLimitations dms:DescribeRecommendations dms:DescribeRefreshSchemasStatus dms:DescribeReplicationConfigs dms:DescribeReplicationInstanceTaskLogs dms:DescribeReplicationInstances dms:DescribeReplicationSubnetGroups dms:DescribeReplicationTableStatistics dms:DescribeReplicationTaskAssessmentResults dms:DescribeReplicationTaskAssessmentRuns dms:DescribeReplicationTaskIndividualAssessments dms:DescribeReplicationTasks dms:DescribeReplications dms:DescribeSchemas dms:DescribeTableStatistics dms:ExportMetadataModelAssessment dms:ImportCertificate dms:ListDataProviders dms:ListExtensionPacks dms:ListInstanceProfiles dms:ListMetadataModelAssessments dms:ListMetadataModelConversions dms:ListMetadataModelExports dms:ListMigrationProjects dms:ModifyDataMigration dms:ModifyEndpoint dms:ModifyEventSubscription dms:ModifyReplicationConfig dms:ModifyReplicationInstance dms:ModifyReplicationSubnetGroup dms:ModifyReplicationTask dms:MoveReplicationTask dms:RebootReplicationInstance dms:RefreshSchemas dms:ReloadReplicationTables dms:ReloadTables dms:RunFleetAdvisorLsaAnalysis dms:StartMetadataModelAssessment dms:StartMetadataModelConversion dms:StartMetadataModelCreation dms:StartMetadataModelExportAsScripts dms:StartMetadataModelExportToTarget dms:StartRecommendations dms:StartReplication dms:StartReplicationTask dms:StartReplicationTaskAssessment dms:StopDataMigration dms:StopReplicationTask dms:TestConnection dms:UpdateConversionConfiguration dms:UpdateDataProvider dms:UpdateInstanceProfile dms:UpdateMigrationProject dms:UpdateSubscriptionsToEventBridge  | 
| docdb-elastic |  docdb-elastic:ApplyPendingMaintenanceAction docdb-elastic:CopyClusterSnapshot docdb-elastic:DeleteCluster docdb-elastic:DeleteClusterSnapshot docdb-elastic:GetCluster docdb-elastic:GetClusterSnapshot docdb-elastic:GetPendingMaintenanceAction docdb-elastic:ListClusterSnapshots docdb-elastic:ListClusters docdb-elastic:ListPendingMaintenanceActions docdb-elastic:RestoreClusterFromSnapshot docdb-elastic:StartCluster docdb-elastic:StopCluster docdb-elastic:UpdateCluster  | 
| dynamodb |  dynamodb:AssociateTableReplica dynamodb:CreateBackup dynamodb:CreateGlobalTable dynamodb:CreateTable dynamodb:DeleteBackup dynamodb:DeleteTable dynamodb:DescribeBackup dynamodb:DescribeContinuousBackups dynamodb:DescribeContributorInsights dynamodb:DescribeEndpoints dynamodb:DescribeExport dynamodb:DescribeGlobalTable dynamodb:DescribeGlobalTableSettings dynamodb:DescribeImport dynamodb:DescribeKinesisStreamingDestination dynamodb:DescribeLimits dynamodb:DescribeStream dynamodb:DescribeTable dynamodb:DescribeTableReplicaAutoScaling dynamodb:DescribeTimeToLive dynamodb:DisableKinesisStreamingDestination dynamodb:EnableKinesisStreamingDestination dynamodb:ExportTableToPointInTime dynamodb:GetResourcePolicy dynamodb:ImportTable dynamodb:ListBackups dynamodb:ListContributorInsights dynamodb:ListExports dynamodb:ListGlobalTables dynamodb:ListImports dynamodb:ListStreams dynamodb:ListTables dynamodb:ReadDataForReplication dynamodb:ReplicateSettings dynamodb:RestoreTableFromBackup dynamodb:RestoreTableToPointInTime dynamodb:UpdateContinuousBackups dynamodb:UpdateContributorInsights dynamodb:UpdateGlobalTable dynamodb:UpdateGlobalTableSettings dynamodb:UpdateKinesisStreamingDestination dynamodb:UpdateTable dynamodb:UpdateTableReplicaAutoScaling dynamodb:UpdateTimeToLive dynamodb:WriteDataForReplication  | 
| ebs |  ebs:CompleteSnapshot ebs:StartSnapshot  | 
| Ec2 |  ec2:AcceptAddressTransfer ec2:AcceptCapacityReservationBillingOwnership ec2:AcceptReservedInstancesExchangeQuote ec2:AcceptTransitGatewayMulticastDomainAssociations ec2:AcceptTransitGatewayPeeringAttachment ec2:AcceptTransitGatewayVpcAttachment ec2:AcceptVpcEndpointConnections ec2:AcceptVpcPeeringConnection ec2:AdvertiseByoipCidr ec2:AllocateAddress ec2:AllocateHosts ec2:AllocateIpamPoolCidr ec2:ApplySecurityGroupsToClientVpnTargetNetwork ec2:AssignIpv6Addresses ec2:AssignPrivateIpAddresses ec2:AssignPrivateNatGatewayAddress ec2:AssociateAddress ec2:AssociateCapacityReservationBillingOwner ec2:AssociateClientVpnTargetNetwork ec2:AssociateDhcpOptions ec2:AssociateEnclaveCertificateIamRole ec2:AssociateIamInstanceProfile ec2:AssociateInstanceEventWindow ec2:AssociateIpamByoasn ec2:AssociateIpamResourceDiscovery ec2:AssociateNatGatewayAddress ec2:AssociateRouteServer ec2:AssociateRouteTable ec2:AssociateSecurityGroupVpc ec2:AssociateSubnetCidrBlock ec2:AssociateTransitGatewayMulticastDomain ec2:AssociateTransitGatewayPolicyTable ec2:AssociateTransitGatewayRouteTable ec2:AssociateTrunkInterface ec2:AssociateVpcCidrBlock ec2:AttachClassicLinkVpc ec2:AttachInternetGateway ec2:AttachNetworkInterface ec2:AttachVerifiedAccessTrustProvider ec2:AttachVolume ec2:AttachVpnGateway ec2:AuthorizeClientVpnIngress ec2:AuthorizeSecurityGroupEgress ec2:AuthorizeSecurityGroupIngress ec2:BundleInstance ec2:CancelBundleTask ec2:CancelCapacityReservation ec2:CancelCapacityReservationFleets ec2:CancelConversionTask ec2:CancelDeclarativePoliciesReport ec2:CancelExportTask ec2:CancelImageLaunchPermission ec2:CancelImportTask ec2:CancelReservedInstancesListing ec2:CancelSpotFleetRequests ec2:CancelSpotInstanceRequests ec2:ConfirmProductInstance ec2:CopyFpgaImage ec2:CopyImage ec2:CopySnapshot ec2:CopyVolumes ec2:CreateCapacityManagerDataExport ec2:CreateCapacityReservation ec2:CreateCapacityReservationBySplitting ec2:CreateCapacityReservationFleet ec2:CreateCarrierGateway ec2:CreateClientVpnEndpoint ec2:CreateClientVpnRoute ec2:CreateCoipCidr ec2:CreateCoipPool ec2:CreateCustomerGateway ec2:CreateDefaultSubnet ec2:CreateDefaultVpc ec2:CreateDelegateMacVolumeOwnershipTask ec2:CreateDhcpOptions ec2:CreateEgressOnlyInternetGateway ec2:CreateFleet ec2:CreateFlowLogs ec2:CreateFpgaImage ec2:CreateImage ec2:CreateImageUsageReport ec2:CreateInstanceConnectEndpoint ec2:CreateInstanceEventWindow ec2:CreateInstanceExportTask ec2:CreateInternetGateway ec2:CreateInterruptibleCapacityReservationAllocation ec2:CreateIpam ec2:CreateIpamExternalResourceVerificationToken ec2:CreateIpamPolicy ec2:CreateIpamPool ec2:CreateIpamPrefixListResolver ec2:CreateIpamPrefixListResolverTarget ec2:CreateIpamResourceDiscovery ec2:CreateIpamScope ec2:CreateKeyPair ec2:CreateLaunchTemplateVersion ec2:CreateLocalGatewayRoute ec2:CreateLocalGatewayRouteTable ec2:CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociation ec2:CreateLocalGatewayRouteTableVpcAssociation ec2:CreateLocalGatewayVirtualInterface ec2:CreateLocalGatewayVirtualInterfaceGroup ec2:CreateMacSystemIntegrityProtectionModificationTask ec2:CreateManagedPrefixList ec2:CreateNatGateway ec2:CreateNetworkAcl ec2:CreateNetworkAclEntry ec2:CreateNetworkInsightsAccessScope ec2:CreateNetworkInsightsPath ec2:CreateNetworkInterface ec2:CreateNetworkInterfacePermission ec2:CreatePlacementGroup ec2:CreatePublicIpv4Pool ec2:CreateReplaceRootVolumeTask ec2:CreateReservedInstancesListing ec2:CreateRestoreImageTask ec2:CreateRoute ec2:CreateRouteServer ec2:CreateRouteServerEndpoint ec2:CreateRouteServerPeer ec2:CreateRouteTable ec2:CreateSecurityGroup ec2:CreateSnapshots ec2:CreateSpotDatafeedSubscription ec2:CreateStoreImageTask ec2:CreateSubnet ec2:CreateSubnetCidrReservation ec2:CreateTrafficMirrorFilter ec2:CreateTrafficMirrorFilterRule ec2:CreateTrafficMirrorSession ec2:CreateTrafficMirrorTarget ec2:CreateTransitGateway ec2:CreateTransitGatewayConnect ec2:CreateTransitGatewayConnectPeer ec2:CreateTransitGatewayMeteringPolicy ec2:CreateTransitGatewayMeteringPolicyEntry ec2:CreateTransitGatewayMulticastDomain ec2:CreateTransitGatewayPeeringAttachment ec2:CreateTransitGatewayPolicyTable ec2:CreateTransitGatewayPrefixListReference ec2:CreateTransitGatewayRoute ec2:CreateTransitGatewayRouteTable ec2:CreateTransitGatewayRouteTableAnnouncement ec2:CreateTransitGatewayVpcAttachment ec2:CreateVerifiedAccessEndpoint ec2:CreateVerifiedAccessGroup ec2:CreateVerifiedAccessInstance ec2:CreateVerifiedAccessTrustProvider ec2:CreateVolume ec2:CreateVpc ec2:CreateVpcBlockPublicAccessExclusion ec2:CreateVpcEncryptionControl ec2:CreateVpcEndpoint ec2:CreateVpcEndpointConnectionNotification ec2:CreateVpcEndpointServiceConfiguration ec2:CreateVpcPeeringConnection ec2:CreateVpnConcentrator ec2:CreateVpnConnection ec2:CreateVpnConnectionRoute ec2:CreateVpnGateway ec2:DeleteCapacityManagerDataExport ec2:DeleteCarrierGateway ec2:DeleteClientVpnEndpoint ec2:DeleteClientVpnRoute ec2:DeleteCoipCidr ec2:DeleteCoipPool ec2:DeleteCustomerGateway ec2:DeleteDhcpOptions ec2:DeleteEgressOnlyInternetGateway ec2:DeleteFleets ec2:DeleteFlowLogs ec2:DeleteFpgaImage ec2:DeleteImageUsageReport ec2:DeleteInstanceConnectEndpoint ec2:DeleteInstanceEventWindow ec2:DeleteInternetGateway ec2:DeleteIpam ec2:DeleteIpamExternalResourceVerificationToken ec2:DeleteIpamPolicy ec2:DeleteIpamPool ec2:DeleteIpamPrefixListResolver ec2:DeleteIpamPrefixListResolverTarget ec2:DeleteIpamResourceDiscovery ec2:DeleteIpamScope ec2:DeleteKeyPair ec2:DeleteLaunchTemplate ec2:DeleteLaunchTemplateVersions ec2:DeleteLocalGatewayRoute ec2:DeleteLocalGatewayRouteTable ec2:DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociation ec2:DeleteLocalGatewayRouteTableVpcAssociation ec2:DeleteLocalGatewayVirtualInterface ec2:DeleteLocalGatewayVirtualInterfaceGroup ec2:DeleteManagedPrefixList ec2:DeleteNatGateway ec2:DeleteNetworkAcl ec2:DeleteNetworkAclEntry ec2:DeleteNetworkInsightsAccessScope ec2:DeleteNetworkInsightsAccessScopeAnalysis ec2:DeleteNetworkInsightsAnalysis ec2:DeleteNetworkInsightsPath ec2:DeleteNetworkInterface ec2:DeleteNetworkInterfacePermission ec2:DeletePlacementGroup ec2:DeletePublicIpv4Pool ec2:DeleteQueuedReservedInstances ec2:DeleteRoute ec2:DeleteRouteServer ec2:DeleteRouteServerEndpoint ec2:DeleteRouteServerPeer ec2:DeleteRouteTable ec2:DeleteSecurityGroup ec2:DeleteSpotDatafeedSubscription ec2:DeleteSubnet ec2:DeleteSubnetCidrReservation ec2:DeleteTrafficMirrorFilter ec2:DeleteTrafficMirrorFilterRule ec2:DeleteTrafficMirrorSession ec2:DeleteTrafficMirrorTarget ec2:DeleteTransitGateway ec2:DeleteTransitGatewayConnect ec2:DeleteTransitGatewayConnectPeer ec2:DeleteTransitGatewayMeteringPolicy ec2:DeleteTransitGatewayMeteringPolicyEntry ec2:DeleteTransitGatewayMulticastDomain ec2:DeleteTransitGatewayPeeringAttachment ec2:DeleteTransitGatewayPolicyTable ec2:DeleteTransitGatewayPrefixListReference ec2:DeleteTransitGatewayRoute ec2:DeleteTransitGatewayRouteTable ec2:DeleteTransitGatewayRouteTableAnnouncement ec2:DeleteTransitGatewayVpcAttachment ec2:DeleteVerifiedAccessEndpoint ec2:DeleteVerifiedAccessGroup ec2:DeleteVerifiedAccessInstance ec2:DeleteVerifiedAccessTrustProvider ec2:DeleteVolume ec2:DeleteVpc ec2:DeleteVpcBlockPublicAccessExclusion ec2:DeleteVpcEncryptionControl ec2:DeleteVpcEndpointConnectionNotifications ec2:DeleteVpcEndpointServiceConfigurations ec2:DeleteVpcEndpoints ec2:DeleteVpcPeeringConnection ec2:DeleteVpnConcentrator ec2:DeleteVpnConnection ec2:DeleteVpnConnectionRoute ec2:DeleteVpnGateway ec2:DeprovisionByoipCidr ec2:DeprovisionIpamByoasn ec2:DeprovisionIpamPoolCidr ec2:DeprovisionPublicIpv4PoolCidr ec2:DeregisterImage ec2:DeregisterInstanceEventNotificationAttributes ec2:DeregisterTransitGatewayMulticastGroupMembers ec2:DeregisterTransitGatewayMulticastGroupSources ec2:DescribeAccountAttributes ec2:DescribeAddressTransfers ec2:DescribeAddresses ec2:DescribeAddressesAttribute ec2:DescribeAggregateIdFormat ec2:DescribeAvailabilityZones ec2:DescribeAwsNetworkPerformanceMetricSubscriptions ec2:DescribeBundleTasks ec2:DescribeByoipCidrs ec2:DescribeCapacityBlockExtensionHistory ec2:DescribeCapacityBlockExtensionOfferings ec2:DescribeCapacityBlockStatus ec2:DescribeCapacityBlocks ec2:DescribeCapacityManagerDataExports ec2:DescribeCapacityReservationBillingRequests ec2:DescribeCapacityReservationFleets ec2:DescribeCapacityReservationTopology ec2:DescribeCapacityReservations ec2:DescribeCarrierGateways ec2:DescribeClassicLinkInstances ec2:DescribeClientVpnAuthorizationRules ec2:DescribeClientVpnConnections ec2:DescribeClientVpnEndpoints ec2:DescribeClientVpnRoutes ec2:DescribeClientVpnTargetNetworks ec2:DescribeCoipPools ec2:DescribeConversionTasks ec2:DescribeCustomerGateways ec2:DescribeDeclarativePoliciesReports ec2:DescribeDhcpOptions ec2:DescribeEgressOnlyInternetGateways ec2:DescribeElasticGpus ec2:DescribeExportImageTasks ec2:DescribeExportTasks ec2:DescribeFastLaunchImages ec2:DescribeFastSnapshotRestores ec2:DescribeFleetHistory ec2:DescribeFleetInstances ec2:DescribeFleets ec2:DescribeFlowLogs ec2:DescribeFpgaImageAttribute ec2:DescribeFpgaImages ec2:DescribeHostReservationOfferings ec2:DescribeHostReservations ec2:DescribeHosts ec2:DescribeIamInstanceProfileAssociations ec2:DescribeIdFormat ec2:DescribeIdentityIdFormat ec2:DescribeImageAttribute ec2:DescribeImageReferences ec2:DescribeImageUsageReportEntries ec2:DescribeImageUsageReports ec2:DescribeImportImageTasks ec2:DescribeImportSnapshotTasks ec2:DescribeInstanceConnectEndpoints ec2:DescribeInstanceCreditSpecifications ec2:DescribeInstanceEventNotificationAttributes ec2:DescribeInstanceEventWindows ec2:DescribeInstanceImageMetadata ec2:DescribeInstanceSqlHaHistoryStates ec2:DescribeInstanceSqlHaStates ec2:DescribeInstanceTopology ec2:DescribeInstanceTypes ec2:DescribeInternetGateways ec2:DescribeIpamByoasn ec2:DescribeIpamExternalResourceVerificationTokens ec2:DescribeIpamPolicies ec2:DescribeIpamPools ec2:DescribeIpamPrefixListResolverTargets ec2:DescribeIpamPrefixListResolvers ec2:DescribeIpamResourceDiscoveries ec2:DescribeIpamResourceDiscoveryAssociations ec2:DescribeIpamScopes ec2:DescribeIpams ec2:DescribeIpv6Pools ec2:DescribeKeyPairs ec2:DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations ec2:DescribeLocalGatewayRouteTableVpcAssociations ec2:DescribeLocalGatewayRouteTables ec2:DescribeLocalGatewayVirtualInterfaceGroups ec2:DescribeLocalGatewayVirtualInterfaces ec2:DescribeLocalGateways ec2:DescribeLockedSnapshots ec2:DescribeMacHosts ec2:DescribeMacModificationTasks ec2:DescribeManagedPrefixLists ec2:DescribeMovingAddresses ec2:DescribeNatGateways ec2:DescribeNetworkAcls ec2:DescribeNetworkInsightsAccessScopeAnalyses ec2:DescribeNetworkInsightsAccessScopes ec2:DescribeNetworkInsightsAnalyses ec2:DescribeNetworkInsightsPaths ec2:DescribeNetworkInterfaceAttribute ec2:DescribeNetworkInterfacePermissions ec2:DescribeNetworkInterfaces ec2:DescribeOutpostLags ec2:DescribePlacementGroups ec2:DescribePrefixLists ec2:DescribePrincipalIdFormat ec2:DescribePublicIpv4Pools ec2:DescribeRegions ec2:DescribeReplaceRootVolumeTasks ec2:DescribeReservedInstances ec2:DescribeReservedInstancesListings ec2:DescribeReservedInstancesModifications ec2:DescribeReservedInstancesOfferings ec2:DescribeRouteServerEndpoints ec2:DescribeRouteServerPeers ec2:DescribeRouteServers ec2:DescribeRouteTables ec2:DescribeScheduledInstanceAvailability ec2:DescribeScheduledInstances ec2:DescribeSecurityGroupReferences ec2:DescribeSecurityGroupRules ec2:DescribeSecurityGroupVpcAssociations ec2:DescribeSecurityGroups ec2:DescribeServiceLinkVirtualInterfaces ec2:DescribeSnapshotAttribute ec2:DescribeSnapshotTierStatus ec2:DescribeSpotDatafeedSubscription ec2:DescribeSpotFleetInstances ec2:DescribeSpotFleetRequestHistory ec2:DescribeSpotFleetRequests ec2:DescribeSpotInstanceRequests ec2:DescribeSpotPriceHistory ec2:DescribeStaleSecurityGroups ec2:DescribeStoreImageTasks ec2:DescribeTrafficMirrorFilterRules ec2:DescribeTrafficMirrorFilters ec2:DescribeTrafficMirrorSessions ec2:DescribeTrafficMirrorTargets ec2:DescribeTransitGatewayAttachments ec2:DescribeTransitGatewayConnectPeers ec2:DescribeTransitGatewayConnects ec2:DescribeTransitGatewayMeteringPolicies ec2:DescribeTransitGatewayMulticastDomains ec2:DescribeTransitGatewayPeeringAttachments ec2:DescribeTransitGatewayPolicyTables ec2:DescribeTransitGatewayRouteTableAnnouncements ec2:DescribeTransitGatewayRouteTables ec2:DescribeTransitGatewayVpcAttachments ec2:DescribeTransitGateways ec2:DescribeTrunkInterfaceAssociations ec2:DescribeVerifiedAccessEndpoints ec2:DescribeVerifiedAccessGroups ec2:DescribeVerifiedAccessInstanceLoggingConfigurations ec2:DescribeVerifiedAccessInstances ec2:DescribeVerifiedAccessTrustProviders ec2:DescribeVolumeAttribute ec2:DescribeVolumeStatus ec2:DescribeVolumes ec2:DescribeVolumesModifications ec2:DescribeVpcAttribute ec2:DescribeVpcBlockPublicAccessExclusions ec2:DescribeVpcBlockPublicAccessOptions ec2:DescribeVpcClassicLink ec2:DescribeVpcClassicLinkDnsSupport ec2:DescribeVpcEncryptionControls ec2:DescribeVpcEndpointAssociations ec2:DescribeVpcEndpointConnectionNotifications ec2:DescribeVpcEndpointConnections ec2:DescribeVpcEndpointServiceConfigurations ec2:DescribeVpcEndpointServicePermissions ec2:DescribeVpcEndpointServices ec2:DescribeVpcEndpoints ec2:DescribeVpcPeeringConnections ec2:DescribeVpcs ec2:DescribeVpnConcentrators ec2:DescribeVpnConnections ec2:DescribeVpnGateways ec2:DetachClassicLinkVpc ec2:DetachInternetGateway ec2:DetachNetworkInterface ec2:DetachVerifiedAccessTrustProvider ec2:DetachVolume ec2:DetachVpnGateway ec2:DisableAddressTransfer ec2:DisableAllowedImagesSettings ec2:DisableAwsNetworkPerformanceMetricSubscription ec2:DisableCapacityManager ec2:DisableEbsEncryptionByDefault ec2:DisableFastLaunch ec2:DisableFastSnapshotRestores ec2:DisableImage ec2:DisableImageBlockPublicAccess ec2:DisableImageDeprecation ec2:DisableImageDeregistrationProtection ec2:DisableInstanceSqlHaStandbyDetections ec2:DisableIpamOrganizationAdminAccount ec2:DisableIpamPolicy ec2:DisableRouteServerPropagation ec2:DisableSerialConsoleAccess ec2:DisableSnapshotBlockPublicAccess ec2:DisableTransitGatewayRouteTablePropagation ec2:DisableVgwRoutePropagation ec2:DisableVpcClassicLink ec2:DisableVpcClassicLinkDnsSupport ec2:DisassociateAddress ec2:DisassociateCapacityReservationBillingOwner ec2:DisassociateClientVpnTargetNetwork ec2:DisassociateEnclaveCertificateIamRole ec2:DisassociateIamInstanceProfile ec2:DisassociateInstanceEventWindow ec2:DisassociateIpamByoasn ec2:DisassociateIpamResourceDiscovery ec2:DisassociateNatGatewayAddress ec2:DisassociateRouteServer ec2:DisassociateRouteTable ec2:DisassociateSecurityGroupVpc ec2:DisassociateSubnetCidrBlock ec2:DisassociateTransitGatewayMulticastDomain ec2:DisassociateTransitGatewayPolicyTable ec2:DisassociateTransitGatewayRouteTable ec2:DisassociateTrunkInterface ec2:DisassociateVpcCidrBlock ec2:EnableAddressTransfer ec2:EnableAllowedImagesSettings ec2:EnableAwsNetworkPerformanceMetricSubscription ec2:EnableCapacityManager ec2:EnableEbsEncryptionByDefault ec2:EnableFastLaunch ec2:EnableFastSnapshotRestores ec2:EnableImage ec2:EnableImageBlockPublicAccess ec2:EnableImageDeprecation ec2:EnableImageDeregistrationProtection ec2:EnableInstanceSqlHaStandbyDetections ec2:EnableIpamOrganizationAdminAccount ec2:EnableIpamPolicy ec2:EnableReachabilityAnalyzerOrganizationSharing ec2:EnableRouteServerPropagation ec2:EnableSerialConsoleAccess ec2:EnableSnapshotBlockPublicAccess ec2:EnableTransitGatewayRouteTablePropagation ec2:EnableVgwRoutePropagation ec2:EnableVolumeIO ec2:EnableVpcClassicLink ec2:EnableVpcClassicLinkDnsSupport ec2:ExportClientVpnClientCertificateRevocationList ec2:ExportClientVpnClientConfiguration ec2:ExportImage ec2:ExportTransitGatewayRoutes ec2:ExportVerifiedAccessInstanceClientConfiguration ec2:GetActiveVpnTunnelStatus ec2:GetAllowedImagesSettings ec2:GetAssociatedEnclaveCertificateIamRoles ec2:GetAssociatedIpv6PoolCidrs ec2:GetAwsNetworkPerformanceData ec2:GetCapacityManagerAttributes ec2:GetCapacityManagerMetricData ec2:GetCapacityManagerMetricDimensions ec2:GetCapacityReservationUsage ec2:GetCoipPoolUsage ec2:GetConsoleOutput ec2:GetConsoleScreenshot ec2:GetDeclarativePoliciesReportSummary ec2:GetDefaultCreditSpecification ec2:GetEbsDefaultKmsKeyId ec2:GetEbsEncryptionByDefault ec2:GetEnabledIpamPolicy ec2:GetFlowLogsIntegrationTemplate ec2:GetGroupsForCapacityReservation ec2:GetHostReservationPurchasePreview ec2:GetImageAncestry ec2:GetImageBlockPublicAccessState ec2:GetInstanceMetadataDefaults ec2:GetInstanceTpmEkPub ec2:GetInstanceTypesFromInstanceRequirements ec2:GetInstanceUefiData ec2:GetIpamAddressHistory ec2:GetIpamDiscoveredAccounts ec2:GetIpamDiscoveredPublicAddresses ec2:GetIpamDiscoveredResourceCidrs ec2:GetIpamPolicyAllocationRules ec2:GetIpamPolicyOrganizationTargets ec2:GetIpamPoolAllocations ec2:GetIpamPoolCidrs ec2:GetIpamPrefixListResolverRules ec2:GetIpamPrefixListResolverVersionEntries ec2:GetIpamPrefixListResolverVersions ec2:GetIpamResourceCidrs ec2:GetLaunchTemplateData ec2:GetManagedPrefixListAssociations ec2:GetManagedPrefixListEntries ec2:GetNetworkInsightsAccessScopeAnalysisFindings ec2:GetNetworkInsightsAccessScopeContent ec2:GetPasswordData ec2:GetReservedInstancesExchangeQuote ec2:GetRouteServerAssociations ec2:GetRouteServerPropagations ec2:GetRouteServerRoutingDatabase ec2:GetSecurityGroupsForVpc ec2:GetSerialConsoleAccessStatus ec2:GetSnapshotBlockPublicAccessState ec2:GetSpotPlacementScores ec2:GetSubnetCidrReservations ec2:GetTransitGatewayAttachmentPropagations ec2:GetTransitGatewayMeteringPolicyEntries ec2:GetTransitGatewayMulticastDomainAssociations ec2:GetTransitGatewayPolicyTableAssociations ec2:GetTransitGatewayPolicyTableEntries ec2:GetTransitGatewayPrefixListReferences ec2:GetTransitGatewayRouteTableAssociations ec2:GetTransitGatewayRouteTablePropagations ec2:GetVerifiedAccessEndpointPolicy ec2:GetVerifiedAccessEndpointTargets ec2:GetVerifiedAccessGroupPolicy ec2:GetVpcResourcesBlockingEncryptionEnforcement ec2:GetVpnConnectionDeviceSampleConfiguration ec2:GetVpnConnectionDeviceTypes ec2:GetVpnTunnelReplacementStatus ec2:ImportClientVpnClientCertificateRevocationList ec2:ImportImage ec2:ImportInstance ec2:ImportKeyPair ec2:ImportSnapshot ec2:ImportVolume ec2:InjectVolumeIOLatency ec2:ListImagesInRecycleBin ec2:ListSnapshotsInRecycleBin ec2:ListVolumesInRecycleBin ec2:LockSnapshot ec2:ModifyAddressAttribute ec2:ModifyAvailabilityZoneGroup ec2:ModifyCapacityReservation ec2:ModifyCapacityReservationFleet ec2:ModifyClientVpnEndpoint ec2:ModifyDefaultCreditSpecification ec2:ModifyEbsDefaultKmsKeyId ec2:ModifyFleet ec2:ModifyFpgaImageAttribute ec2:ModifyHosts ec2:ModifyIdFormat ec2:ModifyIdentityIdFormat ec2:ModifyImageAttribute ec2:ModifyInstanceAttribute ec2:ModifyInstanceCapacityReservationAttributes ec2:ModifyInstanceConnectEndpoint ec2:ModifyInstanceCpuOptions ec2:ModifyInstanceCreditSpecification ec2:ModifyInstanceEventStartTime ec2:ModifyInstanceEventWindow ec2:ModifyInstanceMaintenanceOptions ec2:ModifyInstanceMetadataDefaults ec2:ModifyInstanceMetadataOptions ec2:ModifyInstanceNetworkPerformanceOptions ec2:ModifyInstancePlacement ec2:ModifyIpam ec2:ModifyIpamPolicyAllocationRules ec2:ModifyIpamPool ec2:ModifyIpamPrefixListResolver ec2:ModifyIpamPrefixListResolverTarget ec2:ModifyIpamResourceCidr ec2:ModifyIpamResourceDiscovery ec2:ModifyIpamScope ec2:ModifyLaunchTemplate ec2:ModifyLocalGatewayRoute ec2:ModifyManagedPrefixList ec2:ModifyNetworkInterfaceAttribute ec2:ModifyPrivateDnsNameOptions ec2:ModifyPublicIpDnsNameOptions ec2:ModifyReservedInstances ec2:ModifyRouteServer ec2:ModifySecurityGroupRules ec2:ModifySnapshotAttribute ec2:ModifySnapshotTier ec2:ModifySpotFleetRequest ec2:ModifySubnetAttribute ec2:ModifyTrafficMirrorFilterNetworkServices ec2:ModifyTrafficMirrorFilterRule ec2:ModifyTrafficMirrorSession ec2:ModifyTransitGateway ec2:ModifyTransitGatewayMeteringPolicy ec2:ModifyTransitGatewayPrefixListReference ec2:ModifyTransitGatewayVpcAttachment ec2:ModifyVerifiedAccessEndpoint ec2:ModifyVerifiedAccessEndpointPolicy ec2:ModifyVerifiedAccessGroup ec2:ModifyVerifiedAccessGroupPolicy ec2:ModifyVerifiedAccessInstance ec2:ModifyVerifiedAccessInstanceLoggingConfiguration ec2:ModifyVerifiedAccessTrustProvider ec2:ModifyVolume ec2:ModifyVolumeAttribute ec2:ModifyVpcAttribute ec2:ModifyVpcBlockPublicAccessExclusion ec2:ModifyVpcBlockPublicAccessOptions ec2:ModifyVpcEncryptionControl ec2:ModifyVpcEndpoint ec2:ModifyVpcEndpointConnectionNotification ec2:ModifyVpcEndpointServiceConfiguration ec2:ModifyVpcEndpointServicePayerResponsibility ec2:ModifyVpcEndpointServicePermissions ec2:ModifyVpcPeeringConnectionOptions ec2:ModifyVpcTenancy ec2:ModifyVpnConnection ec2:ModifyVpnConnectionOptions ec2:ModifyVpnTunnelCertificate ec2:ModifyVpnTunnelOptions ec2:MonitorInstances ec2:MoveAddressToVpc ec2:MoveByoipCidrToIpam ec2:MoveCapacityReservationInstances ec2:ProvisionByoipCidr ec2:ProvisionIpamByoasn ec2:ProvisionIpamPoolCidr ec2:ProvisionPublicIpv4PoolCidr ec2:PurchaseCapacityBlockExtension ec2:PurchaseHostReservation ec2:PurchaseReservedInstancesOffering ec2:PurchaseScheduledInstances ec2:RebootInstances ec2:RegisterImage ec2:RegisterInstanceEventNotificationAttributes ec2:RegisterTransitGatewayMulticastGroupMembers ec2:RegisterTransitGatewayMulticastGroupSources ec2:RejectCapacityReservationBillingOwnership ec2:RejectTransitGatewayMulticastDomainAssociations ec2:RejectTransitGatewayPeeringAttachment ec2:RejectTransitGatewayVpcAttachment ec2:RejectVpcEndpointConnections ec2:RejectVpcPeeringConnection ec2:ReleaseAddress ec2:ReleaseHosts ec2:ReleaseIpamPoolAllocation ec2:ReplaceIamInstanceProfileAssociation ec2:ReplaceImageCriteriaInAllowedImagesSettings ec2:ReplaceNetworkAclAssociation ec2:ReplaceNetworkAclEntry ec2:ReplaceRoute ec2:ReplaceRouteTableAssociation ec2:ReplaceTransitGatewayRoute ec2:ReplaceVpnTunnel ec2:ReportInstanceStatus ec2:RequestSpotFleet ec2:RequestSpotInstances ec2:ResetAddressAttribute ec2:ResetEbsDefaultKmsKeyId ec2:ResetFpgaImageAttribute ec2:ResetImageAttribute ec2:ResetInstanceAttribute ec2:ResetNetworkInterfaceAttribute ec2:ResetSnapshotAttribute ec2:RestoreAddressToClassic ec2:RestoreImageFromRecycleBin ec2:RestoreManagedPrefixListVersion ec2:RestoreSnapshotFromRecycleBin ec2:RestoreSnapshotTier ec2:RestoreVolumeFromRecycleBin ec2:RevokeClientVpnIngress ec2:RevokeSecurityGroupEgress ec2:RevokeSecurityGroupIngress ec2:RunInstances ec2:RunScheduledInstances ec2:SearchLocalGatewayRoutes ec2:SearchTransitGatewayMulticastGroups ec2:SearchTransitGatewayRoutes ec2:SendDiagnosticInterrupt ec2:StartDeclarativePoliciesReport ec2:StartInstances ec2:StartNetworkInsightsAccessScopeAnalysis ec2:StartNetworkInsightsAnalysis ec2:StartVpcEndpointServicePrivateDnsVerification ec2:TerminateClientVpnConnections ec2:UnassignIpv6Addresses ec2:UnassignPrivateIpAddresses ec2:UnassignPrivateNatGatewayAddress ec2:UnlockSnapshot ec2:UnmonitorInstances ec2:UpdateCapacityManagerOrganizationsAccess ec2:UpdateInterruptibleCapacityReservationAllocation ec2:UpdateSecurityGroupRuleDescriptionsEgress ec2:UpdateSecurityGroupRuleDescriptionsIngress ec2:WithdrawByoipCidr  | 
| ecr |  ecr:BatchCheckLayerAvailability ecr:BatchDeleteImage ecr:BatchGetImage ecr:BatchGetRepositoryScanningConfiguration ecr:CompleteLayerUpload ecr:CreatePullThroughCacheRule ecr:CreateRepositoryCreationTemplate ecr:DeleteLifecyclePolicy ecr:DeletePullThroughCacheRule ecr:DeleteRegistryPolicy ecr:DeleteRepository ecr:DeleteRepositoryCreationTemplate ecr:DeleteRepositoryPolicy ecr:DeleteSigningConfiguration ecr:DescribeImageReplicationStatus ecr:DescribeImageScanFindings ecr:DescribeImages ecr:DescribePullThroughCacheRules ecr:DescribeRegistry ecr:DescribeRepositories ecr:DescribeRepositoryCreationTemplates ecr:GetAccountSetting ecr:GetAuthorizationToken ecr:GetDownloadUrlForLayer ecr:GetLifecyclePolicy ecr:GetLifecyclePolicyPreview ecr:GetRegistryPolicy ecr:GetRegistryScanningConfiguration ecr:GetRepositoryPolicy ecr:GetSigningConfiguration ecr:InitiateLayerUpload ecr:ListImages ecr:ListPullTimeUpdateExclusions ecr:PutAccountSetting ecr:PutImage ecr:PutImageScanningConfiguration ecr:PutRegistryPolicy ecr:PutRegistryScanningConfiguration ecr:PutReplicationConfiguration ecr:StartImageScan ecr:StartLifecyclePolicyPreview ecr:UpdatePullThroughCacheRule ecr:UpdateRepositoryCreationTemplate ecr:UploadLayerPart ecr:ValidatePullThroughCacheRule  | 
| ecr-public |  ecr-public:BatchCheckLayerAvailability ecr-public:BatchDeleteImage ecr-public:CompleteLayerUpload ecr-public:CreateRepository ecr-public:DeleteRepository ecr-public:DeleteRepositoryPolicy ecr-public:DescribeImages ecr-public:DescribeRegistries ecr-public:DescribeRepositories ecr-public:GetAuthorizationToken ecr-public:GetRegistryCatalogData ecr-public:GetRepositoryCatalogData ecr-public:GetRepositoryPolicy ecr-public:InitiateLayerUpload ecr-public:PutImage ecr-public:PutRegistryCatalogData ecr-public:PutRepositoryCatalogData ecr-public:SetRepositoryPolicy ecr-public:UploadLayerPart  | 
| Ecs |  ecs:CreateCapacityProvider ecs:CreateCluster ecs:CreateService ecs:CreateTaskSet ecs:DeleteAccountSetting ecs:DeleteAttributes ecs:DeleteCapacityProvider ecs:DeleteCluster ecs:DeleteExpressGatewayService ecs:DeleteService ecs:DeleteTaskDefinitions ecs:DeleteTaskSet ecs:DeregisterContainerInstance ecs:DeregisterTaskDefinition ecs:DescribeCapacityProviders ecs:DescribeClusters ecs:DescribeContainerInstances ecs:DescribeExpressGatewayService ecs:DescribeServiceDeployments ecs:DescribeServiceRevisions ecs:DescribeServices ecs:DescribeTaskDefinition ecs:DescribeTaskSets ecs:DescribeTasks ecs:DiscoverPollEndpoint ecs:ExecuteCommand ecs:GetTaskProtection ecs:ListAccountSettings ecs:ListAttributes ecs:ListClusters ecs:ListContainerInstances ecs:ListServiceDeployments ecs:ListServices ecs:ListServicesByNamespace ecs:ListTaskDefinitionFamilies ecs:ListTaskDefinitions ecs:ListTasks ecs:PutAccountSetting ecs:PutAccountSettingDefault ecs:PutAttributes ecs:PutClusterCapacityProviders ecs:RegisterContainerInstance ecs:RunTask ecs:StartTask ecs:StopServiceDeployment ecs:StopTask ecs:SubmitAttachmentStateChanges ecs:SubmitContainerStateChange ecs:SubmitTaskStateChange ecs:UpdateCapacityProvider ecs:UpdateCluster ecs:UpdateClusterSettings ecs:UpdateContainerAgent ecs:UpdateContainerInstancesState ecs:UpdateExpressGatewayService ecs:UpdateService ecs:UpdateServicePrimaryTaskSet ecs:UpdateTaskProtection ecs:UpdateTaskSet  | 
| eks |  eks:AssociateAccessPolicy eks:AssociateEncryptionConfig eks:AssociateIdentityProviderConfig eks:CreateAccessEntry eks:CreateAddon eks:CreateCluster eks:CreateEksAnywhereSubscription eks:CreateFargateProfile eks:CreateNodegroup eks:DeleteAccessEntry eks:DeleteAddon eks:DeleteCapability eks:DeleteCluster eks:DeleteEksAnywhereSubscription eks:DeleteFargateProfile eks:DeleteNodegroup eks:DeletePodIdentityAssociation eks:DeregisterCluster eks:DescribeAccessEntry eks:DescribeAddon eks:DescribeAddonConfiguration eks:DescribeAddonVersions eks:DescribeCapability eks:DescribeCluster eks:DescribeClusterVersions eks:DescribeEksAnywhereSubscription eks:DescribeFargateProfile eks:DescribeIdentityProviderConfig eks:DescribeInsight eks:DescribeInsightsRefresh eks:DescribeNodegroup eks:DescribePodIdentityAssociation eks:DescribeUpdate eks:DisassociateAccessPolicy eks:DisassociateIdentityProviderConfig eks:ListAccessEntries eks:ListAccessPolicies eks:ListAddons eks:ListAssociatedAccessPolicies eks:ListCapabilities eks:ListClusters eks:ListEksAnywhereSubscriptions eks:ListFargateProfiles eks:ListIdentityProviderConfigs eks:ListInsights eks:ListNodegroups eks:ListPodIdentityAssociations eks:ListUpdates eks:RegisterCluster eks:StartInsightsRefresh eks:UpdateAccessEntry eks:UpdateAddon eks:UpdateCapability eks:UpdateClusterConfig eks:UpdateClusterVersion eks:UpdateEksAnywhereSubscription eks:UpdateNodegroupConfig eks:UpdateNodegroupVersion eks:UpdatePodIdentityAssociation  | 
| elasticache |  elasticache:AuthorizeCacheSecurityGroupIngress elasticache:BatchApplyUpdateAction elasticache:BatchStopUpdateAction elasticache:CompleteMigration elasticache:CopyServerlessCacheSnapshot elasticache:CopySnapshot elasticache:CreateCacheCluster elasticache:CreateCacheParameterGroup elasticache:CreateCacheSecurityGroup elasticache:CreateCacheSubnetGroup elasticache:CreateGlobalReplicationGroup elasticache:CreateReplicationGroup elasticache:CreateServerlessCache elasticache:CreateServerlessCacheSnapshot elasticache:CreateSnapshot elasticache:CreateUser elasticache:CreateUserGroup elasticache:DecreaseNodeGroupsInGlobalReplicationGroup elasticache:DecreaseReplicaCount elasticache:DeleteCacheCluster elasticache:DeleteCacheParameterGroup elasticache:DeleteCacheSecurityGroup elasticache:DeleteCacheSubnetGroup elasticache:DeleteGlobalReplicationGroup elasticache:DeleteReplicationGroup elasticache:DeleteServerlessCache elasticache:DeleteServerlessCacheSnapshot elasticache:DeleteSnapshot elasticache:DeleteUser elasticache:DeleteUserGroup elasticache:DescribeCacheClusters elasticache:DescribeCacheEngineVersions elasticache:DescribeCacheParameterGroups elasticache:DescribeCacheParameters elasticache:DescribeCacheSecurityGroups elasticache:DescribeCacheSubnetGroups elasticache:DescribeEngineDefaultParameters elasticache:DescribeEvents elasticache:DescribeGlobalReplicationGroups elasticache:DescribeReplicationGroups elasticache:DescribeReservedCacheNodes elasticache:DescribeReservedCacheNodesOfferings elasticache:DescribeServerlessCacheSnapshots elasticache:DescribeServerlessCaches elasticache:DescribeServiceUpdates elasticache:DescribeSnapshots elasticache:DescribeUpdateActions elasticache:DescribeUserGroups elasticache:DescribeUsers elasticache:DisassociateGlobalReplicationGroup elasticache:ExportServerlessCacheSnapshot elasticache:FailoverGlobalReplicationGroup elasticache:IncreaseNodeGroupsInGlobalReplicationGroup elasticache:IncreaseReplicaCount elasticache:ListAllowedNodeTypeModifications elasticache:ModifyCacheCluster elasticache:ModifyCacheParameterGroup elasticache:ModifyCacheSubnetGroup elasticache:ModifyGlobalReplicationGroup elasticache:ModifyReplicationGroup elasticache:ModifyReplicationGroupShardConfiguration elasticache:ModifyServerlessCache elasticache:ModifyUser elasticache:ModifyUserGroup elasticache:PurchaseReservedCacheNodesOffering elasticache:RebalanceSlotsInGlobalReplicationGroup elasticache:RebootCacheCluster elasticache:ResetCacheParameterGroup elasticache:RevokeCacheSecurityGroupIngress elasticache:StartMigration elasticache:TestFailover elasticache:TestMigration  | 
| elasticbeanstalk |  elasticbeanstalk:AbortEnvironmentUpdate elasticbeanstalk:ApplyEnvironmentManagedAction elasticbeanstalk:AssociateEnvironmentOperationsRole elasticbeanstalk:CheckDNSAvailability elasticbeanstalk:ComposeEnvironments elasticbeanstalk:CreateApplication elasticbeanstalk:CreateApplicationVersion elasticbeanstalk:CreateConfigurationTemplate elasticbeanstalk:CreateEnvironment elasticbeanstalk:CreatePlatformVersion elasticbeanstalk:CreateStorageLocation elasticbeanstalk:DeleteApplication elasticbeanstalk:DeleteApplicationVersion elasticbeanstalk:DeleteConfigurationTemplate elasticbeanstalk:DeleteEnvironmentConfiguration elasticbeanstalk:DeletePlatformVersion elasticbeanstalk:DescribeAccountAttributes elasticbeanstalk:DescribeApplicationVersions elasticbeanstalk:DescribeApplications elasticbeanstalk:DescribeConfigurationOptions elasticbeanstalk:DescribeConfigurationSettings elasticbeanstalk:DescribeEnvironmentHealth elasticbeanstalk:DescribeEnvironmentManagedActionHistory elasticbeanstalk:DescribeEnvironmentManagedActions elasticbeanstalk:DescribeEnvironmentResources elasticbeanstalk:DescribeEnvironments elasticbeanstalk:DescribeEvents elasticbeanstalk:DescribeInstancesHealth elasticbeanstalk:DescribePlatformVersion elasticbeanstalk:DisassociateEnvironmentOperationsRole elasticbeanstalk:ListAvailableSolutionStacks elasticbeanstalk:ListPlatformBranches elasticbeanstalk:ListPlatformVersions elasticbeanstalk:RebuildEnvironment elasticbeanstalk:RequestEnvironmentInfo elasticbeanstalk:RestartAppServer elasticbeanstalk:RetrieveEnvironmentInfo elasticbeanstalk:SwapEnvironmentCNAMEs elasticbeanstalk:TerminateEnvironment elasticbeanstalk:UpdateApplication elasticbeanstalk:UpdateApplicationResourceLifecycle elasticbeanstalk:UpdateApplicationVersion elasticbeanstalk:UpdateConfigurationTemplate elasticbeanstalk:UpdateEnvironment elasticbeanstalk:ValidateConfigurationSettings  | 
| elasticfilesystem |  elasticfilesystem:CreateAccessPoint elasticfilesystem:CreateFileSystem elasticfilesystem:CreateMountTarget elasticfilesystem:CreateReplicationConfiguration elasticfilesystem:DeleteAccessPoint elasticfilesystem:DeleteFileSystem elasticfilesystem:DeleteFileSystemPolicy elasticfilesystem:DeleteMountTarget elasticfilesystem:DeleteReplicationConfiguration elasticfilesystem:DescribeAccessPoints elasticfilesystem:DescribeAccountPreferences elasticfilesystem:DescribeBackupPolicy elasticfilesystem:DescribeFileSystemPolicy elasticfilesystem:DescribeFileSystems elasticfilesystem:DescribeLifecycleConfiguration elasticfilesystem:DescribeMountTargetSecurityGroups elasticfilesystem:DescribeMountTargets elasticfilesystem:DescribeReplicationConfigurations elasticfilesystem:ModifyMountTargetSecurityGroups elasticfilesystem:PutAccountPreferences elasticfilesystem:PutBackupPolicy elasticfilesystem:PutFileSystemPolicy elasticfilesystem:PutLifecycleConfiguration elasticfilesystem:UpdateFileSystem elasticfilesystem:UpdateFileSystemProtection  | 
| elasticloadbalancing |  elasticloadbalancing:AddListenerCertificates elasticloadbalancing:AddTrustStoreRevocations elasticloadbalancing:ApplySecurityGroupsToLoadBalancer elasticloadbalancing:AttachLoadBalancerToSubnets elasticloadbalancing:ConfigureHealthCheck elasticloadbalancing:CreateAppCookieStickinessPolicy elasticloadbalancing:CreateLBCookieStickinessPolicy elasticloadbalancing:CreateListener elasticloadbalancing:CreateLoadBalancer elasticloadbalancing:CreateLoadBalancerListeners elasticloadbalancing:CreateLoadBalancerPolicy elasticloadbalancing:CreateRule elasticloadbalancing:CreateTargetGroup elasticloadbalancing:CreateTrustStore elasticloadbalancing:CreateWebACLAssociation elasticloadbalancing:DeleteListener elasticloadbalancing:DeleteLoadBalancer elasticloadbalancing:DeleteLoadBalancerListeners elasticloadbalancing:DeleteLoadBalancerPolicy elasticloadbalancing:DeleteRule elasticloadbalancing:DeleteSharedTrustStoreAssociation elasticloadbalancing:DeleteTargetGroup elasticloadbalancing:DeleteTrustStore elasticloadbalancing:DeleteWebACLAssociation elasticloadbalancing:DeregisterInstancesFromLoadBalancer elasticloadbalancing:DeregisterTargets elasticloadbalancing:DescribeAccountLimits elasticloadbalancing:DescribeCapacityReservation elasticloadbalancing:DescribeInstanceHealth elasticloadbalancing:DescribeListenerAttributes elasticloadbalancing:DescribeListenerCertificates elasticloadbalancing:DescribeListeners elasticloadbalancing:DescribeLoadBalancerAttributes elasticloadbalancing:DescribeLoadBalancerPolicies elasticloadbalancing:DescribeLoadBalancerPolicyTypes elasticloadbalancing:DescribeLoadBalancers elasticloadbalancing:DescribeRules elasticloadbalancing:DescribeSSLPolicies elasticloadbalancing:DescribeTargetGroupAttributes elasticloadbalancing:DescribeTargetGroups elasticloadbalancing:DescribeTargetHealth elasticloadbalancing:DescribeTrustStoreAssociations elasticloadbalancing:DescribeTrustStoreRevocations elasticloadbalancing:DescribeTrustStores elasticloadbalancing:DescribeWebACLAssociation elasticloadbalancing:DetachLoadBalancerFromSubnets elasticloadbalancing:DisableAvailabilityZonesForLoadBalancer elasticloadbalancing:EnableAvailabilityZonesForLoadBalancer elasticloadbalancing:GetLoadBalancerWebACL elasticloadbalancing:GetResourcePolicy elasticloadbalancing:GetTrustStoreCaCertificatesBundle elasticloadbalancing:GetTrustStoreRevocationContent elasticloadbalancing:ModifyCapacityReservation elasticloadbalancing:ModifyIpPools elasticloadbalancing:ModifyListener elasticloadbalancing:ModifyLoadBalancerAttributes elasticloadbalancing:ModifyRule elasticloadbalancing:ModifyTargetGroup elasticloadbalancing:ModifyTargetGroupAttributes elasticloadbalancing:ModifyTrustStore elasticloadbalancing:RegisterInstancesWithLoadBalancer elasticloadbalancing:RegisterTargets elasticloadbalancing:RemoveListenerCertificates elasticloadbalancing:RemoveTrustStoreRevocations elasticloadbalancing:SetIpAddressType elasticloadbalancing:SetLoadBalancerListenerSSLCertificate elasticloadbalancing:SetLoadBalancerPoliciesForBackendServer elasticloadbalancing:SetLoadBalancerPoliciesOfListener elasticloadbalancing:SetRulePriorities elasticloadbalancing:SetSecurityGroups elasticloadbalancing:SetSubnets  | 
| elastictranscoder |  elastictranscoder:CancelJob elastictranscoder:CreateJob elastictranscoder:CreatePipeline elastictranscoder:CreatePreset elastictranscoder:DeletePipeline elastictranscoder:DeletePreset elastictranscoder:ListJobsByPipeline elastictranscoder:ListJobsByStatus elastictranscoder:ListPipelines elastictranscoder:ListPresets elastictranscoder:ReadJob elastictranscoder:ReadPipeline elastictranscoder:ReadPreset elastictranscoder:TestRole elastictranscoder:UpdatePipeline elastictranscoder:UpdatePipelineNotifications elastictranscoder:UpdatePipelineStatus  | 
| emr-containers |  emr-containers:CancelJobRun emr-containers:CreateJobTemplate emr-containers:CreateManagedEndpoint emr-containers:CreateSecurityConfiguration emr-containers:CreateVirtualCluster emr-containers:DeleteJobTemplate emr-containers:DeleteManagedEndpoint emr-containers:DeleteVirtualCluster emr-containers:DescribeJobRun emr-containers:DescribeJobTemplate emr-containers:DescribeManagedEndpoint emr-containers:DescribeSecurityConfiguration emr-containers:DescribeVirtualCluster emr-containers:GetManagedEndpointSessionCredentials emr-containers:ListJobRuns emr-containers:ListJobTemplates emr-containers:ListManagedEndpoints emr-containers:ListSecurityConfigurations emr-containers:ListVirtualClusters emr-containers:StartJobRun  | 
| emr-serverless |  emr-serverless:CancelJobRun emr-serverless:CreateApplication emr-serverless:DeleteApplication emr-serverless:GetApplication emr-serverless:GetDashboardForJobRun emr-serverless:GetJobRun emr-serverless:ListApplications emr-serverless:ListJobRunAttempts emr-serverless:ListJobRuns emr-serverless:StartApplication emr-serverless:StartJobRun emr-serverless:StopApplication emr-serverless:UpdateApplication  | 
| es |  es:AcceptInboundConnection es:AcceptInboundCrossClusterSearchConnection es:AssociatePackage es:AuthorizeVpcEndpointAccess es:CancelElasticsearchServiceSoftwareUpdate es:CancelServiceSoftwareUpdate es:CreateDomain es:CreateElasticsearchDomain es:CreateIndex es:CreateOutboundConnection es:CreateOutboundCrossClusterSearchConnection es:CreatePackage es:CreateVpcEndpoint es:DeleteDomain es:DeleteElasticsearchDomain es:DeleteElasticsearchServiceRole es:DeleteInboundConnection es:DeleteInboundCrossClusterSearchConnection es:DeleteIndex es:DeleteOutboundConnection es:DeleteOutboundCrossClusterSearchConnection es:DeletePackage es:DeleteVpcEndpoint es:DescribeDomain es:DescribeDomainAutoTunes es:DescribeDomainChangeProgress es:DescribeDomainConfig es:DescribeDomainHealth es:DescribeDomainNodes es:DescribeDomains es:DescribeDryRunProgress es:DescribeElasticsearchDomain es:DescribeElasticsearchDomainConfig es:DescribeElasticsearchDomains es:DescribeElasticsearchInstanceTypeLimits es:DescribeInboundConnections es:DescribeInboundCrossClusterSearchConnections es:DescribeInstanceTypeLimits es:DescribeOutboundConnections es:DescribeOutboundCrossClusterSearchConnections es:DescribePackages es:DescribeReservedElasticsearchInstanceOfferings es:DescribeReservedElasticsearchInstances es:DescribeReservedInstanceOfferings es:DescribeReservedInstances es:DescribeVpcEndpoints es:DissociatePackage es:DissociatePackage es:GetCompatibleElasticsearchVersions es:GetCompatibleVersions es:GetDataSource es:GetDomainMaintenanceStatus es:GetPackageVersionHistory es:GetUpgradeHistory es:GetUpgradeStatus es:ListDataSources es:ListDomainNames es:ListDomainsForPackage es:ListElasticsearchInstanceTypes es:ListElasticsearchVersions es:ListInstanceTypeDetails es:ListPackagesForDomain es:ListScheduledActions es:ListVersions es:ListVpcEndpointAccess es:ListVpcEndpoints es:ListVpcEndpointsForDomain es:PurchaseReservedElasticsearchInstanceOffering es:PurchaseReservedInstanceOffering es:RejectInboundConnection es:RejectInboundCrossClusterSearchConnection es:RevokeVpcEndpointAccess es:StartDomainMaintenance es:StartElasticsearchServiceSoftwareUpdate es:StartServiceSoftwareUpdate es:UpdateDataSource es:UpdateDomainConfig es:UpdateElasticsearchDomainConfig es:UpdateIndex es:UpdatePackage es:UpdatePackageScope es:UpdateScheduledAction es:UpdateVpcEndpoint es:UpgradeDomain es:UpgradeElasticsearchDomain  | 
| イベント |  events:ActivateEventSource events:CancelReplay events:CreateApiDestination events:CreateArchive events:CreateConnection events:CreateEndpoint events:CreateEventBus events:CreatePartnerEventSource events:DeactivateEventSource events:DeauthorizeConnection events:DeleteApiDestination events:DeleteArchive events:DeleteConnection events:DeleteEndpoint events:DeleteEventBus events:DeletePartnerEventSource events:DeleteRule events:DescribeApiDestination events:DescribeArchive events:DescribeConnection events:DescribeEndpoint events:DescribeEventBus events:DescribeEventSource events:DescribePartnerEventSource events:DescribeReplay events:DescribeRule events:DisableRule events:EnableRule events:ListApiDestinations events:ListArchives events:ListConnections events:ListEndpoints events:ListEventBuses events:ListEventSources events:ListPartnerEventSourceAccounts events:ListPartnerEventSources events:ListReplays events:ListRuleNamesByTarget events:ListRules events:ListTargetsByRule events:PutPermission events:PutRule events:PutTargets events:RemovePermission events:RemoveTargets events:StartReplay events:TestEventPattern events:UpdateApiDestination events:UpdateArchive events:UpdateConnection events:UpdateEndpoint events:UpdateEventBus  | 
| evidently |  evidently:CreateExperiment evidently:CreateFeature evidently:CreateLaunch evidently:CreateProject evidently:CreateSegment evidently:DeleteExperiment evidently:DeleteFeature evidently:DeleteLaunch evidently:DeleteProject evidently:DeleteSegment evidently:GetExperiment evidently:GetExperimentResults evidently:GetFeature evidently:GetLaunch evidently:GetProject evidently:GetSegment evidently:ListExperiments evidently:ListFeatures evidently:ListLaunches evidently:ListProjects evidently:ListSegmentReferences evidently:ListSegments evidently:StartExperiment evidently:StartLaunch evidently:StopExperiment evidently:StopLaunch evidently:TestSegmentPattern evidently:UpdateExperiment evidently:UpdateFeature evidently:UpdateLaunch evidently:UpdateProject evidently:UpdateProjectDataDelivery  | 
| finspace |  finspace:CreateEnvironment finspace:CreateKxChangeset finspace:CreateKxCluster finspace:CreateKxDatabase finspace:CreateKxDataview finspace:CreateKxEnvironment finspace:CreateKxScalingGroup finspace:CreateKxUser finspace:CreateKxVolume finspace:CreateUser finspace:DeleteEnvironment finspace:DeleteKxCluster finspace:DeleteKxClusterNode finspace:DeleteKxDatabase finspace:DeleteKxDataview finspace:DeleteKxEnvironment finspace:DeleteKxScalingGroup finspace:DeleteKxUser finspace:DeleteKxVolume finspace:GetEnvironment finspace:GetKxChangeset finspace:GetKxCluster finspace:GetKxConnectionString finspace:GetKxDatabase finspace:GetKxDataview finspace:GetKxEnvironment finspace:GetKxScalingGroup finspace:GetKxUser finspace:GetKxVolume finspace:GetLoadSampleDataSetGroupIntoEnvironmentStatus finspace:GetUser finspace:ListEnvironments finspace:ListKxChangesets finspace:ListKxClusterNodes finspace:ListKxClusters finspace:ListKxDatabases finspace:ListKxDataviews finspace:ListKxEnvironments finspace:ListKxScalingGroups finspace:ListKxUsers finspace:ListKxVolumes finspace:ListUsers finspace:LoadSampleDataSetGroupIntoEnvironment finspace:ResetUserPassword finspace:UpdateEnvironment finspace:UpdateKxClusterCodeConfiguration finspace:UpdateKxClusterDatabases finspace:UpdateKxDatabase finspace:UpdateKxDataview finspace:UpdateKxEnvironment finspace:UpdateKxEnvironmentNetwork finspace:UpdateKxUser finspace:UpdateKxVolume finspace:UpdateUser  | 
| firehose |  firehose:CreateDeliveryStream firehose:DeleteDeliveryStream firehose:DescribeDeliveryStream firehose:ListDeliveryStreams firehose:StartDeliveryStreamEncryption firehose:StopDeliveryStreamEncryption firehose:UpdateDestination  | 
| fis |  fis:CreateExperimentTemplate fis:CreateTargetAccountConfiguration fis:DeleteExperimentTemplate fis:DeleteTargetAccountConfiguration fis:GetAction fis:GetExperiment fis:GetExperimentTargetAccountConfiguration fis:GetExperimentTemplate fis:GetSafetyLever fis:GetTargetAccountConfiguration fis:GetTargetResourceType fis:ListActions fis:ListExperimentResolvedTargets fis:ListExperimentTargetAccountConfigurations fis:ListExperimentTemplates fis:ListExperiments fis:ListTargetAccountConfigurations fis:ListTargetResourceTypes fis:StartExperiment fis:StopExperiment fis:UpdateExperimentTemplate fis:UpdateSafetyLeverState fis:UpdateTargetAccountConfiguration  | 
| fms |  fms:AssociateAdminAccount fms:AssociateThirdPartyFirewall fms:BatchAssociateResource fms:BatchDisassociateResource fms:DeleteAppsList fms:DeleteNotificationChannel fms:DeletePolicy fms:DeleteProtocolsList fms:DeleteResourceSet fms:DisassociateAdminAccount fms:DisassociateThirdPartyFirewall fms:GetAdminAccount fms:GetAdminScope fms:GetAppsList fms:GetComplianceDetail fms:GetNotificationChannel fms:GetPolicy fms:GetProtectionStatus fms:GetProtocolsList fms:GetResourceSet fms:GetThirdPartyFirewallAssociationStatus fms:GetViolationDetails fms:ListAdminAccountsForOrganization fms:ListAdminsManagingAccount fms:ListAppsLists fms:ListComplianceStatus fms:ListDiscoveredResources fms:ListMemberAccounts fms:ListPolicies fms:ListProtocolsLists fms:ListResourceSetResources fms:ListResourceSets fms:ListThirdPartyFirewallFirewallPolicies fms:PutAdminAccount fms:PutAppsList fms:PutNotificationChannel fms:PutPolicy fms:PutProtocolsList fms:PutResourceSet  | 
| frauddetector |  frauddetector:BatchCreateVariable frauddetector:BatchGetVariable frauddetector:CancelBatchImportJob frauddetector:CancelBatchPredictionJob frauddetector:CreateBatchImportJob frauddetector:CreateBatchPredictionJob frauddetector:CreateDetectorVersion frauddetector:CreateList frauddetector:CreateModel frauddetector:CreateModelVersion frauddetector:CreateRule frauddetector:CreateVariable frauddetector:DeleteBatchImportJob frauddetector:DeleteBatchPredictionJob frauddetector:DeleteDetector frauddetector:DeleteDetectorVersion frauddetector:DeleteEntityType frauddetector:DeleteEvent frauddetector:DeleteEventType frauddetector:DeleteEventsByEventType frauddetector:DeleteExternalModel frauddetector:DeleteLabel frauddetector:DeleteList frauddetector:DeleteModel frauddetector:DeleteModelVersion frauddetector:DeleteOutcome frauddetector:DeleteRule frauddetector:DeleteVariable frauddetector:DescribeDetector frauddetector:DescribeModelVersions frauddetector:GetBatchImportJobs frauddetector:GetBatchPredictionJobs frauddetector:GetDeleteEventsByEventTypeStatus frauddetector:GetDetectorVersion frauddetector:GetDetectors frauddetector:GetEntityTypes frauddetector:GetEvent frauddetector:GetEventPrediction frauddetector:GetEventPredictionMetadata frauddetector:GetEventTypes frauddetector:GetExternalModels frauddetector:GetKMSEncryptionKey frauddetector:GetLabels frauddetector:GetListElements frauddetector:GetListsMetadata frauddetector:GetModelVersion frauddetector:GetModels frauddetector:GetOutcomes frauddetector:GetRules frauddetector:GetVariables frauddetector:ListEventPredictions frauddetector:PutDetector frauddetector:PutEntityType frauddetector:PutEventType frauddetector:PutExternalModel frauddetector:PutKMSEncryptionKey frauddetector:PutLabel frauddetector:PutOutcome frauddetector:SendEvent frauddetector:UpdateDetectorVersion frauddetector:UpdateDetectorVersionMetadata frauddetector:UpdateDetectorVersionStatus frauddetector:UpdateEventLabel frauddetector:UpdateList frauddetector:UpdateModel frauddetector:UpdateModelVersion frauddetector:UpdateModelVersionStatus frauddetector:UpdateRuleMetadata frauddetector:UpdateRuleVersion frauddetector:UpdateVariable  | 
| fsx |  fsx:AssociateFileSystemAliases fsx:CancelDataRepositoryTask fsx:CopyBackup fsx:CreateDataRepositoryTask fsx:CreateFileCache fsx:CreateFileSystem fsx:CreateFileSystemFromBackup fsx:CreateSnapshot fsx:CreateStorageVirtualMachine fsx:CreateVolume fsx:CreateVolumeFromBackup fsx:DeleteBackup fsx:DeleteFileCache fsx:DeleteFileSystem fsx:DeleteSnapshot fsx:DeleteStorageVirtualMachine fsx:DeleteVolume fsx:DescribeBackups fsx:DescribeDataRepositoryAssociations fsx:DescribeDataRepositoryTasks fsx:DescribeFileCaches fsx:DescribeFileSystemAliases fsx:DescribeFileSystems fsx:DescribeS3AccessPointAttachments fsx:DescribeSharedVpcConfiguration fsx:DescribeSnapshots fsx:DescribeStorageVirtualMachines fsx:DescribeVolumes fsx:DetachAndDeleteS3AccessPoint fsx:DisassociateFileSystemAliases fsx:ReleaseFileSystemNfsV3Locks fsx:RestoreVolumeFromSnapshot fsx:StartMisconfiguredStateRecovery fsx:UpdateDataRepositoryAssociation fsx:UpdateFileCache fsx:UpdateFileSystem fsx:UpdateSharedVpcConfiguration fsx:UpdateSnapshot fsx:UpdateStorageVirtualMachine fsx:UpdateVolume  | 
| gamelift |  gamelift:AcceptMatch gamelift:ClaimGameServer gamelift:CreateAlias gamelift:CreateBuild gamelift:CreateContainerGroupDefinition gamelift:CreateFleet gamelift:CreateFleetLocations gamelift:CreateGameServerGroup gamelift:CreateGameSession gamelift:CreateGameSessionQueue gamelift:CreateLocation gamelift:CreateMatchmakingConfiguration gamelift:CreateMatchmakingRuleSet gamelift:CreatePlayerSession gamelift:CreatePlayerSessions gamelift:CreateScript gamelift:CreateVpcPeeringAuthorization gamelift:CreateVpcPeeringConnection gamelift:DeleteAlias gamelift:DeleteBuild gamelift:DeleteContainerGroupDefinition gamelift:DeleteFleet gamelift:DeleteFleetLocations gamelift:DeleteGameServerGroup gamelift:DeleteGameSessionQueue gamelift:DeleteLocation gamelift:DeleteMatchmakingConfiguration gamelift:DeleteMatchmakingRuleSet gamelift:DeleteScalingPolicy gamelift:DeleteScript gamelift:DeleteVpcPeeringAuthorization gamelift:DeleteVpcPeeringConnection gamelift:DeregisterCompute gamelift:DeregisterGameServer gamelift:DescribeAlias gamelift:DescribeBuild gamelift:DescribeCompute gamelift:DescribeContainerFleet gamelift:DescribeContainerGroupDefinition gamelift:DescribeEC2InstanceLimits gamelift:DescribeFleetAttributes gamelift:DescribeFleetCapacity gamelift:DescribeFleetEvents gamelift:DescribeFleetLocationAttributes gamelift:DescribeFleetLocationCapacity gamelift:DescribeFleetLocationUtilization gamelift:DescribeFleetPortSettings gamelift:DescribeFleetUtilization gamelift:DescribeGameServer gamelift:DescribeGameServerGroup gamelift:DescribeGameServerInstances gamelift:DescribeGameSessionDetails gamelift:DescribeGameSessionPlacement gamelift:DescribeGameSessionQueues gamelift:DescribeGameSessions gamelift:DescribeInstances gamelift:DescribeMatchmaking gamelift:DescribeMatchmakingConfigurations gamelift:DescribeMatchmakingRuleSets gamelift:DescribePlayerSessions gamelift:DescribeRuntimeConfiguration gamelift:DescribeScalingPolicies gamelift:DescribeScript gamelift:DescribeVpcPeeringAuthorizations gamelift:DescribeVpcPeeringConnections gamelift:GetComputeAccess gamelift:GetComputeAuthToken gamelift:GetGameSessionLogUrl gamelift:GetInstanceAccess gamelift:ListAliases gamelift:ListBuilds gamelift:ListCompute gamelift:ListContainerFleets gamelift:ListContainerGroupDefinitionVersions gamelift:ListContainerGroupDefinitions gamelift:ListFleetDeployments gamelift:ListFleets gamelift:ListGameServerGroups gamelift:ListGameServers gamelift:ListLocations gamelift:ListScripts gamelift:PutScalingPolicy gamelift:RegisterCompute gamelift:RegisterGameServer gamelift:RequestUploadCredentials gamelift:ResolveAlias gamelift:ResumeGameServerGroup gamelift:SearchGameSessions gamelift:StartFleetActions gamelift:StartGameSessionPlacement gamelift:StartMatchBackfill gamelift:StartMatchmaking gamelift:StopFleetActions gamelift:StopGameSessionPlacement gamelift:StopMatchmaking gamelift:SuspendGameServerGroup gamelift:TerminateGameSession gamelift:UpdateAlias gamelift:UpdateBuild gamelift:UpdateContainerGroupDefinition gamelift:UpdateFleetAttributes gamelift:UpdateFleetCapacity gamelift:UpdateFleetPortSettings gamelift:UpdateGameServer gamelift:UpdateGameServerGroup gamelift:UpdateGameSession gamelift:UpdateGameSessionQueue gamelift:UpdateMatchmakingConfiguration gamelift:UpdateRuntimeConfiguration gamelift:UpdateScript gamelift:ValidateMatchmakingRuleSet  | 
| geo |  geo:AssociateTrackerConsumer geo:BatchDeleteDevicePositionHistory geo:BatchDeleteGeofence geo:BatchEvaluateGeofences geo:BatchGetDevicePosition geo:BatchPutGeofence geo:BatchUpdateDevicePosition geo:CalculateRoute geo:CalculateRouteMatrix geo:CreateGeofenceCollection geo:CreateMap geo:CreatePlaceIndex geo:CreateRouteCalculator geo:CreateTracker geo:DeleteGeofenceCollection geo:DeleteKey geo:DeleteMap geo:DeletePlaceIndex geo:DeleteRouteCalculator geo:DeleteTracker geo:DescribeGeofenceCollection geo:DescribeKey geo:DescribeMap geo:DescribePlaceIndex geo:DescribeRouteCalculator geo:DescribeTracker geo:DisassociateTrackerConsumer geo:ForecastGeofenceEvents geo:GetDevicePosition geo:GetDevicePositionHistory geo:GetGeofence geo:GetMapGlyphs geo:GetMapSprites geo:GetMapStyleDescriptor geo:GetMapTile geo:GetPlace geo:ListDevicePositions geo:ListGeofenceCollections geo:ListGeofences geo:ListKeys geo:ListMaps geo:ListPlaceIndexes geo:ListRouteCalculators geo:ListTrackerConsumers geo:ListTrackers geo:PutGeofence geo:SearchPlaceIndexForPosition geo:SearchPlaceIndexForSuggestions geo:SearchPlaceIndexForText geo:UpdateGeofenceCollection geo:UpdateKey geo:UpdateMap geo:UpdatePlaceIndex geo:UpdateRouteCalculator geo:UpdateTracker geo:VerifyDevicePosition  | 
| glacier |  glacier:AbortMultipartUpload glacier:AbortVaultLock glacier:CompleteMultipartUpload glacier:CompleteVaultLock glacier:CreateVault glacier:DeleteArchive glacier:DeleteVault glacier:DeleteVaultAccessPolicy glacier:DeleteVaultNotifications glacier:DescribeJob glacier:DescribeVault glacier:GetDataRetrievalPolicy glacier:GetJobOutput glacier:GetVaultAccessPolicy glacier:GetVaultLock glacier:GetVaultNotifications glacier:InitiateJob glacier:InitiateMultipartUpload glacier:InitiateVaultLock glacier:ListJobs glacier:ListMultipartUploads glacier:ListParts glacier:ListProvisionedCapacity glacier:ListVaults glacier:PurchaseProvisionedCapacity glacier:SetDataRetrievalPolicy glacier:SetVaultAccessPolicy glacier:SetVaultNotifications glacier:UploadArchive glacier:UploadMultipartPart  | 
| grafana |  grafana:AssociateLicense grafana:CreateWorkspace grafana:CreateWorkspaceApiKey grafana:CreateWorkspaceServiceAccount grafana:CreateWorkspaceServiceAccountToken grafana:DeleteWorkspace grafana:DeleteWorkspaceApiKey grafana:DeleteWorkspaceServiceAccount grafana:DeleteWorkspaceServiceAccountToken grafana:DescribeWorkspace grafana:DescribeWorkspaceAuthentication grafana:DescribeWorkspaceConfiguration grafana:DisassociateLicense grafana:ListPermissions grafana:ListVersions grafana:ListWorkspaceServiceAccountTokens grafana:ListWorkspaceServiceAccounts grafana:ListWorkspaces grafana:UpdatePermissions grafana:UpdateWorkspace grafana:UpdateWorkspaceAuthentication grafana:UpdateWorkspaceConfiguration  | 
| greengrass |  greengrass:AssociateRoleToGroup greengrass:AssociateServiceRoleToAccount greengrass:BatchAssociateClientDeviceWithCoreDevice greengrass:BatchDisassociateClientDeviceFromCoreDevice greengrass:CancelDeployment greengrass:CreateComponentVersion greengrass:CreateConnectorDefinition greengrass:CreateConnectorDefinitionVersion greengrass:CreateCoreDefinition greengrass:CreateCoreDefinitionVersion greengrass:CreateDeployment greengrass:CreateDeviceDefinition greengrass:CreateDeviceDefinitionVersion greengrass:CreateFunctionDefinition greengrass:CreateFunctionDefinitionVersion greengrass:CreateGroup greengrass:CreateGroupCertificateAuthority greengrass:CreateGroupVersion greengrass:CreateLoggerDefinition greengrass:CreateLoggerDefinitionVersion greengrass:CreateResourceDefinition greengrass:CreateResourceDefinitionVersion greengrass:CreateSoftwareUpdateJob greengrass:CreateSubscriptionDefinition greengrass:CreateSubscriptionDefinitionVersion greengrass:DeleteComponent greengrass:DeleteConnectorDefinition greengrass:DeleteCoreDefinition greengrass:DeleteCoreDevice greengrass:DeleteDeployment greengrass:DeleteDeviceDefinition greengrass:DeleteFunctionDefinition greengrass:DeleteGroup greengrass:DeleteLoggerDefinition greengrass:DeleteResourceDefinition greengrass:DeleteSubscriptionDefinition greengrass:DescribeComponent greengrass:DisassociateRoleFromGroup greengrass:DisassociateServiceRoleFromAccount greengrass:GetAssociatedRole greengrass:GetBulkDeploymentStatus greengrass:GetComponent greengrass:GetComponentVersionArtifact greengrass:GetConnectivityInfo greengrass:GetConnectorDefinition greengrass:GetConnectorDefinitionVersion greengrass:GetCoreDefinition greengrass:GetCoreDefinitionVersion greengrass:GetCoreDevice greengrass:GetDeployment greengrass:GetDeploymentStatus greengrass:GetDeviceDefinition greengrass:GetDeviceDefinitionVersion greengrass:GetFunctionDefinition greengrass:GetFunctionDefinitionVersion greengrass:GetGroup greengrass:GetGroupCertificateAuthority greengrass:GetGroupCertificateConfiguration greengrass:GetGroupVersion greengrass:GetLoggerDefinition greengrass:GetLoggerDefinitionVersion greengrass:GetResourceDefinition greengrass:GetResourceDefinitionVersion greengrass:GetServiceRoleForAccount greengrass:GetSubscriptionDefinition greengrass:GetSubscriptionDefinitionVersion greengrass:GetThingRuntimeConfiguration greengrass:ListBulkDeploymentDetailedReports greengrass:ListBulkDeployments greengrass:ListClientDevicesAssociatedWithCoreDevice greengrass:ListComponentVersions greengrass:ListComponents greengrass:ListConnectorDefinitionVersions greengrass:ListConnectorDefinitions greengrass:ListCoreDefinitionVersions greengrass:ListCoreDefinitions greengrass:ListCoreDevices greengrass:ListDeployments greengrass:ListDeviceDefinitionVersions greengrass:ListDeviceDefinitions greengrass:ListEffectiveDeployments greengrass:ListFunctionDefinitionVersions greengrass:ListFunctionDefinitions greengrass:ListGroupCertificateAuthorities greengrass:ListGroupVersions greengrass:ListGroups greengrass:ListInstalledComponents greengrass:ListLoggerDefinitionVersions greengrass:ListLoggerDefinitions greengrass:ListResourceDefinitionVersions greengrass:ListResourceDefinitions greengrass:ListSubscriptionDefinitionVersions greengrass:ListSubscriptionDefinitions greengrass:ResetDeployments greengrass:StartBulkDeployment greengrass:StopBulkDeployment greengrass:UpdateConnectivityInfo greengrass:UpdateConnectorDefinition greengrass:UpdateCoreDefinition greengrass:UpdateDeviceDefinition greengrass:UpdateFunctionDefinition greengrass:UpdateGroup greengrass:UpdateGroupCertificateConfiguration greengrass:UpdateLoggerDefinition greengrass:UpdateResourceDefinition greengrass:UpdateSubscriptionDefinition greengrass:UpdateThingRuntimeConfiguration  | 
| groundstation |  groundstation:CancelContact groundstation:CreateConfig groundstation:CreateDataflowEndpointGroup groundstation:CreateDataflowEndpointGroupV2 groundstation:CreateEphemeris groundstation:CreateMissionProfile groundstation:DeleteConfig groundstation:DeleteDataflowEndpointGroup groundstation:DeleteEphemeris groundstation:DeleteMissionProfile groundstation:DescribeContact groundstation:DescribeEphemeris groundstation:GetConfig groundstation:GetDataflowEndpointGroup groundstation:GetMinuteUsage groundstation:GetMissionProfile groundstation:GetSatellite groundstation:ListConfigs groundstation:ListContacts groundstation:ListDataflowEndpointGroups groundstation:ListEphemerides groundstation:ListGroundStations groundstation:ListMissionProfiles groundstation:ListSatellites groundstation:RegisterAgent groundstation:ReserveContact groundstation:UpdateAgentStatus groundstation:UpdateConfig groundstation:UpdateEphemeris groundstation:UpdateMissionProfile  | 
| guardduty |  guardduty:AcceptAdministratorInvitation guardduty:AcceptInvitation guardduty:ArchiveFindings guardduty:CreateDetector guardduty:CreateFilter guardduty:CreateIPSet guardduty:CreateMalwareProtectionPlan guardduty:CreateMembers guardduty:CreatePublishingDestination guardduty:CreateSampleFindings guardduty:CreateThreatEntitySet guardduty:CreateThreatIntelSet guardduty:CreateTrustedEntitySet guardduty:DeclineInvitations guardduty:DeleteDetector guardduty:DeleteFilter guardduty:DeleteIPSet guardduty:DeleteInvitations guardduty:DeleteMalwareProtectionPlan guardduty:DeleteMembers guardduty:DeletePublishingDestination guardduty:DeleteThreatEntitySet guardduty:DeleteThreatIntelSet guardduty:DeleteTrustedEntitySet guardduty:DescribeMalwareScans guardduty:DescribeOrganizationConfiguration guardduty:DescribePublishingDestination guardduty:DisableOrganizationAdminAccount guardduty:DisassociateFromAdministratorAccount guardduty:DisassociateFromMasterAccount guardduty:DisassociateMembers guardduty:EnableOrganizationAdminAccount guardduty:GetAdministratorAccount guardduty:GetCoverageStatistics guardduty:GetDetector guardduty:GetFilter guardduty:GetFindings guardduty:GetFindingsStatistics guardduty:GetIPSet guardduty:GetInvitationsCount guardduty:GetMalwareProtectionPlan guardduty:GetMalwareScan guardduty:GetMalwareScanSettings guardduty:GetMasterAccount guardduty:GetMemberDetectors guardduty:GetMembers guardduty:GetOrganizationStatistics guardduty:GetRemainingFreeTrialDays guardduty:GetThreatEntitySet guardduty:GetThreatIntelSet guardduty:GetTrustedEntitySet guardduty:GetUsageStatistics guardduty:InviteMembers guardduty:ListCoverage guardduty:ListDetectors guardduty:ListFilters guardduty:ListFindings guardduty:ListIPSets guardduty:ListInvitations guardduty:ListMalwareProtectionPlans guardduty:ListMalwareScans guardduty:ListMembers guardduty:ListOrganizationAdminAccounts guardduty:ListPublishingDestinations guardduty:ListThreatEntitySets guardduty:ListThreatIntelSets guardduty:ListTrustedEntitySets guardduty:StartMalwareScan guardduty:StartMonitoringMembers guardduty:StopMonitoringMembers guardduty:UnarchiveFindings guardduty:UpdateDetector guardduty:UpdateFilter guardduty:UpdateFindingsFeedback guardduty:UpdateIPSet guardduty:UpdateMalwareProtectionPlan guardduty:UpdateMalwareScanSettings guardduty:UpdateMemberDetectors guardduty:UpdateOrganizationConfiguration guardduty:UpdatePublishingDestination guardduty:UpdateThreatEntitySet guardduty:UpdateThreatIntelSet guardduty:UpdateTrustedEntitySet  | 
| healthlake |  healthlake:CancelFHIRExportJobWithDelete healthlake:CreateFHIRDatastore healthlake:CreateResource healthlake:DeleteFHIRDatastore healthlake:DeleteResource healthlake:DescribeFHIRDatastore healthlake:DescribeFHIRExportJob healthlake:DescribeFHIRExportJobWithGet healthlake:DescribeFHIRImportJob healthlake:GetCapabilities healthlake:ListFHIRDatastores healthlake:ListFHIRExportJobs healthlake:ListFHIRImportJobs healthlake:ReadResource healthlake:SearchEverything healthlake:SearchWithGet healthlake:SearchWithPost healthlake:StartFHIRExportJob healthlake:StartFHIRExportJobWithPost healthlake:StartFHIRImportJob healthlake:UpdateResource  | 
| honeycode |  honeycode:BatchCreateTableRows honeycode:BatchDeleteTableRows honeycode:BatchUpdateTableRows honeycode:BatchUpsertTableRows honeycode:DescribeTableDataImportJob honeycode:GetScreenData honeycode:InvokeScreenAutomation honeycode:ListTableColumns honeycode:ListTableRows honeycode:ListTables honeycode:QueryTableRows honeycode:StartTableDataImportJob  | 
| iam |  iam:AddClientIDToOpenIDConnectProvider iam:AddRoleToInstanceProfile iam:AddUserToGroup iam:AttachGroupPolicy iam:AttachRolePolicy iam:AttachUserPolicy iam:ChangePassword iam:CreateAccessKey iam:CreateAccountAlias iam:CreateGroup iam:CreateInstanceProfile iam:CreateLoginProfile iam:CreateOpenIDConnectProvider iam:CreatePolicy iam:CreatePolicyVersion iam:CreateRole iam:CreateSAMLProvider iam:CreateServiceLinkedRole iam:CreateServiceSpecificCredential iam:CreateUser iam:CreateVirtualMFADevice iam:DeactivateMFADevice iam:DeleteAccessKey iam:DeleteAccountAlias iam:DeleteAccountPasswordPolicy iam:DeleteCloudFrontPublicKey iam:DeleteGroup iam:DeleteGroupPolicy iam:DeleteInstanceProfile iam:DeleteLoginProfile iam:DeleteOpenIDConnectProvider iam:DeletePolicy iam:DeletePolicyVersion iam:DeleteRole iam:DeleteRolePermissionsBoundary iam:DeleteRolePolicy iam:DeleteSAMLProvider iam:DeleteSSHPublicKey iam:DeleteServerCertificate iam:DeleteServiceLinkedRole iam:DeleteServiceSpecificCredential iam:DeleteSigningCertificate iam:DeleteUser iam:DeleteUserPermissionsBoundary iam:DeleteUserPolicy iam:DeleteVirtualMFADevice iam:DetachGroupPolicy iam:DetachRolePolicy iam:DetachUserPolicy iam:DisableOrganizationsRootCredentialsManagement iam:DisableOrganizationsRootSessions iam:DisableOutboundWebIdentityFederation iam:EnableMFADevice iam:EnableOrganizationsRootCredentialsManagement iam:EnableOrganizationsRootSessions iam:EnableOutboundWebIdentityFederation iam:GenerateCredentialReport iam:GenerateOrganizationsAccessReport iam:GenerateServiceLastAccessedDetails iam:GetAccessKeyLastUsed iam:GetAccountAuthorizationDetails iam:GetAccountEmailAddress iam:GetAccountName iam:GetAccountPasswordPolicy iam:GetAccountSummary iam:GetCloudFrontPublicKey iam:GetContextKeysForCustomPolicy iam:GetContextKeysForPrincipalPolicy iam:GetCredentialReport iam:GetGroup iam:GetGroupPolicy iam:GetInstanceProfile iam:GetLoginProfile iam:GetMFADevice iam:GetOpenIDConnectProvider iam:GetOrganizationsAccessReport iam:GetOutboundWebIdentityFederationInfo iam:GetPolicy iam:GetPolicyVersion iam:GetRole iam:GetRolePolicy iam:GetSAMLProvider iam:GetSSHPublicKey iam:GetServerCertificate iam:GetServiceLastAccessedDetails iam:GetServiceLastAccessedDetailsWithEntities iam:GetServiceLinkedRoleDeletionStatus iam:GetUser iam:GetUserPolicy iam:ListAccessKeys iam:ListAccountAliases iam:ListAttachedGroupPolicies iam:ListAttachedRolePolicies iam:ListAttachedUserPolicies iam:ListCloudFrontPublicKeys iam:ListDelegationRequests iam:ListEntitiesForPolicy iam:ListGroupPolicies iam:ListGroups iam:ListGroupsForUser iam:ListInstanceProfiles iam:ListInstanceProfilesForRole iam:ListMFADevices iam:ListOpenIDConnectProviders iam:ListOrganizationsFeatures iam:ListPolicies iam:ListPoliciesGrantingServiceAccess iam:ListPolicyVersions iam:ListRolePolicies iam:ListRoles iam:ListSAMLProviders iam:ListSSHPublicKeys iam:ListSTSRegionalEndpointsStatus iam:ListServerCertificates iam:ListServiceSpecificCredentials iam:ListSigningCertificates iam:ListUserPolicies iam:ListUsers iam:ListVirtualMFADevices iam:PutGroupPolicy iam:PutRolePermissionsBoundary iam:PutRolePolicy iam:PutUserPermissionsBoundary iam:PutUserPolicy iam:RemoveClientIDFromOpenIDConnectProvider iam:RemoveRoleFromInstanceProfile iam:RemoveUserFromGroup iam:ResetServiceSpecificCredential iam:ResyncMFADevice iam:SetDefaultPolicyVersion iam:SetSTSRegionalEndpointStatus iam:SetSecurityTokenServicePreferences iam:SimulateCustomPolicy iam:SimulatePrincipalPolicy iam:UpdateAccessKey iam:UpdateAccountEmailAddress iam:UpdateAccountName iam:UpdateAccountPasswordPolicy iam:UpdateAssumeRolePolicy iam:UpdateCloudFrontPublicKey iam:UpdateGroup iam:UpdateLoginProfile iam:UpdateOpenIDConnectProviderThumbprint iam:UpdateRole iam:UpdateRoleDescription iam:UpdateSAMLProvider iam:UpdateSSHPublicKey iam:UpdateServerCertificate iam:UpdateServiceSpecificCredential iam:UpdateSigningCertificate iam:UpdateUser iam:UploadCloudFrontPublicKey iam:UploadSSHPublicKey iam:UploadServerCertificate iam:UploadSigningCertificate  | 
| identitystore |  identitystore:CreateGroup identitystore:CreateGroupMembership identitystore:CreateUser identitystore:DeleteGroup identitystore:DeleteGroupMembership identitystore:DeleteUser identitystore:DescribeGroup identitystore:DescribeGroupMembership identitystore:DescribeUser identitystore:GetGroupId identitystore:GetGroupMembershipId identitystore:GetUserId identitystore:IsMemberInGroups identitystore:ListGroupMemberships identitystore:ListGroupMembershipsForMember identitystore:ListGroups identitystore:ListUsers identitystore:UpdateGroup identitystore:UpdateUser  | 
| imagebuilder |  imagebuilder:CancelImageCreation imagebuilder:CancelLifecycleExecution imagebuilder:CreateComponent imagebuilder:CreateContainerRecipe imagebuilder:CreateDistributionConfiguration imagebuilder:CreateImage imagebuilder:CreateImagePipeline imagebuilder:CreateImageRecipe imagebuilder:CreateInfrastructureConfiguration imagebuilder:CreateLifecyclePolicy imagebuilder:CreateWorkflow imagebuilder:DeleteComponent imagebuilder:DeleteContainerRecipe imagebuilder:DeleteDistributionConfiguration imagebuilder:DeleteImage imagebuilder:DeleteImagePipeline imagebuilder:DeleteImageRecipe imagebuilder:DeleteInfrastructureConfiguration imagebuilder:DeleteLifecyclePolicy imagebuilder:DeleteWorkflow imagebuilder:DistributeImage imagebuilder:GetComponentPolicy imagebuilder:GetContainerRecipePolicy imagebuilder:GetImagePolicy imagebuilder:GetImageRecipePolicy imagebuilder:GetLifecycleExecution imagebuilder:GetLifecyclePolicy imagebuilder:GetMarketplaceResource imagebuilder:GetWorkflowExecution imagebuilder:GetWorkflowStepExecution imagebuilder:ImportComponent imagebuilder:ImportDiskImage imagebuilder:ImportVmImage imagebuilder:ListComponentBuildVersions imagebuilder:ListComponents imagebuilder:ListContainerRecipes imagebuilder:ListDistributionConfigurations imagebuilder:ListImageBuildVersions imagebuilder:ListImagePackages imagebuilder:ListImagePipelineImages imagebuilder:ListImagePipelines imagebuilder:ListImageRecipes imagebuilder:ListImageScanFindingAggregations imagebuilder:ListImageScanFindings imagebuilder:ListImages imagebuilder:ListInfrastructureConfigurations imagebuilder:ListLifecycleExecutionResources imagebuilder:ListLifecycleExecutions imagebuilder:ListLifecyclePolicies imagebuilder:ListWaitingWorkflowSteps imagebuilder:ListWorkflowExecutions imagebuilder:ListWorkflowStepExecutions imagebuilder:ListWorkflows imagebuilder:PutComponentPolicy imagebuilder:PutContainerRecipePolicy imagebuilder:PutImagePolicy imagebuilder:PutImageRecipePolicy imagebuilder:RetryImage imagebuilder:SendWorkflowStepAction imagebuilder:StartImagePipelineExecution imagebuilder:StartResourceStateUpdate imagebuilder:UpdateDistributionConfiguration imagebuilder:UpdateImagePipeline imagebuilder:UpdateInfrastructureConfiguration  | 
| inspector |  inspector:AddAttributesToFindings inspector:CreateAssessmentTarget inspector:CreateAssessmentTemplate inspector:CreateExclusionsPreview inspector:CreateResourceGroup inspector:DeleteAssessmentRun inspector:DeleteAssessmentTarget inspector:DeleteAssessmentTemplate inspector:DescribeAssessmentRuns inspector:DescribeAssessmentTargets inspector:DescribeAssessmentTemplates inspector:DescribeCrossAccountAccessRole inspector:DescribeExclusions inspector:DescribeFindings inspector:DescribeResourceGroups inspector:DescribeRulesPackages inspector:GetAssessmentReport inspector:GetExclusionsPreview inspector:GetTelemetryMetadata inspector:ListAssessmentRunAgents inspector:ListAssessmentRuns inspector:ListAssessmentTargets inspector:ListAssessmentTemplates inspector:ListEventSubscriptions inspector:ListExclusions inspector:ListFindings inspector:ListRulesPackages inspector:PreviewAgents inspector:RegisterCrossAccountAccessRole inspector:RemoveAttributesFromFindings inspector:StartAssessmentRun inspector:StopAssessmentRun inspector:SubscribeToEvent inspector:UnsubscribeFromEvent inspector:UpdateAssessmentTarget  | 
| inspector2 |  inspector2:AssociateMember inspector2:BatchGetAccountStatus inspector2:BatchGetCodeSnippet inspector2:BatchGetFindingDetails inspector2:BatchGetFreeTrialInfo inspector2:BatchGetMemberEc2DeepInspectionStatus inspector2:BatchUpdateMemberEc2DeepInspectionStatus inspector2:CancelFindingsReport inspector2:CancelSbomExport inspector2:CreateCisScanConfiguration inspector2:CreateCodeSecurityIntegration inspector2:CreateFilter inspector2:CreateFindingsReport inspector2:CreateSbomExport inspector2:DeleteCisScanConfiguration inspector2:DeleteCodeSecurityIntegration inspector2:DeleteFilter inspector2:DescribeOrganizationConfiguration inspector2:Disable inspector2:DisableDelegatedAdminAccount inspector2:DisassociateMember inspector2:Enable inspector2:EnableDelegatedAdminAccount inspector2:GetCisScanReport inspector2:GetCisScanResultDetails inspector2:GetClustersForImage inspector2:GetCodeSecurityIntegration inspector2:GetCodeSecurityScan inspector2:GetConfiguration inspector2:GetDelegatedAdminAccount inspector2:GetEc2DeepInspectionConfiguration inspector2:GetEncryptionKey inspector2:GetFindingsReportStatus inspector2:GetMember inspector2:GetSbomExport inspector2:ListAccountPermissions inspector2:ListCisScanConfigurations inspector2:ListCisScanResultsAggregatedByChecks inspector2:ListCisScanResultsAggregatedByTargetResource inspector2:ListCisScans inspector2:ListCodeSecurityIntegrations inspector2:ListCodeSecurityScanConfigurations inspector2:ListCoverage inspector2:ListCoverageStatistics inspector2:ListDelegatedAdminAccounts inspector2:ListFilters inspector2:ListFindingAggregations inspector2:ListFindings inspector2:ListMembers inspector2:ListUsageTotals inspector2:ResetEncryptionKey inspector2:SearchVulnerabilities inspector2:SendCisSessionHealth inspector2:SendCisSessionTelemetry inspector2:StartCisSession inspector2:StartCodeSecurityScan inspector2:StopCisSession inspector2:UpdateCisScanConfiguration inspector2:UpdateCodeSecurityIntegration inspector2:UpdateConfiguration inspector2:UpdateEc2DeepInspectionConfiguration inspector2:UpdateEncryptionKey inspector2:UpdateFilter inspector2:UpdateOrgEc2DeepInspectionConfiguration inspector2:UpdateOrganizationConfiguration  | 
| iot |  iot:AcceptCertificateTransfer iot:AddThingToBillingGroup iot:AddThingToThingGroup iot:AssociateSbomWithPackageVersion iot:AssociateTargetsWithJob iot:AttachPolicy iot:AttachPrincipalPolicy iot:AttachSecurityProfile iot:AttachThingPrincipal iot:CancelAuditMitigationActionsTask iot:CancelAuditTask iot:CancelCertificateTransfer iot:CancelDetectMitigationActionsTask iot:CancelJob iot:CancelJobExecution iot:ClearDefaultAuthorizer iot:ConfirmTopicRuleDestination iot:CreateAuditSuppression iot:CreateAuthorizer iot:CreateBillingGroup iot:CreateCertificateFromCsr iot:CreateCertificateProvider iot:CreateCommand iot:CreateCustomMetric iot:CreateDimension iot:CreateDomainConfiguration iot:CreateDynamicThingGroup iot:CreateFleetMetric iot:CreateJob iot:CreateJobTemplate iot:CreateKeysAndCertificate iot:CreateMitigationAction iot:CreateOTAUpdate iot:CreatePackage iot:CreatePackageVersion iot:CreatePolicy iot:CreatePolicyVersion iot:CreateProvisioningClaim iot:CreateProvisioningTemplate iot:CreateProvisioningTemplateVersion iot:CreateRoleAlias iot:CreateScheduledAudit iot:CreateSecurityProfile iot:CreateStream iot:CreateThing iot:CreateThingGroup iot:CreateThingType iot:CreateTopicRule iot:CreateTopicRuleDestination iot:DeleteAccountAuditConfiguration iot:DeleteAuditSuppression iot:DeleteAuthorizer iot:DeleteBillingGroup iot:DeleteCACertificate iot:DeleteCertificate iot:DeleteCertificateProvider iot:DeleteCommand iot:DeleteCustomMetric iot:DeleteDimension iot:DeleteDomainConfiguration iot:DeleteDynamicThingGroup iot:DeleteFleetMetric iot:DeleteJob iot:DeleteJobExecution iot:DeleteJobTemplate iot:DeleteMitigationAction iot:DeleteOTAUpdate iot:DeletePackage iot:DeletePackageVersion iot:DeletePolicy iot:DeletePolicyVersion iot:DeleteProvisioningTemplate iot:DeleteProvisioningTemplateVersion iot:DeleteRegistrationCode iot:DeleteRoleAlias iot:DeleteScheduledAudit iot:DeleteSecurityProfile iot:DeleteStream iot:DeleteThing iot:DeleteThingGroup iot:DeleteThingType iot:DeleteTopicRule iot:DeleteTopicRuleDestination iot:DeleteV2LoggingLevel iot:DeprecateThingType iot:DescribeAccountAuditConfiguration iot:DescribeAuditFinding iot:DescribeAuditMitigationActionsTask iot:DescribeAuditSuppression iot:DescribeAuditTask iot:DescribeAuthorizer iot:DescribeBillingGroup iot:DescribeCACertificate iot:DescribeCertificate iot:DescribeCertificateProvider iot:DescribeCustomMetric iot:DescribeDefaultAuthorizer iot:DescribeDetectMitigationActionsTask iot:DescribeDimension iot:DescribeDomainConfiguration iot:DescribeEncryptionConfiguration iot:DescribeEndpoint iot:DescribeEventConfigurations iot:DescribeFleetMetric iot:DescribeIndex iot:DescribeJob iot:DescribeJobExecution iot:DescribeJobTemplate iot:DescribeManagedJobTemplate iot:DescribeMitigationAction iot:DescribeProvisioningTemplate iot:DescribeProvisioningTemplateVersion iot:DescribeRoleAlias iot:DescribeScheduledAudit iot:DescribeSecurityProfile iot:DescribeStream iot:DescribeThing iot:DescribeThingGroup iot:DescribeThingRegistrationTask iot:DescribeThingType iot:DetachPolicy iot:DetachPrincipalPolicy iot:DetachSecurityProfile iot:DetachThingPrincipal iot:DisableTopicRule iot:DisassociateSbomFromPackageVersion iot:EnableTopicRule iot:GetBehaviorModelTrainingSummaries iot:GetBucketsAggregation iot:GetCardinality iot:GetCommand iot:GetEffectivePolicies iot:GetJobDocument iot:GetLoggingOptions iot:GetOTAUpdate iot:GetPackage iot:GetPackageConfiguration iot:GetPackageVersion iot:GetPercentiles iot:GetPolicy iot:GetPolicyVersion iot:GetRegistrationCode iot:GetStatistics iot:GetThingConnectivityData iot:GetTopicRule iot:GetTopicRuleDestination iot:GetV2LoggingOptions iot:ListActiveViolations iot:ListAttachedPolicies iot:ListAuditFindings iot:ListAuditMitigationActionsExecutions iot:ListAuditMitigationActionsTasks iot:ListAuditSuppressions iot:ListAuditTasks iot:ListAuthorizers iot:ListBillingGroups iot:ListCACertificates iot:ListCertificateProviders iot:ListCertificates iot:ListCertificatesByCA iot:ListCommands iot:ListCustomMetrics iot:ListDetectMitigationActionsExecutions iot:ListDetectMitigationActionsTasks iot:ListDimensions iot:ListDomainConfigurations iot:ListFleetMetrics iot:ListIndices iot:ListJobExecutionsForJob iot:ListJobExecutionsForThing iot:ListJobTemplates iot:ListJobs iot:ListManagedJobTemplates iot:ListMetricValues iot:ListMitigationActions iot:ListOTAUpdates iot:ListOutgoingCertificates iot:ListPackageVersions iot:ListPackages iot:ListPolicies iot:ListPolicyPrincipals iot:ListPolicyVersions iot:ListPrincipalPolicies iot:ListPrincipalThings iot:ListPrincipalThingsV2 iot:ListProvisioningTemplateVersions iot:ListProvisioningTemplates iot:ListRelatedResourcesForAuditFinding iot:ListRoleAliases iot:ListSbomValidationResults iot:ListScheduledAudits iot:ListSecurityProfiles iot:ListSecurityProfilesForTarget iot:ListStreams iot:ListTargetsForPolicy iot:ListTargetsForSecurityProfile iot:ListThingGroups iot:ListThingGroupsForThing iot:ListThingPrincipals iot:ListThingPrincipalsV2 iot:ListThingRegistrationTaskReports iot:ListThingRegistrationTasks iot:ListThingTypes iot:ListThings iot:ListThingsInBillingGroup iot:ListThingsInThingGroup iot:ListTopicRuleDestinations iot:ListTopicRules iot:ListV2LoggingLevels iot:ListViolationEvents iot:PutVerificationStateOnViolation iot:RegisterCACertificate iot:RegisterCertificate iot:RegisterCertificateWithoutCA iot:RegisterThing iot:RejectCertificateTransfer iot:RemoveThingFromBillingGroup iot:RemoveThingFromThingGroup iot:ReplaceTopicRule iot:SearchIndex iot:SetDefaultAuthorizer iot:SetDefaultPolicyVersion iot:SetLoggingOptions iot:SetV2LoggingLevel iot:SetV2LoggingOptions iot:StartAuditMitigationActionsTask iot:StartDetectMitigationActionsTask iot:StartOnDemandAuditTask iot:StartThingRegistrationTask iot:StopThingRegistrationTask iot:TestAuthorization iot:TestInvokeAuthorizer iot:TransferCertificate iot:UpdateAccountAuditConfiguration iot:UpdateAuditSuppression iot:UpdateAuthorizer iot:UpdateBillingGroup iot:UpdateCACertificate iot:UpdateCertificate iot:UpdateCertificateProvider iot:UpdateCommand iot:UpdateCustomMetric iot:UpdateDimension iot:UpdateDomainConfiguration iot:UpdateDynamicThingGroup iot:UpdateEncryptionConfiguration iot:UpdateEventConfigurations iot:UpdateFleetMetric iot:UpdateIndexingConfiguration iot:UpdateJob iot:UpdateMitigationAction iot:UpdatePackage iot:UpdatePackageConfiguration iot:UpdatePackageVersion iot:UpdateProvisioningTemplate iot:UpdateRoleAlias iot:UpdateScheduledAudit iot:UpdateSecurityProfile iot:UpdateStream iot:UpdateThing iot:UpdateThingGroup iot:UpdateThingGroupsForThing iot:UpdateThingType iot:UpdateTopicRuleDestination iot:ValidateSecurityProfileBehaviors  | 
| iotanalytics |  iotanalytics:CancelPipelineReprocessing iotanalytics:CreateChannel iotanalytics:CreateDataset iotanalytics:CreateDatasetContent iotanalytics:CreateDatastore iotanalytics:CreatePipeline iotanalytics:DeleteChannel iotanalytics:DeleteDataset iotanalytics:DeleteDatasetContent iotanalytics:DeleteDatastore iotanalytics:DeletePipeline iotanalytics:DescribeChannel iotanalytics:DescribeDataset iotanalytics:DescribeDatastore iotanalytics:DescribeLoggingOptions iotanalytics:DescribePipeline iotanalytics:GetDatasetContent iotanalytics:ListChannels iotanalytics:ListDatasetContents iotanalytics:ListDatasets iotanalytics:ListDatastores iotanalytics:ListPipelines iotanalytics:PutLoggingOptions iotanalytics:RunPipelineActivity iotanalytics:SampleChannelData iotanalytics:StartPipelineReprocessing iotanalytics:UpdateChannel iotanalytics:UpdateDataset iotanalytics:UpdateDatastore iotanalytics:UpdatePipeline  | 
| iotdeviceadvisor |  iotdeviceadvisor:CreateSuiteDefinition iotdeviceadvisor:DeleteSuiteDefinition iotdeviceadvisor:GetEndpoint iotdeviceadvisor:GetSuiteDefinition iotdeviceadvisor:GetSuiteRun iotdeviceadvisor:GetSuiteRunReport iotdeviceadvisor:ListSuiteDefinitions iotdeviceadvisor:ListSuiteRuns iotdeviceadvisor:StartSuiteRun iotdeviceadvisor:StopSuiteRun iotdeviceadvisor:UpdateSuiteDefinition  | 
| iotevents |  iotevents:BatchAcknowledgeAlarm iotevents:BatchDeleteDetector iotevents:BatchDisableAlarm iotevents:BatchEnableAlarm iotevents:BatchResetAlarm iotevents:BatchSnoozeAlarm iotevents:BatchUpdateDetector iotevents:CreateAlarmModel iotevents:CreateDetectorModel iotevents:CreateInput iotevents:DeleteAlarmModel iotevents:DeleteDetectorModel iotevents:DeleteInput iotevents:DescribeAlarm iotevents:DescribeAlarmModel iotevents:DescribeDetector iotevents:DescribeDetectorModel iotevents:DescribeDetectorModelAnalysis iotevents:DescribeInput iotevents:DescribeLoggingOptions iotevents:GetDetectorModelAnalysisResults iotevents:ListAlarmModelVersions iotevents:ListAlarmModels iotevents:ListAlarms iotevents:ListDetectorModelVersions iotevents:ListDetectorModels iotevents:ListDetectors iotevents:ListInputRoutings iotevents:ListInputs iotevents:PutLoggingOptions iotevents:StartDetectorModelAnalysis iotevents:UpdateAlarmModel iotevents:UpdateDetectorModel iotevents:UpdateInput  | 
| iotfleethub |  iotfleethub:CreateApplication iotfleethub:DeleteApplication iotfleethub:DescribeApplication iotfleethub:ListApplications iotfleethub:UpdateApplication  | 
| iotsitewise |  iotsitewise:AssociateAssets iotsitewise:AssociateTimeSeriesToAssetProperty iotsitewise:BatchAssociateProjectAssets iotsitewise:BatchDisassociateProjectAssets iotsitewise:CreateAccessPolicy iotsitewise:CreateAsset iotsitewise:CreateAssetModel iotsitewise:CreateAssetModelCompositeModel iotsitewise:CreateBulkImportJob iotsitewise:CreateComputationModel iotsitewise:CreateDashboard iotsitewise:CreateDataset iotsitewise:CreateGateway iotsitewise:CreatePortal iotsitewise:CreateProject iotsitewise:DeleteAccessPolicy iotsitewise:DeleteAsset iotsitewise:DeleteAssetModel iotsitewise:DeleteAssetModelCompositeModel iotsitewise:DeleteComputationModel iotsitewise:DeleteDashboard iotsitewise:DeleteDataset iotsitewise:DeleteGateway iotsitewise:DeletePortal iotsitewise:DeleteProject iotsitewise:DeleteTimeSeries iotsitewise:DescribeAccessPolicy iotsitewise:DescribeAsset iotsitewise:DescribeAssetCompositeModel iotsitewise:DescribeAssetModel iotsitewise:DescribeAssetModelCompositeModel iotsitewise:DescribeAssetModelInterfaceRelationship iotsitewise:DescribeAssetProperty iotsitewise:DescribeBulkImportJob iotsitewise:DescribeComputationModel iotsitewise:DescribeComputationModelExecutionSummary iotsitewise:DescribeDashboard iotsitewise:DescribeDataset iotsitewise:DescribeDefaultEncryptionConfiguration iotsitewise:DescribeExecution iotsitewise:DescribeGateway iotsitewise:DescribeGatewayCapabilityConfiguration iotsitewise:DescribeLoggingOptions iotsitewise:DescribePortal iotsitewise:DescribeProject iotsitewise:DescribeStorageConfiguration iotsitewise:DescribeTimeSeries iotsitewise:DisassociateAssets iotsitewise:DisassociateTimeSeriesFromAssetProperty iotsitewise:ExecuteAction iotsitewise:ExecuteQuery iotsitewise:ListAccessPolicies iotsitewise:ListActions iotsitewise:ListAssetModelCompositeModels iotsitewise:ListAssetModelProperties iotsitewise:ListAssetModels iotsitewise:ListAssetProperties iotsitewise:ListAssetRelationships iotsitewise:ListAssets iotsitewise:ListAssociatedAssets iotsitewise:ListBulkImportJobs iotsitewise:ListCompositionRelationships iotsitewise:ListComputationModelDataBindingUsages iotsitewise:ListComputationModelResolveToResources iotsitewise:ListComputationModels iotsitewise:ListDashboards iotsitewise:ListDatasets iotsitewise:ListExecutions iotsitewise:ListGateways iotsitewise:ListInterfaceRelationships iotsitewise:ListPortals iotsitewise:ListProjectAssets iotsitewise:ListProjects iotsitewise:ListTimeSeries iotsitewise:PutDefaultEncryptionConfiguration iotsitewise:PutLoggingOptions iotsitewise:PutStorageConfiguration iotsitewise:UpdateAccessPolicy iotsitewise:UpdateAsset iotsitewise:UpdateAssetModel iotsitewise:UpdateAssetModelCompositeModel iotsitewise:UpdateAssetProperty iotsitewise:UpdateComputationModel iotsitewise:UpdateDashboard iotsitewise:UpdateDataset iotsitewise:UpdateGateway iotsitewise:UpdateGatewayCapabilityConfiguration iotsitewise:UpdatePortal iotsitewise:UpdateProject  | 
| iottwinmaker |  iottwinmaker:CancelMetadataTransferJob iottwinmaker:CreateComponentType iottwinmaker:CreateEntity iottwinmaker:CreateMetadataTransferJob iottwinmaker:CreateScene iottwinmaker:CreateSyncJob iottwinmaker:CreateWorkspace iottwinmaker:DeleteComponentType iottwinmaker:DeleteEntity iottwinmaker:DeleteScene iottwinmaker:DeleteSyncJob iottwinmaker:DeleteWorkspace iottwinmaker:ExecuteQuery iottwinmaker:GetMetadataTransferJob iottwinmaker:GetPricingPlan iottwinmaker:GetScene iottwinmaker:GetSyncJob iottwinmaker:ListComponentTypes iottwinmaker:ListComponents iottwinmaker:ListEntities iottwinmaker:ListMetadataTransferJobs iottwinmaker:ListProperties iottwinmaker:ListScenes iottwinmaker:ListSyncJobs iottwinmaker:ListSyncResources iottwinmaker:ListWorkspaces iottwinmaker:UpdateComponentType iottwinmaker:UpdateEntity iottwinmaker:UpdatePricingPlan iottwinmaker:UpdateScene iottwinmaker:UpdateWorkspace  | 
| iotwireless |  iotwireless:AssociateAwsAccountWithPartnerAccount iotwireless:AssociateMulticastGroupWithFuotaTask iotwireless:AssociateWirelessDeviceWithFuotaTask iotwireless:AssociateWirelessDeviceWithMulticastGroup iotwireless:AssociateWirelessDeviceWithThing iotwireless:AssociateWirelessGatewayWithCertificate iotwireless:AssociateWirelessGatewayWithThing iotwireless:CancelMulticastGroupSession iotwireless:CreateDestination iotwireless:CreateDeviceProfile iotwireless:CreateFuotaTask iotwireless:CreateMulticastGroup iotwireless:CreateNetworkAnalyzerConfiguration iotwireless:CreateServiceProfile iotwireless:CreateWirelessDevice iotwireless:CreateWirelessGateway iotwireless:CreateWirelessGatewayTask iotwireless:CreateWirelessGatewayTaskDefinition iotwireless:DeleteDestination iotwireless:DeleteDeviceProfile iotwireless:DeleteFuotaTask iotwireless:DeleteMulticastGroup iotwireless:DeleteNetworkAnalyzerConfiguration iotwireless:DeleteQueuedMessages iotwireless:DeleteServiceProfile iotwireless:DeleteWirelessDevice iotwireless:DeleteWirelessDeviceImportTask iotwireless:DeleteWirelessGateway iotwireless:DeleteWirelessGatewayTask iotwireless:DeleteWirelessGatewayTaskDefinition iotwireless:DeregisterWirelessDevice iotwireless:DisassociateAwsAccountFromPartnerAccount iotwireless:DisassociateMulticastGroupFromFuotaTask iotwireless:DisassociateWirelessDeviceFromFuotaTask iotwireless:DisassociateWirelessDeviceFromMulticastGroup iotwireless:DisassociateWirelessDeviceFromThing iotwireless:DisassociateWirelessGatewayFromCertificate iotwireless:DisassociateWirelessGatewayFromThing iotwireless:GetDestination iotwireless:GetDeviceProfile iotwireless:GetEventConfigurationByResourceTypes iotwireless:GetFuotaTask iotwireless:GetLogLevelsByResourceTypes iotwireless:GetMetricConfiguration iotwireless:GetMetrics iotwireless:GetMulticastGroup iotwireless:GetMulticastGroupSession iotwireless:GetNetworkAnalyzerConfiguration iotwireless:GetPartnerAccount iotwireless:GetPosition iotwireless:GetPositionConfiguration iotwireless:GetPositionEstimate iotwireless:GetResourceEventConfiguration iotwireless:GetResourceLogLevel iotwireless:GetResourcePosition iotwireless:GetServiceEndpoint iotwireless:GetServiceProfile iotwireless:GetWirelessDevice iotwireless:GetWirelessDeviceImportTask iotwireless:GetWirelessDeviceStatistics iotwireless:GetWirelessGateway iotwireless:GetWirelessGatewayCertificate iotwireless:GetWirelessGatewayFirmwareInformation iotwireless:GetWirelessGatewayStatistics iotwireless:GetWirelessGatewayTask iotwireless:GetWirelessGatewayTaskDefinition iotwireless:ListDestinations iotwireless:ListDeviceProfiles iotwireless:ListDevicesForWirelessDeviceImportTask iotwireless:ListEventConfigurations iotwireless:ListFuotaTasks iotwireless:ListMulticastGroups iotwireless:ListMulticastGroupsByFuotaTask iotwireless:ListNetworkAnalyzerConfigurations iotwireless:ListPartnerAccounts iotwireless:ListPositionConfigurations iotwireless:ListQueuedMessages iotwireless:ListServiceProfiles iotwireless:ListWirelessDeviceImportTasks iotwireless:ListWirelessDevices iotwireless:ListWirelessGatewayTaskDefinitions iotwireless:ListWirelessGateways iotwireless:PutPositionConfiguration iotwireless:PutResourceLogLevel iotwireless:ResetAllResourceLogLevels iotwireless:ResetResourceLogLevel iotwireless:SendDataToMulticastGroup iotwireless:SendDataToWirelessDevice iotwireless:StartBulkAssociateWirelessDeviceWithMulticastGroup iotwireless:StartBulkDisassociateWirelessDeviceFromMulticastGroup iotwireless:StartFuotaTask iotwireless:StartMulticastGroupSession iotwireless:StartNetworkAnalyzerStream iotwireless:StartSingleWirelessDeviceImportTask iotwireless:StartWirelessDeviceImportTask iotwireless:TestWirelessDevice iotwireless:UpdateDestination iotwireless:UpdateEventConfigurationByResourceTypes iotwireless:UpdateFuotaTask iotwireless:UpdateLogLevelsByResourceTypes iotwireless:UpdateMetricConfiguration iotwireless:UpdateMulticastGroup iotwireless:UpdateNetworkAnalyzerConfiguration iotwireless:UpdatePartnerAccount iotwireless:UpdatePosition iotwireless:UpdateResourceEventConfiguration iotwireless:UpdateResourcePosition iotwireless:UpdateWirelessDevice iotwireless:UpdateWirelessDeviceImportTask iotwireless:UpdateWirelessGateway  | 
| ivs |  ivs:BatchGetChannel ivs:BatchGetStreamKey ivs:BatchStartViewerSessionRevocation ivs:CreateChannel ivs:CreateEncoderConfiguration ivs:CreateIngestConfiguration ivs:CreateParticipantToken ivs:CreatePlaybackRestrictionPolicy ivs:CreateRecordingConfiguration ivs:CreateStorageConfiguration ivs:CreateStreamKey ivs:DeleteChannel ivs:DeleteEncoderConfiguration ivs:DeleteIngestConfiguration ivs:DeletePlaybackKeyPair ivs:DeletePlaybackRestrictionPolicy ivs:DeletePublicKey ivs:DeleteRecordingConfiguration ivs:DeleteStorageConfiguration ivs:DeleteStreamKey ivs:DisconnectParticipant ivs:GetChannel ivs:GetComposition ivs:GetEncoderConfiguration ivs:GetIngestConfiguration ivs:GetParticipant ivs:GetPlaybackKeyPair ivs:GetPlaybackRestrictionPolicy ivs:GetPublicKey ivs:GetRecordingConfiguration ivs:GetStorageConfiguration ivs:GetStream ivs:GetStreamKey ivs:GetStreamSession ivs:ImportPlaybackKeyPair ivs:ImportPublicKey ivs:ListChannels ivs:ListCompositions ivs:ListEncoderConfigurations ivs:ListIngestConfigurations ivs:ListParticipantEvents ivs:ListParticipantReplicas ivs:ListParticipants ivs:ListPlaybackKeyPairs ivs:ListPlaybackRestrictionPolicies ivs:ListPublicKeys ivs:ListRecordingConfigurations ivs:ListStorageConfigurations ivs:ListStreamKeys ivs:ListStreamSessions ivs:ListStreams ivs:PutMetadata ivs:StartComposition ivs:StartViewerSessionRevocation ivs:StopComposition ivs:StopStream ivs:UpdateChannel ivs:UpdateIngestConfiguration ivs:UpdatePlaybackRestrictionPolicy  | 
| ivschat |  ivschat:CreateChatToken ivschat:CreateLoggingConfiguration ivschat:CreateRoom ivschat:DeleteLoggingConfiguration ivschat:DeleteMessage ivschat:DeleteRoom ivschat:DisconnectUser ivschat:GetLoggingConfiguration ivschat:GetRoom ivschat:ListLoggingConfigurations ivschat:ListRooms ivschat:SendEvent ivschat:UpdateLoggingConfiguration ivschat:UpdateRoom  | 
| kafka |  kafka:BatchAssociateScramSecret kafka:BatchDisassociateScramSecret kafka:CreateCluster kafka:CreateClusterV2 kafka:CreateConfiguration kafka:CreateReplicator kafka:CreateVpcConnection kafka:DeleteCluster kafka:DeleteClusterPolicy kafka:DeleteConfiguration kafka:DeleteReplicator kafka:DeleteVpcConnection kafka:DescribeCluster kafka:DescribeClusterOperation kafka:DescribeClusterOperationV2 kafka:DescribeClusterV2 kafka:DescribeConfiguration kafka:DescribeConfigurationRevision kafka:DescribeVpcConnection kafka:GetBootstrapBrokers kafka:GetClusterPolicy kafka:GetCompatibleKafkaVersions kafka:ListClientVpcConnections kafka:ListClusterOperations kafka:ListClusterOperationsV2 kafka:ListClusters kafka:ListClustersV2 kafka:ListConfigurationRevisions kafka:ListConfigurations kafka:ListKafkaVersions kafka:ListNodes kafka:ListReplicators kafka:ListScramSecrets kafka:ListVpcConnections kafka:PutClusterPolicy kafka:RebootBroker kafka:RejectClientVpcConnection kafka:UpdateBrokerCount kafka:UpdateBrokerStorage kafka:UpdateBrokerType kafka:UpdateClusterConfiguration kafka:UpdateClusterKafkaVersion kafka:UpdateConfiguration kafka:UpdateConnectivity kafka:UpdateMonitoring kafka:UpdateRebalancing kafka:UpdateReplicationInfo kafka:UpdateSecurity kafka:UpdateStorage  | 
| kafkaconnect |  kafkaconnect:CreateConnector kafkaconnect:CreateCustomPlugin kafkaconnect:CreateWorkerConfiguration kafkaconnect:DeleteConnector kafkaconnect:DeleteCustomPlugin kafkaconnect:DeleteWorkerConfiguration kafkaconnect:DescribeConnector kafkaconnect:DescribeCustomPlugin kafkaconnect:DescribeWorkerConfiguration kafkaconnect:ListConnectorOperations kafkaconnect:ListConnectors kafkaconnect:ListCustomPlugins kafkaconnect:ListWorkerConfigurations kafkaconnect:UpdateConnector  | 
| kendra |  kendra:AssociateEntitiesToExperience kendra:AssociatePersonasToEntities kendra:BatchDeleteDocument kendra:BatchDeleteFeaturedResultsSet kendra:BatchGetDocumentStatus kendra:BatchPutDocument kendra:ClearQuerySuggestions kendra:CreateAccessControlConfiguration kendra:CreateDataSource kendra:CreateExperience kendra:CreateFaq kendra:CreateFeaturedResultsSet kendra:CreateIndex kendra:CreateQuerySuggestionsBlockList kendra:CreateThesaurus kendra:DeleteDataSource kendra:DeleteExperience kendra:DeleteFaq kendra:DeleteIndex kendra:DeletePrincipalMapping kendra:DeleteQuerySuggestionsBlockList kendra:DeleteThesaurus kendra:DescribeAccessControlConfiguration kendra:DescribeDataSource kendra:DescribeExperience kendra:DescribeFaq kendra:DescribeFeaturedResultsSet kendra:DescribeIndex kendra:DescribePrincipalMapping kendra:DescribeQuerySuggestionsBlockList kendra:DescribeQuerySuggestionsConfig kendra:DescribeThesaurus kendra:DisassociateEntitiesFromExperience kendra:DisassociatePersonasFromEntities kendra:GetQuerySuggestions kendra:GetSnapshots kendra:ListAccessControlConfigurations kendra:ListDataSourceSyncJobs kendra:ListDataSources kendra:ListEntityPersonas kendra:ListExperienceEntities kendra:ListExperiences kendra:ListFaqs kendra:ListFeaturedResultsSets kendra:ListGroupsOlderThanOrderingId kendra:ListIndices kendra:ListQuerySuggestionsBlockLists kendra:ListThesauri kendra:PutPrincipalMapping kendra:Query kendra:Retrieve kendra:StartDataSourceSyncJob kendra:StopDataSourceSyncJob kendra:SubmitFeedback kendra:UpdateDataSource kendra:UpdateExperience kendra:UpdateFeaturedResultsSet kendra:UpdateIndex kendra:UpdateQuerySuggestionsBlockList kendra:UpdateQuerySuggestionsConfig kendra:UpdateThesaurus  | 
| kinesis |  kinesis:CreateStream kinesis:DecreaseStreamRetentionPeriod kinesis:DeleteStream kinesis:DeregisterStreamConsumer kinesis:DescribeAccountSettings kinesis:DescribeLimits kinesis:DescribeStream kinesis:DescribeStreamConsumer kinesis:DescribeStreamSummary kinesis:DisableEnhancedMonitoring kinesis:EnableEnhancedMonitoring kinesis:IncreaseStreamRetentionPeriod kinesis:ListShards kinesis:ListStreamConsumers kinesis:ListStreams kinesis:MergeShards kinesis:RegisterStreamConsumer kinesis:SplitShard kinesis:StartStreamEncryption kinesis:StopStreamEncryption kinesis:UpdateAccountSettings kinesis:UpdateShardCount kinesis:UpdateStreamMode  | 
| kinesisanalytics |  kinesisanalytics:AddApplicationCloudWatchLoggingOption kinesisanalytics:AddApplicationInput kinesisanalytics:AddApplicationInputProcessingConfiguration kinesisanalytics:AddApplicationOutput kinesisanalytics:AddApplicationReferenceDataSource kinesisanalytics:AddApplicationVpcConfiguration kinesisanalytics:CreateApplication kinesisanalytics:CreateApplicationPresignedUrl kinesisanalytics:CreateApplicationSnapshot kinesisanalytics:DeleteApplication kinesisanalytics:DeleteApplicationCloudWatchLoggingOption kinesisanalytics:DeleteApplicationInputProcessingConfiguration kinesisanalytics:DeleteApplicationOutput kinesisanalytics:DeleteApplicationReferenceDataSource kinesisanalytics:DeleteApplicationSnapshot kinesisanalytics:DeleteApplicationVpcConfiguration kinesisanalytics:DescribeApplication kinesisanalytics:DescribeApplicationOperation kinesisanalytics:DescribeApplicationSnapshot kinesisanalytics:DescribeApplicationVersion kinesisanalytics:DiscoverInputSchema kinesisanalytics:ListApplicationOperations kinesisanalytics:ListApplicationSnapshots kinesisanalytics:ListApplicationVersions kinesisanalytics:ListApplications kinesisanalytics:RollbackApplication kinesisanalytics:StartApplication kinesisanalytics:StopApplication kinesisanalytics:UpdateApplication kinesisanalytics:UpdateApplicationMaintenanceConfiguration  | 
| kms |  kms:CancelKeyDeletion kms:ConnectCustomKeyStore kms:CreateAlias kms:CreateCustomKeyStore kms:CreateGrant kms:CreateKey kms:Decrypt kms:DeleteAlias kms:DeleteCustomKeyStore kms:DeleteImportedKeyMaterial kms:DeriveSharedSecret kms:DescribeCustomKeyStores kms:DescribeKey kms:DisableKey kms:DisableKeyRotation kms:DisconnectCustomKeyStore kms:EnableKey kms:EnableKeyRotation kms:Encrypt kms:GenerateDataKey kms:GenerateDataKeyPair kms:GenerateDataKeyPairWithoutPlaintext kms:GenerateDataKeyWithoutPlaintext kms:GenerateMac kms:GenerateRandom kms:GetKeyPolicy kms:GetKeyRotationStatus kms:GetParametersForImport kms:GetPublicKey kms:ImportKeyMaterial kms:ListAliases kms:ListGrants kms:ListKeyPolicies kms:ListKeyRotations kms:ListKeys kms:ListRetirableGrants kms:ReplicateKey kms:RetireGrant kms:RevokeGrant kms:RotateKeyOnDemand kms:ScheduleKeyDeletion kms:Sign kms:UpdateAlias kms:UpdateCustomKeyStore kms:UpdateKeyDescription kms:UpdatePrimaryRegion kms:Verify kms:VerifyMac  | 
| lambda |  lambda:AddLayerVersionPermission lambda:AddPermission lambda:CreateAlias lambda:CreateCodeSigningConfig lambda:CreateEventSourceMapping lambda:CreateFunction lambda:CreateFunctionUrlConfig lambda:DeleteAlias Lambda:DeleteCapacityProvider lambda:DeleteCodeSigningConfig lambda:DeleteEventSourceMapping lambda:DeleteFunction lambda:DeleteFunctionCodeSigningConfig lambda:DeleteFunctionConcurrency lambda:DeleteFunctionEventInvokeConfig lambda:DeleteFunctionUrlConfig lambda:DeleteLayerVersion lambda:DeleteProvisionedConcurrencyConfig lambda:GetAccountSettings lambda:GetAlias lambda:GetCapacityProvider lambda:GetCodeSigningConfig lambda:GetEventSourceMapping lambda:GetFunction lambda:GetFunctionCodeSigningConfig lambda:GetFunctionConcurrency lambda:GetFunctionConfiguration lambda:GetFunctionEventInvokeConfig lambda:GetFunctionRecursionConfig lambda:GetFunctionScalingConfig lambda:GetFunctionUrlConfig lambda:GetLayerVersion lambda:GetLayerVersionPolicy lambda:GetPolicy lambda:GetProvisionedConcurrencyConfig lambda:GetRuntimeManagementConfig lambda:ListAliases lambda:ListCapacityProviders lambda:ListCodeSigningConfigs lambda:ListDurableExecutionsByFunction lambda:ListEventSourceMappings lambda:ListFunctionEventInvokeConfigs lambda:ListFunctionUrlConfigs lambda:ListFunctions lambda:ListFunctionsByCodeSigningConfig lambda:ListLayerVersions lambda:ListLayers lambda:ListProvisionedConcurrencyConfigs lambda:ListVersionsByFunction lambda:PublishLayerVersion lambda:PublishVersion lambda:PutFunctionCodeSigningConfig lambda:PutFunctionConcurrency lambda:PutFunctionEventInvokeConfig lambda:PutFunctionRecursionConfig lambda:PutFunctionScalingConfig lambda:PutProvisionedConcurrencyConfig lambda:PutRuntimeManagementConfig lambda:RemoveLayerVersionPermission lambda:RemovePermission lambda:UpdateAlias lambda:UpdateCapacityProvider lambda:UpdateCodeSigningConfig lambda:UpdateEventSourceMapping lambda:UpdateFunctionCode lambda:UpdateFunctionConfiguration lambda:UpdateFunctionEventInvokeConfig lambda:UpdateFunctionUrlConfig  | 
| lex |  lex:BatchCreateCustomVocabularyItem lex:BatchDeleteCustomVocabularyItem lex:BatchUpdateCustomVocabularyItem lex:BuildBotLocale lex:CreateBotAlias lex:CreateBotReplica lex:CreateBotVersion lex:CreateExport lex:CreateIntentVersion lex:CreateResourcePolicy lex:CreateSlotTypeVersion lex:CreateTestSetDiscrepancyReport lex:CreateUploadUrl lex:DeleteBot lex:DeleteBotChannelAssociation lex:DeleteBotReplica lex:DeleteExport lex:DeleteImport lex:DeleteIntentVersion lex:DeleteResourcePolicy lex:DeleteSlotTypeVersion lex:DeleteTestSet lex:DeleteUtterances lex:DescribeBotAlias lex:DescribeBotRecommendation lex:DescribeBotReplica lex:DescribeBotResourceGeneration lex:DescribeBotVersion lex:DescribeCustomVocabularyMetadata lex:DescribeExport lex:DescribeImport lex:DescribeResourcePolicy lex:DescribeTestExecution lex:DescribeTestSet lex:DescribeTestSetDiscrepancyReport lex:DescribeTestSetGeneration lex:GenerateBotElement lex:GetBot lex:GetBotAlias lex:GetBotAliases lex:GetBotChannelAssociation lex:GetBotChannelAssociations lex:GetBotVersions lex:GetBots lex:GetBuiltinIntent lex:GetBuiltinIntents lex:GetBuiltinSlotTypes lex:GetExport lex:GetImport lex:GetIntent lex:GetIntentVersions lex:GetIntents lex:GetMigration lex:GetMigrations lex:GetSlotType lex:GetSlotTypeVersions lex:GetSlotTypes lex:GetTestExecutionArtifactsUrl lex:GetUtterancesView lex:ListBotAliasReplicas lex:ListBotAliases lex:ListBotRecommendations lex:ListBotReplicas lex:ListBotResourceGenerations lex:ListBotVersionReplicas lex:ListBotVersions lex:ListBots lex:ListBuiltInIntents lex:ListBuiltInSlotTypes lex:ListCustomVocabularyItems lex:ListExports lex:ListImports lex:ListIntentMetrics lex:ListIntentPaths lex:ListRecommendedIntents lex:ListSessionAnalyticsData lex:ListSessionMetrics lex:ListTestExecutionResultItems lex:ListTestExecutions lex:ListTestSets lex:PutBot lex:PutBotAlias lex:PutIntent lex:PutSlotType lex:SearchAssociatedTranscripts lex:StartBotRecommendation lex:StartImport lex:StartMigration lex:StartTestExecution lex:StartTestSetGeneration lex:StopBotRecommendation lex:UpdateBotAlias lex:UpdateBotRecommendation lex:UpdateExport lex:UpdateResourcePolicy  | 
| license-manager-linux-subscriptions |  license-manager-linux-subscriptions:DeregisterSubscriptionProvider license-manager-linux-subscriptions:GetRegisteredSubscriptionProvider license-manager-linux-subscriptions:GetServiceSettings license-manager-linux-subscriptions:ListLinuxSubscriptionInstances license-manager-linux-subscriptions:ListLinuxSubscriptions license-manager-linux-subscriptions:ListRegisteredSubscriptionProviders license-manager-linux-subscriptions:RegisterSubscriptionProvider license-manager-linux-subscriptions:UpdateServiceSettings  | 
| lightsail |  lightsail:AllocateStaticIp lightsail:AttachCertificateToDistribution lightsail:AttachDisk lightsail:AttachInstancesToLoadBalancer lightsail:AttachLoadBalancerTlsCertificate lightsail:AttachStaticIp lightsail:CloseInstancePublicPorts lightsail:CopySnapshot lightsail:CreateBucket lightsail:CreateBucketAccessKey lightsail:CreateCertificate lightsail:CreateCloudFormationStack lightsail:CreateContactMethod lightsail:CreateContainerService lightsail:CreateContainerServiceDeployment lightsail:CreateContainerServiceRegistryLogin lightsail:CreateDisk lightsail:CreateDiskFromSnapshot lightsail:CreateDiskSnapshot lightsail:CreateDistribution lightsail:CreateDomain lightsail:CreateGUISessionAccessDetails lightsail:CreateInstanceSnapshot lightsail:CreateInstances lightsail:CreateInstancesFromSnapshot lightsail:CreateKeyPair lightsail:CreateLoadBalancer lightsail:CreateLoadBalancerTlsCertificate lightsail:CreateRelationalDatabase lightsail:CreateRelationalDatabaseFromSnapshot lightsail:CreateRelationalDatabaseSnapshot lightsail:DeleteAlarm lightsail:DeleteAutoSnapshot lightsail:DeleteBucket lightsail:DeleteBucketAccessKey lightsail:DeleteCertificate lightsail:DeleteContactMethod lightsail:DeleteContainerImage lightsail:DeleteContainerService lightsail:DeleteDisk lightsail:DeleteDiskSnapshot lightsail:DeleteDistribution lightsail:DeleteDomain lightsail:DeleteDomainEntry lightsail:DeleteInstance lightsail:DeleteInstanceSnapshot lightsail:DeleteKeyPair lightsail:DeleteKnownHostKeys lightsail:DeleteLoadBalancer lightsail:DeleteLoadBalancerTlsCertificate lightsail:DeleteRelationalDatabase lightsail:DeleteRelationalDatabaseSnapshot lightsail:DetachCertificateFromDistribution lightsail:DetachDisk lightsail:DetachInstancesFromLoadBalancer lightsail:DetachStaticIp lightsail:DisableAddOn lightsail:DownloadDefaultKeyPair lightsail:EnableAddOn lightsail:ExportSnapshot lightsail:GetActiveNames lightsail:GetAlarms lightsail:GetAutoSnapshots lightsail:GetBlueprints lightsail:GetBucketAccessKeys lightsail:GetBucketBundles lightsail:GetBucketMetricData lightsail:GetBuckets lightsail:GetBundles lightsail:GetCertificates lightsail:GetCloudFormationStackRecords lightsail:GetContactMethods lightsail:GetContainerAPIMetadata lightsail:GetContainerImages lightsail:GetContainerLog lightsail:GetContainerServiceDeployments lightsail:GetContainerServiceMetricData lightsail:GetContainerServicePowers lightsail:GetContainerServices lightsail:GetCostEstimate lightsail:GetDisk lightsail:GetDiskSnapshot lightsail:GetDiskSnapshots lightsail:GetDisks lightsail:GetDistributionBundles lightsail:GetDistributionLatestCacheReset lightsail:GetDistributionMetricData lightsail:GetDistributions lightsail:GetDomain lightsail:GetExportSnapshotRecords lightsail:GetInstance lightsail:GetInstanceMetricData lightsail:GetInstancePortStates lightsail:GetInstanceSnapshot lightsail:GetInstanceSnapshots lightsail:GetInstanceState lightsail:GetInstances lightsail:GetKeyPair lightsail:GetKeyPairs lightsail:GetLoadBalancer lightsail:GetLoadBalancerMetricData lightsail:GetLoadBalancerTlsCertificates lightsail:GetLoadBalancerTlsPolicies lightsail:GetLoadBalancers lightsail:GetOperation lightsail:GetOperations lightsail:GetOperationsForResource lightsail:GetRegions lightsail:GetRelationalDatabase lightsail:GetRelationalDatabaseBlueprints lightsail:GetRelationalDatabaseBundles lightsail:GetRelationalDatabaseEvents lightsail:GetRelationalDatabaseLogEvents lightsail:GetRelationalDatabaseLogStreams lightsail:GetRelationalDatabaseMasterUserPassword lightsail:GetRelationalDatabaseMetricData lightsail:GetRelationalDatabaseParameters lightsail:GetRelationalDatabaseSnapshot lightsail:GetRelationalDatabaseSnapshots lightsail:GetRelationalDatabases lightsail:GetSetupHistory lightsail:GetStaticIp lightsail:GetStaticIps lightsail:ImportKeyPair lightsail:IsVpcPeered lightsail:OpenInstancePublicPorts lightsail:PeerVpc lightsail:PutAlarm lightsail:PutInstancePublicPorts lightsail:RebootInstance lightsail:RebootRelationalDatabase lightsail:RegisterContainerImage lightsail:ReleaseStaticIp lightsail:ResetDistributionCache lightsail:SendContactMethodVerification lightsail:SetIpAddressType lightsail:SetResourceAccessForBucket lightsail:SetupInstanceHttps lightsail:StartGUISession lightsail:StartInstance lightsail:StartRelationalDatabase lightsail:StopGUISession lightsail:StopInstance lightsail:StopRelationalDatabase lightsail:TestAlarm lightsail:UnpeerVpc lightsail:UpdateBucket lightsail:UpdateBucketBundle lightsail:UpdateContainerService lightsail:UpdateDistribution lightsail:UpdateDistributionBundle lightsail:UpdateDomainEntry lightsail:UpdateInstanceMetadataOptions lightsail:UpdateLoadBalancerAttribute lightsail:UpdateRelationalDatabase lightsail:UpdateRelationalDatabaseParameters  | 
| ログ |  logs:AssociateKmsKey logs:AssociateSourceToS3TableIntegration logs:CancelExportTask logs:CancelImportTask logs:CreateDelivery logs:CreateExportTask logs:CreateLogAnomalyDetector logs:CreateLogGroup logs:CreateLogStream logs:DeleteDataProtectionPolicy logs:DeleteDelivery logs:DeleteDeliveryDestination logs:DeleteDeliveryDestinationPolicy logs:DeleteDeliverySource logs:DeleteDestination logs:DeleteIndexPolicy logs:DeleteIntegration logs:DeleteLogAnomalyDetector logs:DeleteLogGroup logs:DeleteLogStream logs:DeleteMetricFilter logs:DeleteQueryDefinition logs:DeleteResourcePolicy logs:DeleteRetentionPolicy logs:DeleteScheduledQuery logs:DeleteSubscriptionFilter logs:DeleteTransformer logs:DescribeAccountPolicies logs:DescribeConfigurationTemplates logs:DescribeDeliveries logs:DescribeDeliveryDestinations logs:DescribeDeliverySources logs:DescribeDestinations logs:DescribeExportTasks logs:DescribeFieldIndexes logs:DescribeImportTaskBatches logs:DescribeImportTasks logs:DescribeIndexPolicies logs:DescribeLogGroups logs:DescribeLogStreams logs:DescribeMetricFilters logs:DescribeQueries logs:DescribeQueryDefinitions logs:DescribeResourcePolicies logs:DescribeSubscriptionFilters logs:DisassociateKmsKey logs:DisassociateSourceFromS3TableIntegration logs:GetDataProtectionPolicy logs:GetDelivery logs:GetDeliveryDestination logs:GetDeliveryDestinationPolicy logs:GetDeliverySource logs:GetIntegration logs:GetLogAnomalyDetector logs:GetLogFields logs:GetLogGroupFields logs:GetLogRecord logs:GetQueryResults logs:GetScheduledQuery logs:GetScheduledQueryHistory logs:GetTransformer logs:IntegrateWithS3Table logs:ListAnomalies logs:ListIntegrations logs:ListLogAnomalyDetectors logs:ListLogGroupsForQuery logs:ListScheduledQueries logs:ListSourcesForS3TableIntegration logs:ProcessWithPipeline logs:PutDataProtectionPolicy logs:PutDeliveryDestination logs:PutDeliveryDestinationPolicy logs:PutDeliverySource logs:PutDestination logs:PutDestinationPolicy logs:PutIndexPolicy logs:PutIntegration logs:PutLogGroupDeletionProtection logs:PutMetricFilter logs:PutQueryDefinition logs:PutResourcePolicy logs:PutRetentionPolicy logs:PutSubscriptionFilter logs:PutTransformer logs:StartLiveTail logs:StartQuery logs:StopQuery logs:TestMetricFilter logs:TestTransformer logs:UpdateAnomaly logs:UpdateDeliveryConfiguration logs:UpdateLogAnomalyDetector  | 
| lookoutequipment |  lookoutequipment:CreateDataset lookoutequipment:CreateInferenceScheduler lookoutequipment:CreateLabel lookoutequipment:CreateLabelGroup lookoutequipment:CreateModel lookoutequipment:DeleteDataset lookoutequipment:DeleteInferenceScheduler lookoutequipment:DeleteLabel lookoutequipment:DeleteLabelGroup lookoutequipment:DeleteModel lookoutequipment:DeleteResourcePolicy lookoutequipment:DeleteRetrainingScheduler lookoutequipment:DescribeDataIngestionJob lookoutequipment:DescribeDataset lookoutequipment:DescribeInferenceScheduler lookoutequipment:DescribeLabelGroup lookoutequipment:DescribeModel lookoutequipment:DescribeModelVersion lookoutequipment:DescribeResourcePolicy lookoutequipment:DescribeRetrainingScheduler lookoutequipment:Describelabel lookoutequipment:ImportDataset lookoutequipment:ImportModelVersion lookoutequipment:ListDataIngestionJobs lookoutequipment:ListDatasets lookoutequipment:ListInferenceEvents lookoutequipment:ListInferenceExecutions lookoutequipment:ListInferenceSchedulers lookoutequipment:ListLabelGroups lookoutequipment:ListLabels lookoutequipment:ListModelVersions lookoutequipment:ListModels lookoutequipment:ListRetrainingSchedulers lookoutequipment:ListSensorStatistics lookoutequipment:PutResourcePolicy lookoutequipment:StartDataIngestionJob lookoutequipment:StartInferenceScheduler lookoutequipment:StartRetrainingScheduler lookoutequipment:StopInferenceScheduler lookoutequipment:StopRetrainingScheduler lookoutequipment:UpdateActiveModelVersion lookoutequipment:UpdateInferenceScheduler lookoutequipment:UpdateLabelGroup lookoutequipment:UpdateModel lookoutequipment:UpdateRetrainingScheduler  | 
| lookoutmetrics |  lookoutmetrics:ActivateAnomalyDetector lookoutmetrics:BackTestAnomalyDetector lookoutmetrics:CreateAlert lookoutmetrics:CreateAnomalyDetector lookoutmetrics:CreateMetricSet lookoutmetrics:DeactivateAnomalyDetector lookoutmetrics:DeleteAlert lookoutmetrics:DeleteAnomalyDetector lookoutmetrics:DescribeAlert lookoutmetrics:DescribeAnomalyDetectionExecutions lookoutmetrics:DescribeAnomalyDetector lookoutmetrics:DescribeMetricSet lookoutmetrics:DetectMetricSetConfig lookoutmetrics:GetAnomalyGroup lookoutmetrics:GetDataQualityMetrics lookoutmetrics:GetFeedback lookoutmetrics:GetSampleData lookoutmetrics:ListAlerts lookoutmetrics:ListAnomalyDetectors lookoutmetrics:ListAnomalyGroupRelatedMetrics lookoutmetrics:ListAnomalyGroupSummaries lookoutmetrics:ListAnomalyGroupTimeSeries lookoutmetrics:ListMetricSets lookoutmetrics:PutFeedback lookoutmetrics:UpdateAlert lookoutmetrics:UpdateAnomalyDetector lookoutmetrics:UpdateMetricSet  | 
| lookoutvision |  lookoutvision:CreateDataset lookoutvision:CreateModel lookoutvision:CreateProject lookoutvision:DeleteDataset lookoutvision:DeleteModel lookoutvision:DeleteProject lookoutvision:DescribeDataset lookoutvision:DescribeModel lookoutvision:DescribeModelPackagingJob lookoutvision:DescribeProject lookoutvision:DetectAnomalies lookoutvision:ListDatasetEntries lookoutvision:ListModelPackagingJobs lookoutvision:ListModels lookoutvision:ListProjects lookoutvision:StartModel lookoutvision:StartModelPackagingJob lookoutvision:StopModel lookoutvision:UpdateDatasetEntries  | 
| m2 |  m2:CancelBatchJobExecution m2:CreateApplication m2:CreateDataSetExportTask m2:CreateDataSetImportTask m2:CreateDeployment m2:CreateEnvironment m2:DeleteApplication m2:DeleteApplicationFromEnvironment m2:DeleteEnvironment m2:GetApplication m2:GetApplicationVersion m2:GetBatchJobExecution m2:GetDataSetDetails m2:GetDataSetExportTask m2:GetDataSetImportTask m2:GetDeployment m2:GetEnvironment m2:GetSignedBluinsightsUrl m2:ListApplicationVersions m2:ListApplications m2:ListBatchJobDefinitions m2:ListBatchJobExecutions m2:ListBatchJobRestartPoints m2:ListDataSetExportHistory m2:ListDataSetImportHistory m2:ListDataSets m2:ListDeployments m2:ListEngineVersions m2:ListEnvironments m2:StartApplication m2:StartBatchJob m2:StopApplication m2:UpdateApplication m2:UpdateEnvironment  | 
| managedblockchain |  managedblockchain:CreateAccessor managedblockchain:CreateMember managedblockchain:CreateNetwork managedblockchain:CreateNode managedblockchain:CreateProposal managedblockchain:DeleteAccessor managedblockchain:DeleteMember managedblockchain:DeleteNode managedblockchain:GetAccessor managedblockchain:GetMember managedblockchain:GetNetwork managedblockchain:GetNode managedblockchain:GetProposal managedblockchain:InvokeRpcPolygonMainnet managedblockchain:InvokeRpcPolygonMumbaiTestnet managedblockchain:ListAccessors managedblockchain:ListInvitations managedblockchain:ListMembers managedblockchain:ListNetworks managedblockchain:ListNodes managedblockchain:ListProposalVotes managedblockchain:ListProposals managedblockchain:RejectInvitation managedblockchain:UpdateMember managedblockchain:UpdateNode managedblockchain:VoteOnProposal  | 
| mediaconnect |  mediaconnect:AddBridgeOutputs mediaconnect:AddBridgeSources mediaconnect:AddFlowMediaStreams mediaconnect:AddFlowOutputs mediaconnect:AddFlowSources mediaconnect:AddFlowVpcInterfaces mediaconnect:CreateBridge mediaconnect:CreateFlow mediaconnect:CreateGateway mediaconnect:DeleteBridge mediaconnect:DeleteFlow mediaconnect:DeleteGateway mediaconnect:DeleteRouterInput mediaconnect:DeleteRouterNetworkInterface mediaconnect:DeleteRouterOutput mediaconnect:DeregisterGatewayInstance mediaconnect:DescribeBridge mediaconnect:DescribeFlow mediaconnect:DescribeFlowSourceMetadata mediaconnect:DescribeFlowSourceThumbnail mediaconnect:DescribeGateway mediaconnect:DescribeGatewayInstance mediaconnect:DescribeOffering mediaconnect:DescribeReservation mediaconnect:GetRouterInput mediaconnect:GetRouterInputSourceMetadata mediaconnect:GetRouterInputThumbnail mediaconnect:GetRouterNetworkInterface mediaconnect:GetRouterOutput mediaconnect:GrantFlowEntitlements mediaconnect:ListBridges mediaconnect:ListEntitlements mediaconnect:ListFlows mediaconnect:ListGatewayInstances mediaconnect:ListGateways mediaconnect:ListOfferings mediaconnect:ListReservations mediaconnect:ListRouterInputs mediaconnect:ListRouterNetworkInterfaces mediaconnect:ListRouterOutputs mediaconnect:PurchaseOffering mediaconnect:RemoveBridgeOutput mediaconnect:RemoveBridgeSource mediaconnect:RemoveFlowMediaStream mediaconnect:RemoveFlowOutput mediaconnect:RemoveFlowSource mediaconnect:RemoveFlowVpcInterface mediaconnect:RestartRouterInput mediaconnect:RestartRouterOutput mediaconnect:RevokeFlowEntitlement mediaconnect:StartFlow mediaconnect:StartRouterInput mediaconnect:StartRouterOutput mediaconnect:StopFlow mediaconnect:StopRouterInput mediaconnect:StopRouterOutput mediaconnect:TakeRouterInput mediaconnect:UpdateBridge mediaconnect:UpdateBridgeOutput mediaconnect:UpdateBridgeSource mediaconnect:UpdateBridgeState mediaconnect:UpdateFlow mediaconnect:UpdateFlowEntitlement mediaconnect:UpdateFlowMediaStream mediaconnect:UpdateGatewayInstance  | 
| mediaconvert |  mediaconvert:AssociateCertificate mediaconvert:CancelJob mediaconvert:CreateJob mediaconvert:CreateJobTemplate mediaconvert:CreatePreset mediaconvert:CreateQueue mediaconvert:CreateResourceShare mediaconvert:DeleteJobTemplate mediaconvert:DeletePolicy mediaconvert:DeletePreset mediaconvert:DeleteQueue mediaconvert:DescribeEndpoints mediaconvert:DisassociateCertificate mediaconvert:GetJob mediaconvert:GetJobTemplate mediaconvert:GetPolicy mediaconvert:GetPreset mediaconvert:GetQueue mediaconvert:ListJobTemplates mediaconvert:ListJobs mediaconvert:ListPresets mediaconvert:ListQueues mediaconvert:ListVersions mediaconvert:Probe mediaconvert:PutPolicy mediaconvert:SearchJobs mediaconvert:UpdateJobTemplate mediaconvert:UpdatePreset mediaconvert:UpdateQueue  | 
| medialive |  medialive:AcceptInputDeviceTransfer medialive:BatchDelete medialive:BatchStart medialive:BatchStop medialive:BatchUpdateSchedule medialive:CancelInputDeviceTransfer medialive:ClaimDevice medialive:CreateChannel medialive:CreateChannelPlacementGroup medialive:CreateCloudWatchAlarmTemplate medialive:CreateCloudWatchAlarmTemplateGroup medialive:CreateCluster medialive:CreateEventBridgeRuleTemplate medialive:CreateEventBridgeRuleTemplateGroup medialive:CreateInput medialive:CreateInputSecurityGroup medialive:CreateMultiplex medialive:CreateMultiplexProgram medialive:CreateNetwork medialive:CreateNode medialive:CreateNodeRegistrationScript medialive:CreatePartnerInput medialive:CreateSdiSource medialive:CreateSignalMap medialive:DeleteChannel medialive:DeleteChannelPlacementGroup medialive:DeleteCloudWatchAlarmTemplate medialive:DeleteCloudWatchAlarmTemplateGroup medialive:DeleteCluster medialive:DeleteEventBridgeRuleTemplate medialive:DeleteEventBridgeRuleTemplateGroup medialive:DeleteInput medialive:DeleteInputSecurityGroup medialive:DeleteMultiplex medialive:DeleteMultiplexProgram medialive:DeleteNetwork medialive:DeleteNode medialive:DeleteReservation medialive:DeleteSchedule medialive:DeleteSdiSource medialive:DeleteSignalMap medialive:DescribeAccountConfiguration medialive:DescribeChannel medialive:DescribeChannelPlacementGroup medialive:DescribeCluster medialive:DescribeInput medialive:DescribeInputDevice medialive:DescribeInputDeviceThumbnail medialive:DescribeInputSecurityGroup medialive:DescribeMultiplex medialive:DescribeMultiplexProgram medialive:DescribeNetwork medialive:DescribeNode medialive:DescribeOffering medialive:DescribeReservation medialive:DescribeSchedule medialive:DescribeSdiSource medialive:DescribeThumbnails medialive:GetCloudWatchAlarmTemplate medialive:GetCloudWatchAlarmTemplateGroup medialive:GetEventBridgeRuleTemplate medialive:GetEventBridgeRuleTemplateGroup medialive:GetSignalMap medialive:ListAlerts medialive:ListChannelPlacementGroups medialive:ListChannels medialive:ListCloudWatchAlarmTemplateGroups medialive:ListCloudWatchAlarmTemplates medialive:ListClusterAlerts medialive:ListClusters medialive:ListEventBridgeRuleTemplateGroups medialive:ListEventBridgeRuleTemplates medialive:ListInputDeviceTransfers medialive:ListInputDevices medialive:ListInputSecurityGroups medialive:ListInputs medialive:ListMultiplexAlerts medialive:ListMultiplexPrograms medialive:ListMultiplexes medialive:ListNetworks medialive:ListNodes medialive:ListOfferings medialive:ListReservations medialive:ListSdiSources medialive:ListSignalMaps medialive:ListVersions medialive:PurchaseOffering medialive:RebootInputDevice medialive:RejectInputDeviceTransfer medialive:RestartChannelPipelines medialive:StartChannel medialive:StartDeleteMonitorDeployment medialive:StartInputDevice medialive:StartInputDeviceMaintenanceWindow medialive:StartMonitorDeployment medialive:StartMultiplex medialive:StartUpdateSignalMap medialive:StopChannel medialive:StopInputDevice medialive:StopMultiplex medialive:TransferInputDevice medialive:UpdateAccountConfiguration medialive:UpdateChannel medialive:UpdateChannelClass medialive:UpdateChannelPlacementGroup medialive:UpdateCloudWatchAlarmTemplate medialive:UpdateCloudWatchAlarmTemplateGroup medialive:UpdateCluster medialive:UpdateEventBridgeRuleTemplate medialive:UpdateEventBridgeRuleTemplateGroup medialive:UpdateInput medialive:UpdateInputDevice medialive:UpdateInputSecurityGroup medialive:UpdateMultiplex medialive:UpdateMultiplexProgram medialive:UpdateNetwork medialive:UpdateNode medialive:UpdateNodeState medialive:UpdateReservation medialive:UpdateSdiSource  | 
| mediastore |  mediastore:CreateContainer mediastore:DeleteContainer mediastore:DeleteContainerPolicy mediastore:DeleteCorsPolicy mediastore:DeleteLifecyclePolicy mediastore:DeleteMetricPolicy mediastore:DescribeContainer mediastore:GetContainerPolicy mediastore:GetCorsPolicy mediastore:GetLifecyclePolicy mediastore:GetMetricPolicy mediastore:ListContainers mediastore:PutContainerPolicy mediastore:PutCorsPolicy mediastore:PutLifecyclePolicy mediastore:PutMetricPolicy mediastore:StartAccessLogging mediastore:StopAccessLogging  | 
| mediatailor |  mediatailor:ConfigureLogsForPlaybackConfiguration mediatailor:CreateChannel mediatailor:CreateLiveSource mediatailor:CreatePrefetchSchedule mediatailor:CreateProgram mediatailor:CreateSourceLocation mediatailor:CreateVodSource mediatailor:DeleteChannel mediatailor:DeleteChannelPolicy mediatailor:DeleteLiveSource mediatailor:DeletePlaybackConfiguration mediatailor:DeletePrefetchSchedule mediatailor:DeleteProgram mediatailor:DeleteSourceLocation mediatailor:DeleteVodSource mediatailor:DescribeChannel mediatailor:DescribeLiveSource mediatailor:DescribeProgram mediatailor:DescribeSourceLocation mediatailor:DescribeVodSource mediatailor:GetChannelPolicy mediatailor:GetChannelSchedule mediatailor:GetPlaybackConfiguration mediatailor:GetPrefetchSchedule mediatailor:ListAlerts mediatailor:ListChannels mediatailor:ListLiveSources mediatailor:ListPlaybackConfigurations mediatailor:ListPrefetchSchedules mediatailor:ListSourceLocations mediatailor:ListVodSources mediatailor:PutChannelPolicy mediatailor:PutPlaybackConfiguration mediatailor:StartChannel mediatailor:StopChannel mediatailor:UpdateChannel mediatailor:UpdateLiveSource mediatailor:UpdateProgram mediatailor:UpdateSourceLocation mediatailor:UpdateVodSource  | 
| memorydb |  memorydb:BatchUpdateCluster memorydb:CopySnapshot memorydb:CreateAcl memorydb:CreateCluster memorydb:CreateMultiRegionCluster memorydb:CreateParameterGroup memorydb:CreateSnapshot memorydb:CreateSubnetGroup memorydb:CreateUser memorydb:DeleteAcl memorydb:DeleteCluster memorydb:DeleteMultiRegionCluster memorydb:DeleteParameterGroup memorydb:DeleteSnapshot memorydb:DeleteSubnetGroup memorydb:DeleteUser memorydb:DescribeAcls memorydb:DescribeClusters memorydb:DescribeEngineVersions memorydb:DescribeEvents memorydb:DescribeMultiRegionClusters memorydb:DescribeMultiRegionParameterGroups memorydb:DescribeMultiRegionParameters memorydb:DescribeParameterGroups memorydb:DescribeParameters memorydb:DescribeReservedNodes memorydb:DescribeReservedNodesOfferings memorydb:DescribeServiceUpdates memorydb:DescribeSnapshots memorydb:DescribeSubnetGroups memorydb:DescribeUsers memorydb:FailoverShard memorydb:ListAllowedMultiRegionClusterUpdates memorydb:ListAllowedNodeTypeUpdates memorydb:PurchaseReservedNodesOffering memorydb:ResetParameterGroup memorydb:UpdateAcl memorydb:UpdateCluster memorydb:UpdateMultiRegionCluster memorydb:UpdateParameterGroup memorydb:UpdateSubnetGroup memorydb:UpdateUser  | 
| mgh |  mgh:AssociateCreatedArtifact mgh:AssociateDiscoveredResource mgh:AssociateSourceResource mgh:CreateHomeRegionControl mgh:CreateProgressUpdateStream mgh:DeleteHomeRegionControl mgh:DeleteProgressUpdateStream mgh:DescribeApplicationState mgh:DescribeHomeRegionControls mgh:DescribeMigrationTask mgh:DisassociateCreatedArtifact mgh:DisassociateDiscoveredResource mgh:DisassociateSourceResource mgh:GetHomeRegion mgh:ImportMigrationTask mgh:ListApplicationStates mgh:ListCreatedArtifacts mgh:ListDiscoveredResources mgh:ListMigrationTaskUpdates mgh:ListMigrationTasks mgh:ListProgressUpdateStreams mgh:ListSourceResources mgh:NotifyApplicationState mgh:NotifyMigrationTaskState mgh:PutResourceAttributes  | 
| mgn |  mgn:ArchiveApplication mgn:ArchiveWave mgn:AssociateApplications mgn:AssociateSourceServers mgn:ChangeServerLifeCycleState mgn:CreateApplication mgn:CreateConnector mgn:CreateLaunchConfigurationTemplate mgn:CreateReplicationConfigurationTemplate mgn:CreateWave mgn:DeleteApplication mgn:DeleteConnector mgn:DeleteJob mgn:DeleteLaunchConfigurationTemplate mgn:DeleteReplicationConfigurationTemplate mgn:DeleteSourceServer mgn:DeleteVcenterClient mgn:DeleteWave mgn:DescribeJobLogItems mgn:DescribeJobs mgn:DescribeLaunchConfigurationTemplates mgn:DescribeReplicationConfigurationTemplates mgn:DescribeVcenterClients mgn:DisassociateApplications mgn:DisassociateSourceServers mgn:DisconnectFromService mgn:FinalizeCutover mgn:GetReplicationConfiguration mgn:InitializeService mgn:ListConnectors mgn:ListExportErrors mgn:ListExports mgn:ListImportErrors mgn:ListImports mgn:ListManagedAccounts mgn:ListSourceServerActions mgn:ListTemplateActions mgn:MarkAsArchived mgn:PauseReplication mgn:PutSourceServerAction mgn:PutTemplateAction mgn:RemoveSourceServerAction mgn:RemoveTemplateAction mgn:ResumeReplication mgn:RetryDataReplication mgn:StartCutover mgn:StartExport mgn:StartImport mgn:StartReplication mgn:StartTest mgn:StopReplication mgn:TerminateTargetInstances mgn:UnarchiveApplication mgn:UnarchiveWave mgn:UpdateApplication mgn:UpdateConnector mgn:UpdateLaunchConfigurationTemplate mgn:UpdateReplicationConfiguration mgn:UpdateReplicationConfigurationTemplate mgn:UpdateSourceServer mgn:UpdateSourceServerReplicationType mgn:UpdateWave  | 
| migrationhub-strategy |  migrationhub-strategy:GetAntiPattern migrationhub-strategy:GetApplicationComponentDetails migrationhub-strategy:GetApplicationComponentStrategies migrationhub-strategy:GetAssessment migrationhub-strategy:GetImportFileTask migrationhub-strategy:GetLatestAssessmentId migrationhub-strategy:GetMessage migrationhub-strategy:GetPortfolioPreferences migrationhub-strategy:GetPortfolioSummary migrationhub-strategy:GetRecommendationReportDetails migrationhub-strategy:GetServerDetails migrationhub-strategy:GetServerStrategies migrationhub-strategy:ListAnalyzableServers migrationhub-strategy:ListAntiPatterns migrationhub-strategy:ListApplicationComponents migrationhub-strategy:ListCollectors migrationhub-strategy:ListImportFileTask migrationhub-strategy:ListJarArtifacts migrationhub-strategy:ListServers migrationhub-strategy:PutLogData migrationhub-strategy:PutMetricData migrationhub-strategy:PutPortfolioPreferences migrationhub-strategy:RegisterCollector migrationhub-strategy:SendMessage migrationhub-strategy:StartAssessment migrationhub-strategy:StartImportFileTask migrationhub-strategy:StartRecommendationReportGeneration migrationhub-strategy:StopAssessment migrationhub-strategy:UpdateApplicationComponentConfig migrationhub-strategy:UpdateCollectorConfiguration migrationhub-strategy:UpdateServerConfig  | 
| mobiletargeting |  mobiletargeting:CreateApp mobiletargeting:CreateCampaign mobiletargeting:CreateEmailTemplate mobiletargeting:CreateExportJob mobiletargeting:CreateImportJob mobiletargeting:CreateInAppTemplate mobiletargeting:CreateJourney mobiletargeting:CreatePushTemplate mobiletargeting:CreateRecommenderConfiguration mobiletargeting:CreateSegment mobiletargeting:CreateSmsTemplate mobiletargeting:CreateVoiceTemplate mobiletargeting:DeleteAdmChannel mobiletargeting:DeleteApnsChannel mobiletargeting:DeleteApnsSandboxChannel mobiletargeting:DeleteApnsVoipChannel mobiletargeting:DeleteApnsVoipSandboxChannel mobiletargeting:DeleteApp mobiletargeting:DeleteBaiduChannel mobiletargeting:DeleteCampaign mobiletargeting:DeleteEmailChannel mobiletargeting:DeleteEmailTemplate mobiletargeting:DeleteEndpoint mobiletargeting:DeleteEventStream mobiletargeting:DeleteGcmChannel mobiletargeting:DeleteInAppTemplate mobiletargeting:DeleteJourney mobiletargeting:DeletePushTemplate mobiletargeting:DeleteRecommenderConfiguration mobiletargeting:DeleteSegment mobiletargeting:DeleteSmsChannel mobiletargeting:DeleteSmsTemplate mobiletargeting:DeleteUserEndpoints mobiletargeting:DeleteVoiceChannel mobiletargeting:DeleteVoiceTemplate mobiletargeting:GetAdmChannel mobiletargeting:GetApnsChannel mobiletargeting:GetApnsSandboxChannel mobiletargeting:GetApnsVoipChannel mobiletargeting:GetApnsVoipSandboxChannel mobiletargeting:GetApp mobiletargeting:GetApplicationDateRangeKpi mobiletargeting:GetApplicationSettings mobiletargeting:GetApps mobiletargeting:GetBaiduChannel mobiletargeting:GetCampaign mobiletargeting:GetCampaignActivities mobiletargeting:GetCampaignDateRangeKpi mobiletargeting:GetCampaignVersion mobiletargeting:GetCampaignVersions mobiletargeting:GetCampaigns mobiletargeting:GetChannels mobiletargeting:GetEmailChannel mobiletargeting:GetEmailTemplate mobiletargeting:GetEndpoint mobiletargeting:GetEventStream mobiletargeting:GetExportJob mobiletargeting:GetExportJobs mobiletargeting:GetGcmChannel mobiletargeting:GetImportJob mobiletargeting:GetImportJobs mobiletargeting:GetInAppMessages mobiletargeting:GetInAppTemplate mobiletargeting:GetJourney mobiletargeting:GetJourneyDateRangeKpi mobiletargeting:GetJourneyExecutionActivityMetrics mobiletargeting:GetJourneyExecutionMetrics mobiletargeting:GetJourneyRunExecutionActivityMetrics mobiletargeting:GetJourneyRunExecutionMetrics mobiletargeting:GetJourneyRuns mobiletargeting:GetPushTemplate mobiletargeting:GetRecommenderConfiguration mobiletargeting:GetRecommenderConfigurations mobiletargeting:GetSegment mobiletargeting:GetSegmentExportJobs mobiletargeting:GetSegmentImportJobs mobiletargeting:GetSegmentVersion mobiletargeting:GetSegmentVersions mobiletargeting:GetSegments mobiletargeting:GetSmsChannel mobiletargeting:GetSmsTemplate mobiletargeting:GetUserEndpoints mobiletargeting:GetVoiceChannel mobiletargeting:GetVoiceTemplate mobiletargeting:ListJourneys mobiletargeting:ListTemplateVersions mobiletargeting:ListTemplates mobiletargeting:PhoneNumberValidate mobiletargeting:PutEventStream mobiletargeting:RemoveAttributes mobiletargeting:UpdateAdmChannel mobiletargeting:UpdateApnsChannel mobiletargeting:UpdateApnsSandboxChannel mobiletargeting:UpdateApnsVoipChannel mobiletargeting:UpdateApnsVoipSandboxChannel mobiletargeting:UpdateApplicationSettings mobiletargeting:UpdateBaiduChannel mobiletargeting:UpdateCampaign mobiletargeting:UpdateEmailChannel mobiletargeting:UpdateEmailTemplate mobiletargeting:UpdateEndpoint mobiletargeting:UpdateEndpointsBatch mobiletargeting:UpdateGcmChannel mobiletargeting:UpdateInAppTemplate mobiletargeting:UpdateJourney mobiletargeting:UpdateJourneyState mobiletargeting:UpdatePushTemplate mobiletargeting:UpdateRecommenderConfiguration mobiletargeting:UpdateSegment mobiletargeting:UpdateSmsChannel mobiletargeting:UpdateSmsTemplate mobiletargeting:UpdateTemplateActiveVersion mobiletargeting:UpdateVoiceChannel mobiletargeting:UpdateVoiceTemplate mobiletargeting:VerifyOTPMessage  | 
| mq |  mq:CreateBroker mq:CreateConfiguration mq:CreateUser mq:DeleteBroker mq:DeleteConfiguration mq:DeleteUser mq:DescribeBroker mq:DescribeBrokerEngineTypes mq:DescribeBrokerInstanceOptions mq:DescribeConfiguration mq:DescribeConfigurationRevision mq:DescribeUser mq:ListBrokers mq:ListConfigurationRevisions mq:ListConfigurations mq:ListUsers mq:Promote mq:RebootBroker mq:UpdateBroker mq:UpdateConfiguration mq:UpdateUser  | 
| networkmanager |  networkmanager:AcceptAttachment networkmanager:AssociateConnectPeer networkmanager:AssociateCustomerGateway networkmanager:AssociateLink networkmanager:AssociateTransitGatewayConnectPeer networkmanager:CreateConnectAttachment networkmanager:CreateConnectPeer networkmanager:CreateConnection networkmanager:CreateCoreNetwork networkmanager:CreateDevice networkmanager:CreateDirectConnectGatewayAttachment networkmanager:CreateGlobalNetwork networkmanager:CreateLink networkmanager:CreateSite networkmanager:CreateSiteToSiteVpnAttachment networkmanager:CreateTransitGatewayPeering networkmanager:CreateTransitGatewayRouteTableAttachment networkmanager:CreateVpcAttachment networkmanager:DeleteAttachment networkmanager:DeleteConnectPeer networkmanager:DeleteConnection networkmanager:DeleteCoreNetwork networkmanager:DeleteCoreNetworkPolicyVersion networkmanager:DeleteDevice networkmanager:DeleteGlobalNetwork networkmanager:DeleteLink networkmanager:DeletePeering networkmanager:DeleteResourcePolicy networkmanager:DeleteSite networkmanager:DeregisterTransitGateway networkmanager:DescribeGlobalNetworks networkmanager:DisassociateConnectPeer networkmanager:DisassociateCustomerGateway networkmanager:DisassociateLink networkmanager:DisassociateTransitGatewayConnectPeer networkmanager:ExecuteCoreNetworkChangeSet networkmanager:GetConnectAttachment networkmanager:GetConnectPeer networkmanager:GetConnectPeerAssociations networkmanager:GetConnections networkmanager:GetCoreNetwork networkmanager:GetCoreNetworkChangeEvents networkmanager:GetCoreNetworkChangeSet networkmanager:GetCoreNetworkPolicy networkmanager:GetCustomerGatewayAssociations networkmanager:GetDevices networkmanager:GetLinkAssociations networkmanager:GetLinks networkmanager:GetNetworkResourceCounts networkmanager:GetNetworkResourceRelationships networkmanager:GetNetworkResources networkmanager:GetNetworkRoutes networkmanager:GetNetworkTelemetry networkmanager:GetResourcePolicy networkmanager:GetRouteAnalysis networkmanager:GetSiteToSiteVpnAttachment networkmanager:GetSites networkmanager:GetTransitGatewayConnectPeerAssociations networkmanager:GetTransitGatewayPeering networkmanager:GetTransitGatewayRegistrations networkmanager:GetTransitGatewayRouteTableAttachment networkmanager:GetVpcAttachment networkmanager:ListAttachmentRoutingPolicyAssociations networkmanager:ListAttachments networkmanager:ListConnectPeers networkmanager:ListCoreNetworkPolicyVersions networkmanager:ListCoreNetworkPrefixListAssociations networkmanager:ListCoreNetworkRoutingInformation networkmanager:ListCoreNetworks networkmanager:ListOrganizationServiceAccessStatus networkmanager:ListPeerings networkmanager:PutAttachmentRoutingPolicyLabel networkmanager:PutCoreNetworkPolicy networkmanager:PutResourcePolicy networkmanager:RegisterTransitGateway networkmanager:RejectAttachment networkmanager:RemoveAttachmentRoutingPolicyLabel networkmanager:RestoreCoreNetworkPolicyVersion networkmanager:StartOrganizationServiceAccessUpdate networkmanager:StartRouteAnalysis networkmanager:UpdateConnection networkmanager:UpdateCoreNetwork networkmanager:UpdateDevice networkmanager:UpdateDirectConnectGatewayAttachment networkmanager:UpdateGlobalNetwork networkmanager:UpdateLink networkmanager:UpdateNetworkResourceMetadata networkmanager:UpdateSite networkmanager:UpdateVpcAttachment  | 
| nimble |  nimble:AcceptEulas nimble:CreateLaunchProfile nimble:CreateStreamingImage nimble:CreateStreamingSession nimble:CreateStreamingSessionStream nimble:CreateStudio nimble:CreateStudioComponent nimble:DeleteLaunchProfile nimble:DeleteLaunchProfileMember nimble:DeleteStreamingImage nimble:DeleteStreamingSession nimble:DeleteStudio nimble:DeleteStudioComponent nimble:DeleteStudioMember nimble:GetEula nimble:GetLaunchProfileDetails nimble:GetStreamingImage nimble:GetStreamingSession nimble:GetStreamingSessionBackup nimble:GetStreamingSessionStream nimble:GetStudio nimble:GetStudioComponent nimble:GetStudioMember nimble:ListEulas nimble:ListLaunchProfileMembers nimble:ListLaunchProfiles nimble:ListStreamingImages nimble:ListStreamingSessionBackups nimble:ListStreamingSessions nimble:ListStudioComponents nimble:ListStudioMembers nimble:ListStudios nimble:PutLaunchProfileMembers nimble:PutStudioMembers nimble:StartStreamingSession nimble:StartStudioSSOConfigurationRepair nimble:StopStreamingSession nimble:UpdateLaunchProfile nimble:UpdateLaunchProfileMember nimble:UpdateStreamingImage nimble:UpdateStudio nimble:UpdateStudioComponent  | 
| omics |  omics:AbortMultipartReadSetUpload omics:AcceptShare omics:BatchDeleteReadSet omics:CancelAnnotationImportJob omics:CancelRun omics:CancelVariantImportJob omics:CompleteMultipartReadSetUpload omics:CreateAnnotationStore omics:CreateAnnotationStoreVersion omics:CreateMultipartReadSetUpload omics:CreateReferenceStore omics:CreateRunGroup omics:CreateSequenceStore omics:CreateShare omics:CreateVariantStore omics:CreateWorkflow omics:CreateWorkflowVersion omics:DeleteAnnotationStore omics:DeleteAnnotationStoreVersions omics:DeleteReference omics:DeleteReferenceStore omics:DeleteRun omics:DeleteRunGroup omics:DeleteSequenceStore omics:DeleteShare omics:DeleteVariantStore omics:DeleteWorkflow omics:DeleteWorkflowVersion omics:GetAnnotationImportJob omics:GetAnnotationStore omics:GetAnnotationStoreVersion omics:GetReadSet omics:GetReadSetActivationJob omics:GetReadSetExportJob omics:GetReadSetImportJob omics:GetReadSetMetadata omics:GetReference omics:GetReferenceImportJob omics:GetReferenceMetadata omics:GetReferenceStore omics:GetRun omics:GetRunGroup omics:GetRunTask omics:GetSequenceStore omics:GetShare omics:GetVariantImportJob omics:GetVariantStore omics:GetWorkflow omics:GetWorkflowVersion omics:ListAnnotationImportJobs omics:ListAnnotationStoreVersions omics:ListAnnotationStores omics:ListMultipartReadSetUploads omics:ListReadSetActivationJobs omics:ListReadSetExportJobs omics:ListReadSetImportJobs omics:ListReadSetUploadParts omics:ListReadSets omics:ListReferenceImportJobs omics:ListReferenceStores omics:ListReferences omics:ListRunGroups omics:ListRunTasks omics:ListRuns omics:ListSequenceStores omics:ListShares omics:ListVariantImportJobs omics:ListVariantStores omics:ListWorkflowVersions omics:ListWorkflows omics:StartAnnotationImportJob omics:StartReadSetActivationJob omics:StartReadSetExportJob omics:StartReadSetImportJob omics:StartReferenceImportJob omics:StartRun omics:StartVariantImportJob omics:UpdateAnnotationStore omics:UpdateAnnotationStoreVersion omics:UpdateRunGroup omics:UpdateVariantStore omics:UpdateWorkflow omics:UpdateWorkflowVersion omics:UploadReadSetPart  | 
| opsworks |  opsworks:AssignInstance opsworks:AssignVolume opsworks:AssociateElasticIp opsworks:AttachElasticLoadBalancer opsworks:CloneStack opsworks:CreateApp opsworks:CreateDeployment opsworks:CreateInstance opsworks:CreateLayer opsworks:CreateStack opsworks:CreateUserProfile opsworks:DeleteApp opsworks:DeleteInstance opsworks:DeleteLayer opsworks:DeleteStack opsworks:DeleteUserProfile opsworks:DeregisterEcsCluster opsworks:DeregisterElasticIp opsworks:DeregisterInstance opsworks:DeregisterRdsDbInstance opsworks:DeregisterVolume opsworks:DescribeAgentVersions opsworks:DescribeApps opsworks:DescribeCommands opsworks:DescribeDeployments opsworks:DescribeEcsClusters opsworks:DescribeElasticIps opsworks:DescribeElasticLoadBalancers opsworks:DescribeInstances opsworks:DescribeLayers opsworks:DescribeLoadBasedAutoScaling opsworks:DescribeMyUserProfile opsworks:DescribeOperatingSystems opsworks:DescribePermissions opsworks:DescribeRaidArrays opsworks:DescribeRdsDbInstances opsworks:DescribeServiceErrors opsworks:DescribeStackProvisioningParameters opsworks:DescribeStackSummary opsworks:DescribeStacks opsworks:DescribeTimeBasedAutoScaling opsworks:DescribeUserProfiles opsworks:DescribeVolumes opsworks:DetachElasticLoadBalancer opsworks:DisassociateElasticIp opsworks:GetHostnameSuggestion opsworks:GrantAccess opsworks:RebootInstance opsworks:RegisterEcsCluster opsworks:RegisterElasticIp opsworks:RegisterInstance opsworks:RegisterRdsDbInstance opsworks:RegisterVolume opsworks:SetLoadBasedAutoScaling opsworks:SetPermission opsworks:SetTimeBasedAutoScaling opsworks:StartInstance opsworks:StartStack opsworks:StopInstance opsworks:StopStack opsworks:UnassignInstance opsworks:UnassignVolume opsworks:UpdateApp opsworks:UpdateElasticIp opsworks:UpdateInstance opsworks:UpdateLayer opsworks:UpdateMyUserProfile opsworks:UpdateRdsDbInstance opsworks:UpdateStack opsworks:UpdateUserProfile opsworks:UpdateVolume  | 
| opsworks-cm |  opsworks-cm:AssociateNode opsworks-cm:CreateBackup opsworks-cm:CreateServer opsworks-cm:DeleteBackup opsworks-cm:DeleteServer opsworks-cm:DescribeAccountAttributes opsworks-cm:DescribeBackups opsworks-cm:DescribeEvents opsworks-cm:DescribeNodeAssociationStatus opsworks-cm:DescribeServers opsworks-cm:DisassociateNode opsworks-cm:ExportServerEngineAttribute opsworks-cm:RestoreServer opsworks-cm:StartMaintenance opsworks-cm:UpdateServer opsworks-cm:UpdateServerEngineAttributes  | 
| 組織 |  organizations:AcceptHandshake organizations:AttachPolicy organizations:CancelHandshake organizations:CloseAccount organizations:CreateAccount organizations:CreateGovCloudAccount organizations:CreateOrganization organizations:CreateOrganizationalUnit organizations:CreatePolicy organizations:DeclineHandshake organizations:DeleteOrganization organizations:DeleteOrganizationalUnit organizations:DeletePolicy organizations:DeleteResourcePolicy organizations:DeregisterDelegatedAdministrator organizations:DescribeAccount organizations:DescribeCreateAccountStatus organizations:DescribeEffectivePolicy organizations:DescribeHandshake organizations:DescribeOrganization organizations:DescribeOrganizationalUnit organizations:DescribePolicy organizations:DescribeResourcePolicy organizations:DescribeResponsibilityTransfer organizations:DetachPolicy organizations:DisableAWSServiceAccess organizations:DisablePolicyType organizations:EnableAWSServiceAccess organizations:EnableAllFeatures organizations:EnablePolicyType organizations:InviteAccountToOrganization organizations:LeaveOrganization organizations:ListAWSServiceAccessForOrganization organizations:ListAccounts organizations:ListAccountsForParent organizations:ListAccountsWithInvalidEffectivePolicy organizations:ListChildren organizations:ListCreateAccountStatus organizations:ListDelegatedAdministrators organizations:ListDelegatedServicesForAccount organizations:ListHandshakesForAccount organizations:ListHandshakesForOrganization organizations:ListInboundResponsibilityTransfers organizations:ListOrganizationalUnitsForParent organizations:ListOutboundResponsibilityTransfers organizations:ListParents organizations:ListPolicies organizations:ListPoliciesForTarget organizations:ListRoots organizations:ListTargetsForPolicy organizations:MoveAccount organizations:PutResourcePolicy organizations:RegisterDelegatedAdministrator organizations:RemoveAccountFromOrganization organizations:TerminateResponsibilityTransfer organizations:UpdateOrganizationalUnit organizations:UpdatePolicy organizations:UpdateResponsibilityTransfer  | 
| outposts |  outposts:CancelCapacityTask outposts:CancelOrder outposts:CreateOrder outposts:CreateOutpost outposts:CreatePrivateConnectivityConfig outposts:CreateSite outposts:DeleteOutpost outposts:DeleteSite outposts:GetCapacityTask outposts:GetCatalogItem outposts:GetConnection outposts:GetOrder outposts:GetOutpost outposts:GetOutpostBillingInformation outposts:GetOutpostInstanceTypes outposts:GetOutpostSupportedInstanceTypes outposts:GetPrivateConnectivityConfig outposts:GetSite outposts:GetSiteAddress outposts:ListAssetInstances outposts:ListAssets outposts:ListBlockingInstancesForCapacityTask outposts:ListCapacityTasks outposts:ListCatalogItems outposts:ListOrders outposts:ListOutposts outposts:ListSites outposts:StartCapacityTask outposts:StartConnection outposts:UpdateOutpost outposts:UpdateSite outposts:UpdateSiteAddress outposts:UpdateSiteRackPhysicalProperties  | 
| panorama |  panorama:CreateApplicationInstance panorama:CreateJobForDevices panorama:CreateNodeFromTemplateJob panorama:CreatePackage panorama:CreatePackageImportJob panorama:DeleteDevice panorama:DeletePackage panorama:DeregisterPackageVersion panorama:DescribeApplicationInstance panorama:DescribeApplicationInstanceDetails panorama:DescribeDevice panorama:DescribeDeviceJob panorama:DescribeNode panorama:DescribeNodeFromTemplateJob panorama:DescribePackage panorama:DescribePackageImportJob panorama:DescribePackageVersion panorama:ListApplicationInstanceDependencies panorama:ListApplicationInstanceNodeInstances panorama:ListApplicationInstances panorama:ListDevices panorama:ListDevicesJobs panorama:ListNodeFromTemplateJobs panorama:ListNodes panorama:ListPackageImportJobs panorama:ListPackages panorama:ProvisionDevice panorama:RegisterPackageVersion panorama:RemoveApplicationInstance panorama:SignalApplicationInstanceNodeInstances panorama:UpdateDeviceMetadata  | 
| pi |  pi:CreatePerformanceAnalysisReport pi:DeletePerformanceAnalysisReport pi:DescribeDimensionKeys pi:GetDimensionKeyDetails pi:GetPerformanceAnalysisReport pi:GetResourceMetadata pi:GetResourceMetrics pi:ListAvailableResourceDimensions pi:ListAvailableResourceMetrics pi:ListPerformanceAnalysisReports  | 
| pipes |  pipes:CreatePipe pipes:DeletePipe pipes:DescribePipe pipes:ListPipes pipes:StartPipe pipes:StopPipe pipes:UpdatePipe  | 
| polly |  polly:DeleteLexicon polly:DescribeVoices polly:GetLexicon polly:GetSpeechSynthesisTask polly:ListLexicons polly:ListSpeechSynthesisTasks polly:PutLexicon polly:StartSpeechSynthesisTask polly:SynthesizeSpeech  | 
| profile |  profile:AddProfileKey profile:BatchGetCalculatedAttributeForProfile profile:BatchGetProfile profile:CreateCalculatedAttributeDefinition profile:CreateDomain profile:CreateEventStream profile:CreateProfile profile:CreateRecommender profile:CreateSegmentDefinition profile:CreateSegmentEstimate profile:CreateSegmentSnapshot profile:CreateUploadJob profile:DeleteCalculatedAttributeDefinition profile:DeleteDomain profile:DeleteDomainObjectType profile:DeleteEventStream profile:DeleteIntegration profile:DeleteProfile profile:DeleteProfileKey profile:DeleteProfileObject profile:DeleteProfileObjectType profile:DeleteRecommender profile:DeleteSegmentDefinition profile:DeleteWorkflow profile:DetectProfileObjectType profile:GetAutoMergingPreview profile:GetCalculatedAttributeDefinition profile:GetCalculatedAttributeForProfile profile:GetDomain profile:GetDomainObjectType profile:GetEventStream profile:GetIdentityResolutionJob profile:GetIntegration profile:GetMatches profile:GetObjectTypeAttributeStatistics profile:GetProfileObjectType profile:GetProfileObjectTypeTemplate profile:GetProfileRecommendations profile:GetRecommender profile:GetSegmentDefinition profile:GetSegmentEstimate profile:GetSegmentMembership profile:GetSegmentSnapshot profile:GetSimilarProfiles profile:GetUploadJob profile:GetUploadJobPath profile:GetWorkflow profile:GetWorkflowSteps profile:ListAccountIntegrations profile:ListCalculatedAttributeDefinitions profile:ListCalculatedAttributesForProfile profile:ListDomainLayouts profile:ListDomainObjectTypes profile:ListDomains profile:ListEventStreams profile:ListIdentityResolutionJobs profile:ListIntegrations profile:ListObjectTypeAttributeValues profile:ListObjectTypeAttributes profile:ListProfileAttributeValues profile:ListProfileObjectTypeTemplates profile:ListProfileObjectTypes profile:ListProfileObjects profile:ListRecommenderRecipes profile:ListRecommenders profile:ListRuleBasedMatches profile:ListSegmentDefinitions profile:ListUploadJobs profile:ListWorkflows profile:MergeProfiles profile:PutDomainObjectType profile:PutIntegration profile:PutProfileObject profile:PutProfileObjectType profile:SearchProfiles profile:StartRecommender profile:StartUploadJob profile:StopRecommender profile:StopUploadJob profile:UpdateCalculatedAttributeDefinition profile:UpdateDomain profile:UpdateProfile profile:UpdateRecommender  | 
| qldb |  qldb:CancelJournalKinesisStream qldb:CreateLedger qldb:DeleteLedger qldb:DescribeJournalKinesisStream qldb:DescribeJournalS3Export qldb:DescribeLedger qldb:ExportJournalToS3 qldb:GetBlock qldb:GetDigest qldb:GetRevision qldb:ListJournalKinesisStreamsForLedger qldb:ListJournalS3Exports qldb:ListJournalS3ExportsForLedger qldb:ListLedgers qldb:StreamJournalToKinesis qldb:UpdateLedger qldb:UpdateLedgerPermissionsMode  | 
| ram |  ram:AcceptResourceShareInvitation ram:AssociateResourceShare ram:AssociateResourceSharePermission ram:CreatePermission ram:CreatePermissionVersion ram:CreateResourceShare ram:DeletePermission ram:DeletePermissionVersion ram:DeleteResourceShare ram:DisassociateResourceShare ram:DisassociateResourceSharePermission ram:EnableSharingWithAwsOrganization ram:GetPermission ram:GetResourcePolicies ram:GetResourceShareAssociations ram:GetResourceShareInvitations ram:GetResourceShares ram:ListPendingInvitationResources ram:ListPermissionAssociations ram:ListPermissionVersions ram:ListPermissions ram:ListPrincipals ram:ListReplacePermissionAssociationsWork ram:ListResourceSharePermissions ram:ListResourceTypes ram:ListResources ram:PromotePermissionCreatedFromPolicy ram:PromoteResourceShareCreatedFromPolicy ram:RejectResourceShareInvitation ram:ReplacePermissionAssociations ram:SetDefaultPermissionVersion ram:UpdateResourceShare  | 
| rbin |  rbin:CreateRule rbin:DeleteRule rbin:GetRule rbin:ListRules rbin:LockRule rbin:UnlockRule rbin:UpdateRule  | 
| rds |  rds:AddRoleToDBCluster rds:AddRoleToDBInstance rds:AddSourceIdentifierToSubscription rds:ApplyPendingMaintenanceAction rds:AuthorizeDBSecurityGroupIngress rds:BacktrackDBCluster rds:CancelExportTask rds:CopyDBClusterParameterGroup rds:CopyDBClusterSnapshot rds:CopyDBParameterGroup rds:CopyDBSnapshot rds:CopyOptionGroup rds:CreateCustomDBEngineVersion rds:CreateDBClusterParameterGroup rds:CreateDBParameterGroup rds:CreateDBProxy rds:CreateDBProxyEndpoint rds:CreateDBSecurityGroup rds:CreateDBSubnetGroup rds:CreateEventSubscription rds:CreateGlobalCluster rds:CreateOptionGroup rds:DeleteBlueGreenDeployment rds:DeleteDBClusterAutomatedBackup rds:DeleteDBClusterParameterGroup rds:DeleteDBClusterSnapshot rds:DeleteDBInstanceAutomatedBackup rds:DeleteDBParameterGroup rds:DeleteDBProxy rds:DeleteDBProxyEndpoint rds:DeleteDBSecurityGroup rds:DeleteDBSnapshot rds:DeleteDBSubnetGroup rds:DeleteEventSubscription rds:DeleteGlobalCluster rds:DeleteOptionGroup rds:DeregisterDBProxyTargets rds:DescribeAccountAttributes rds:DescribeBlueGreenDeployments rds:DescribeCertificates rds:DescribeDBClusterAutomatedBackups rds:DescribeDBClusterBacktracks rds:DescribeDBClusterEndpoints rds:DescribeDBClusterParameterGroups rds:DescribeDBClusterParameters rds:DescribeDBClusterSnapshotAttributes rds:DescribeDBClusterSnapshots rds:DescribeDBClusters rds:DescribeDBEngineVersions rds:DescribeDBInstanceAutomatedBackups rds:DescribeDBInstances rds:DescribeDBLogFiles rds:DescribeDBMajorEngineVersions rds:DescribeDBParameterGroups rds:DescribeDBParameters rds:DescribeDBProxies rds:DescribeDBProxyEndpoints rds:DescribeDBProxyTargetGroups rds:DescribeDBProxyTargets rds:DescribeDBRecommendations rds:DescribeDBSecurityGroups rds:DescribeDBSnapshotAttributes rds:DescribeDBSnapshotTenantDatabases rds:DescribeDBSnapshots rds:DescribeDBSubnetGroups rds:DescribeEngineDefaultClusterParameters rds:DescribeEngineDefaultParameters rds:DescribeEventCategories rds:DescribeEventSubscriptions rds:DescribeEvents rds:DescribeExportTasks rds:DescribeGlobalClusters rds:DescribeIntegrations rds:DescribeOptionGroupOptions rds:DescribeOptionGroups rds:DescribeOrderableDBInstanceOptions rds:DescribePendingMaintenanceActions rds:DescribeReservedDBInstances rds:DescribeReservedDBInstancesOfferings rds:DescribeSourceRegions rds:DescribeTenantDatabases rds:DescribeValidDBInstanceModifications rds:DownloadCompleteDBLogFile rds:DownloadDBLogFilePortion rds:FailoverDBCluster rds:FailoverGlobalCluster rds:ModifyActivityStream rds:ModifyCertificates rds:ModifyCurrentDBClusterCapacity rds:ModifyDBClusterEndpoint rds:ModifyDBClusterParameterGroup rds:ModifyDBClusterSnapshotAttribute rds:ModifyDBParameterGroup rds:ModifyDBProxy rds:ModifyDBProxyEndpoint rds:ModifyDBProxyTargetGroup rds:ModifyDBRecommendation rds:ModifyDBSnapshot rds:ModifyDBSnapshotAttribute rds:ModifyDBSubnetGroup rds:ModifyEventSubscription rds:ModifyGlobalCluster rds:ModifyOptionGroup rds:ModifyTenantDatabase rds:PurchaseReservedDBInstancesOffering rds:RebootDBCluster rds:RegisterDBProxyTargets rds:RemoveFromGlobalCluster rds:RemoveRoleFromDBCluster rds:RemoveRoleFromDBInstance rds:RemoveSourceIdentifierFromSubscription rds:ResetDBClusterParameterGroup rds:ResetDBParameterGroup rds:RestoreDBClusterFromS3 rds:RestoreDBClusterFromSnapshot rds:RestoreDBClusterToPointInTime rds:RestoreDBInstanceFromDBSnapshot rds:RestoreDBInstanceFromS3 rds:RestoreDBInstanceToPointInTime rds:RevokeDBSecurityGroupIngress rds:StartActivityStream rds:StartDBCluster rds:StartDBInstance rds:StartDBInstanceAutomatedBackupsReplication rds:StartExportTask rds:StopActivityStream rds:StopDBCluster rds:StopDBInstance rds:StopDBInstanceAutomatedBackupsReplication rds:SwitchoverBlueGreenDeployment rds:SwitchoverGlobalCluster rds:SwitchoverReadReplica  | 
| redshift |  redshift:AcceptReservedNodeExchange redshift:AddPartner redshift:AssociateDataShareConsumer redshift:AuthorizeClusterSecurityGroupIngress redshift:AuthorizeDataShare redshift:AuthorizeEndpointAccess redshift:AuthorizeSnapshotAccess redshift:BatchDeleteClusterSnapshots redshift:BatchModifyClusterSnapshots redshift:CancelQuery redshift:CancelResize redshift:CopyClusterSnapshot redshift:CreateAuthenticationProfile redshift:CreateCluster redshift:CreateClusterParameterGroup redshift:CreateClusterSecurityGroup redshift:CreateClusterSnapshot redshift:CreateClusterSubnetGroup redshift:CreateCustomDomainAssociation redshift:CreateEndpointAccess redshift:CreateEventSubscription redshift:CreateHsmClientCertificate redshift:CreateHsmConfiguration redshift:CreateIntegration redshift:CreateRedshiftIdcApplication redshift:CreateScheduledAction redshift:CreateSnapshotCopyGrant redshift:CreateSnapshotSchedule redshift:CreateUsageLimit redshift:DeauthorizeDataShare redshift:DeleteAuthenticationProfile redshift:DeleteCluster redshift:DeleteClusterParameterGroup redshift:DeleteClusterSecurityGroup redshift:DeleteClusterSnapshot redshift:DeleteClusterSubnetGroup redshift:DeleteCustomDomainAssociation redshift:DeleteEndpointAccess redshift:DeleteEventSubscription redshift:DeleteHsmClientCertificate redshift:DeleteHsmConfiguration redshift:DeletePartner redshift:DeleteRedshiftIdcApplication redshift:DeleteResourcePolicy redshift:DeleteScheduledAction redshift:DeleteSnapshotCopyGrant redshift:DeleteSnapshotSchedule redshift:DeleteUsageLimit redshift:DeregisterNamespace redshift:DescribeAccountAttributes redshift:DescribeAuthenticationProfiles redshift:DescribeClusterDbRevisions redshift:DescribeClusterParameterGroups redshift:DescribeClusterParameters redshift:DescribeClusterSecurityGroups redshift:DescribeClusterSnapshots redshift:DescribeClusterSubnetGroups redshift:DescribeClusterTracks redshift:DescribeClusterVersions redshift:DescribeClusters redshift:DescribeCustomDomainAssociations redshift:DescribeDataShares redshift:DescribeDataSharesForConsumer redshift:DescribeDataSharesForProducer redshift:DescribeDefaultClusterParameters redshift:DescribeEndpointAccess redshift:DescribeEndpointAuthorization redshift:DescribeEventCategories redshift:DescribeEventSubscriptions redshift:DescribeEvents redshift:DescribeHsmClientCertificates redshift:DescribeHsmConfigurations redshift:DescribeInboundIntegrations redshift:DescribeIntegrations redshift:DescribeLoggingStatus redshift:DescribeNodeConfigurationOptions redshift:DescribeOrderableClusterOptions redshift:DescribePartners redshift:DescribeRedshiftIdcApplications redshift:DescribeReservedNodeExchangeStatus redshift:DescribeReservedNodeOfferings redshift:DescribeReservedNodes redshift:DescribeResize redshift:DescribeScheduledActions redshift:DescribeSnapshotCopyGrants redshift:DescribeSnapshotSchedules redshift:DescribeStorage redshift:DescribeTableRestoreStatus redshift:DescribeUsageLimits redshift:DisableLogging redshift:DisableSnapshotCopy redshift:DisassociateDataShareConsumer redshift:EnableLogging redshift:EnableSnapshotCopy redshift:FailoverPrimaryCompute redshift:GetClusterCredentials redshift:GetClusterCredentialsWithIAM redshift:GetIdentityCenterAuthToken redshift:GetReservedNodeExchangeConfigurationOptions redshift:GetReservedNodeExchangeOfferings redshift:GetResourcePolicy redshift:ListRecommendations redshift:ModifyAquaConfiguration redshift:ModifyAuthenticationProfile redshift:ModifyCluster redshift:ModifyClusterDbRevision redshift:ModifyClusterIamRoles redshift:ModifyClusterMaintenance redshift:ModifyClusterParameterGroup redshift:ModifyClusterSnapshot redshift:ModifyClusterSnapshotSchedule redshift:ModifyClusterSubnetGroup redshift:ModifyCustomDomainAssociation redshift:ModifyEndpointAccess redshift:ModifyEventSubscription redshift:ModifyRedshiftIdcApplication redshift:ModifyScheduledAction redshift:ModifySnapshotCopyRetentionPeriod redshift:ModifySnapshotSchedule redshift:ModifyUsageLimit redshift:PauseCluster redshift:PurchaseReservedNodeOffering redshift:PutResourcePolicy redshift:RebootCluster redshift:RegisterNamespace redshift:RejectDataShare redshift:ResetClusterParameterGroup redshift:ResizeCluster redshift:RestoreFromClusterSnapshot redshift:RestoreTableFromClusterSnapshot redshift:ResumeCluster redshift:RevokeClusterSecurityGroupIngress redshift:RevokeEndpointAccess redshift:RevokeSnapshotAccess redshift:RotateEncryptionKey redshift:UpdatePartnerStatus  | 
| redshift-data |  redshift-data:BatchExecuteStatement redshift-data:CancelStatement redshift-data:DescribeStatement redshift-data:DescribeTable redshift-data:ExecuteStatement redshift-data:GetStatementResult redshift-data:ListDatabases redshift-data:ListSchemas redshift-data:ListStatements redshift-data:ListTables  | 
| refactor-spaces |  refactor-spaces:CreateApplication refactor-spaces:CreateEnvironment refactor-spaces:CreateRoute refactor-spaces:CreateService refactor-spaces:DeleteApplication refactor-spaces:DeleteEnvironment refactor-spaces:DeleteResourcePolicy refactor-spaces:DeleteRoute refactor-spaces:DeleteService refactor-spaces:GetApplication refactor-spaces:GetEnvironment refactor-spaces:GetResourcePolicy refactor-spaces:GetRoute refactor-spaces:GetService refactor-spaces:ListApplications refactor-spaces:ListEnvironmentVpcs refactor-spaces:ListEnvironments refactor-spaces:ListRoutes refactor-spaces:ListServices refactor-spaces:PutResourcePolicy refactor-spaces:UpdateRoute  | 
| rekognition |  rekognition:AssociateFaces rekognition:CompareFaces rekognition:CopyProjectVersion rekognition:CreateCollection rekognition:CreateDataset rekognition:CreateFaceLivenessSession rekognition:CreateProject rekognition:CreateProjectVersion rekognition:CreateStreamProcessor rekognition:CreateUser rekognition:DeleteCollection rekognition:DeleteDataset rekognition:DeleteFaces rekognition:DeleteProject rekognition:DeleteProjectPolicy rekognition:DeleteProjectVersion rekognition:DeleteStreamProcessor rekognition:DeleteUser rekognition:DescribeCollection rekognition:DescribeDataset rekognition:DescribeProjectVersions rekognition:DescribeProjects rekognition:DescribeStreamProcessor rekognition:DetectCustomLabels rekognition:DetectFaces rekognition:DetectLabels rekognition:DetectModerationLabels rekognition:DetectProtectiveEquipment rekognition:DetectText rekognition:DisassociateFaces rekognition:DistributeDatasetEntries rekognition:GetCelebrityInfo rekognition:GetCelebrityRecognition rekognition:GetContentModeration rekognition:GetFaceDetection rekognition:GetFaceLivenessSessionResults rekognition:GetFaceSearch rekognition:GetLabelDetection rekognition:GetMediaAnalysisJob rekognition:GetPersonTracking rekognition:GetSegmentDetection rekognition:GetTextDetection rekognition:IndexFaces rekognition:ListCollections rekognition:ListDatasetEntries rekognition:ListDatasetLabels rekognition:ListFaces rekognition:ListMediaAnalysisJobs rekognition:ListProjectPolicies rekognition:ListStreamProcessors rekognition:ListUsers rekognition:PutProjectPolicy rekognition:RecognizeCelebrities rekognition:SearchFaces rekognition:SearchFacesByImage rekognition:SearchUsers rekognition:SearchUsersByImage rekognition:StartCelebrityRecognition rekognition:StartContentModeration rekognition:StartFaceDetection rekognition:StartFaceLivenessSession rekognition:StartFaceSearch rekognition:StartLabelDetection rekognition:StartMediaAnalysisJob rekognition:StartPersonTracking rekognition:StartProjectVersion rekognition:StartSegmentDetection rekognition:StartStreamProcessor rekognition:StartTextDetection rekognition:StopProjectVersion rekognition:StopStreamProcessor rekognition:UpdateDatasetEntries rekognition:UpdateStreamProcessor  | 
| resiliencehub |  resiliencehub:AcceptResourceGroupingRecommendations resiliencehub:AddDraftAppVersionResourceMappings resiliencehub:BatchUpdateRecommendationStatus resiliencehub:CreateApp resiliencehub:CreateAppVersionAppComponent resiliencehub:CreateAppVersionResource resiliencehub:CreateRecommendationTemplate resiliencehub:CreateResiliencyPolicy resiliencehub:DeleteApp resiliencehub:DeleteAppAssessment resiliencehub:DeleteAppInputSource resiliencehub:DeleteAppVersionAppComponent resiliencehub:DeleteAppVersionResource resiliencehub:DeleteRecommendationTemplate resiliencehub:DeleteResiliencyPolicy resiliencehub:DescribeApp resiliencehub:DescribeAppAssessment resiliencehub:DescribeAppVersion resiliencehub:DescribeAppVersionAppComponent resiliencehub:DescribeAppVersionResource resiliencehub:DescribeAppVersionResourcesResolutionStatus resiliencehub:DescribeAppVersionTemplate resiliencehub:DescribeDraftAppVersionResourcesImportStatus resiliencehub:DescribeMetricsExport resiliencehub:DescribeResiliencyPolicy resiliencehub:DescribeResourceGroupingRecommendationTask resiliencehub:ImportResourcesToDraftAppVersion resiliencehub:ListAlarmRecommendations resiliencehub:ListAppAssessmentComplianceDrifts resiliencehub:ListAppAssessmentResourceDrifts resiliencehub:ListAppAssessments resiliencehub:ListAppComponentCompliances resiliencehub:ListAppComponentRecommendations resiliencehub:ListAppInputSources resiliencehub:ListAppVersionAppComponents resiliencehub:ListAppVersionResourceMappings resiliencehub:ListAppVersionResources resiliencehub:ListAppVersions resiliencehub:ListApps resiliencehub:ListMetrics resiliencehub:ListRecommendationTemplates resiliencehub:ListResiliencyPolicies resiliencehub:ListResourceGroupingRecommendations resiliencehub:ListSopRecommendations resiliencehub:ListSuggestedResiliencyPolicies resiliencehub:ListTestRecommendations resiliencehub:ListUnsupportedAppVersionResources resiliencehub:PublishAppVersion resiliencehub:PutDraftAppVersionTemplate resiliencehub:RejectResourceGroupingRecommendations resiliencehub:RemoveDraftAppVersionResourceMappings resiliencehub:ResolveAppVersionResources resiliencehub:StartAppAssessment resiliencehub:StartResourceGroupingRecommendationTask resiliencehub:UpdateApp resiliencehub:UpdateAppVersion resiliencehub:UpdateAppVersionAppComponent resiliencehub:UpdateAppVersionResource resiliencehub:UpdateResiliencyPolicy  | 
| resource-explorer-2 |  resource-explorer-2:AssociateDefaultView resource-explorer-2:BatchGetView resource-explorer-2:CreateIndex resource-explorer-2:CreateResourceExplorerSetup resource-explorer-2:CreateView resource-explorer-2:DeleteIndex resource-explorer-2:DeleteResourceExplorerSetup resource-explorer-2:DeleteView resource-explorer-2:DisassociateDefaultView resource-explorer-2:GetAccountLevelServiceConfiguration resource-explorer-2:GetDefaultView resource-explorer-2:GetIndex resource-explorer-2:GetManagedView resource-explorer-2:GetResourceExplorerSetup resource-explorer-2:GetServiceIndex resource-explorer-2:GetServiceView resource-explorer-2:ListIndexes resource-explorer-2:ListIndexesForMembers resource-explorer-2:ListManagedViews resource-explorer-2:ListServiceIndexes resource-explorer-2:ListServiceViews resource-explorer-2:ListStreamingAccessForServices resource-explorer-2:ListSupportedResourceTypes resource-explorer-2:ListViews resource-explorer-2:Search resource-explorer-2:UpdateIndexType resource-explorer-2:UpdateView  | 
| resource-groups |  resource-groups:CancelTagSyncTask resource-groups:GetAccountSettings resource-groups:GetGroup resource-groups:GetGroupConfiguration resource-groups:GetGroupQuery resource-groups:GetTagSyncTask resource-groups:GroupResources resource-groups:ListGroupResources resource-groups:ListGroupingStatuses resource-groups:ListGroups resource-groups:ListTagSyncTasks resource-groups:PutGroupConfiguration resource-groups:SearchResources resource-groups:StartTagSyncTask resource-groups:UngroupResources resource-groups:UpdateAccountSettings resource-groups:UpdateGroup resource-groups:UpdateGroupQuery  | 
| robomaker |  robomaker:BatchDeleteWorlds robomaker:BatchDescribeSimulationJob robomaker:CancelDeploymentJob robomaker:CancelSimulationJob robomaker:CancelSimulationJobBatch robomaker:CancelWorldExportJob robomaker:CancelWorldGenerationJob robomaker:CreateDeploymentJob robomaker:CreateFleet robomaker:CreateRobot robomaker:CreateRobotApplication robomaker:CreateRobotApplicationVersion robomaker:CreateSimulationApplication robomaker:CreateSimulationApplicationVersion robomaker:CreateSimulationJob robomaker:CreateWorldExportJob robomaker:CreateWorldGenerationJob robomaker:CreateWorldTemplate robomaker:DeleteFleet robomaker:DeleteRobot robomaker:DeleteRobotApplication robomaker:DeleteSimulationApplication robomaker:DeleteWorldTemplate robomaker:DeregisterRobot robomaker:DescribeDeploymentJob robomaker:DescribeFleet robomaker:DescribeRobot robomaker:DescribeRobotApplication robomaker:DescribeSimulationApplication robomaker:DescribeSimulationJob robomaker:DescribeSimulationJobBatch robomaker:DescribeWorld robomaker:DescribeWorldExportJob robomaker:DescribeWorldGenerationJob robomaker:DescribeWorldTemplate robomaker:GetWorldTemplateBody robomaker:ListDeploymentJobs robomaker:ListFleets robomaker:ListRobotApplications robomaker:ListRobots robomaker:ListSimulationApplications robomaker:ListSimulationJobBatches robomaker:ListSimulationJobs robomaker:ListWorldExportJobs robomaker:ListWorldGenerationJobs robomaker:ListWorldTemplates robomaker:ListWorlds robomaker:RegisterRobot robomaker:RestartSimulationJob robomaker:StartSimulationJobBatch robomaker:SyncDeploymentJob robomaker:UpdateRobotApplication robomaker:UpdateSimulationApplication robomaker:UpdateWorldTemplate  | 
| rolesanywhere |  rolesanywhere:CreateProfile rolesanywhere:CreateTrustAnchor rolesanywhere:DeleteAttributeMapping rolesanywhere:DeleteCrl rolesanywhere:DeleteProfile rolesanywhere:DeleteTrustAnchor rolesanywhere:DisableCrl rolesanywhere:DisableProfile rolesanywhere:DisableTrustAnchor rolesanywhere:EnableCrl rolesanywhere:EnableProfile rolesanywhere:EnableTrustAnchor rolesanywhere:GetCrl rolesanywhere:GetProfile rolesanywhere:GetSubject rolesanywhere:GetTrustAnchor rolesanywhere:ImportCrl rolesanywhere:ListCrls rolesanywhere:ListProfiles rolesanywhere:ListSubjects rolesanywhere:ListTrustAnchors rolesanywhere:PutAttributeMapping rolesanywhere:PutNotificationSettings rolesanywhere:ResetNotificationSettings rolesanywhere:UpdateCrl rolesanywhere:UpdateProfile rolesanywhere:UpdateTrustAnchor  | 
| route53 |  route53:ActivateKeySigningKey route53:AssociateVPCWithHostedZone route53:ChangeCidrCollection route53:ChangeResourceRecordSets route53:CreateCidrCollection route53:CreateHealthCheck route53:CreateHostedZone route53:CreateKeySigningKey route53:CreateQueryLoggingConfig route53:CreateReusableDelegationSet route53:CreateTrafficPolicy route53:CreateTrafficPolicyInstance route53:CreateTrafficPolicyVersion route53:CreateVPCAssociationAuthorization route53:DeactivateKeySigningKey route53:DeleteCidrCollection route53:DeleteHealthCheck route53:DeleteHostedZone route53:DeleteKeySigningKey route53:DeleteQueryLoggingConfig route53:DeleteReusableDelegationSet route53:DeleteTrafficPolicy route53:DeleteTrafficPolicyInstance route53:DeleteVPCAssociationAuthorization route53:DisableHostedZoneDNSSEC route53:DisassociateVPCFromHostedZone route53:EnableHostedZoneDNSSEC route53:GetAccountLimit route53:GetChange route53:GetCheckerIpRanges route53:GetDNSSEC route53:GetGeoLocation route53:GetHealthCheck route53:GetHealthCheckCount route53:GetHealthCheckLastFailureReason route53:GetHealthCheckStatus route53:GetHostedZone route53:GetHostedZoneCount route53:GetHostedZoneLimit route53:GetQueryLoggingConfig route53:GetReusableDelegationSet route53:GetReusableDelegationSetLimit route53:GetTrafficPolicy route53:GetTrafficPolicyInstance route53:GetTrafficPolicyInstanceCount route53:ListCidrBlocks route53:ListCidrCollections route53:ListCidrLocations route53:ListGeoLocations route53:ListHealthChecks route53:ListHostedZones route53:ListHostedZonesByName route53:ListHostedZonesByVPC route53:ListQueryLoggingConfigs route53:ListResourceRecordSets route53:ListReusableDelegationSets route53:ListTrafficPolicies route53:ListTrafficPolicyInstances route53:ListTrafficPolicyInstancesByHostedZone route53:ListTrafficPolicyInstancesByPolicy route53:ListTrafficPolicyVersions route53:ListVPCAssociationAuthorizations route53:TestDNSAnswer route53:UpdateHealthCheck route53:UpdateHostedZoneComment route53:UpdateTrafficPolicyComment route53:UpdateTrafficPolicyInstance  | 
| route53-recovery-control-config |  route53-recovery-control-config:CreateCluster route53-recovery-control-config:CreateControlPanel route53-recovery-control-config:CreateRoutingControl route53-recovery-control-config:CreateSafetyRule route53-recovery-control-config:DeleteCluster route53-recovery-control-config:DeleteControlPanel route53-recovery-control-config:DeleteRoutingControl route53-recovery-control-config:DeleteSafetyRule route53-recovery-control-config:DescribeCluster route53-recovery-control-config:DescribeControlPanel route53-recovery-control-config:DescribeRoutingControl route53-recovery-control-config:DescribeSafetyRule route53-recovery-control-config:GetResourcePolicy route53-recovery-control-config:ListAssociatedRoute53HealthChecks route53-recovery-control-config:ListClusters route53-recovery-control-config:ListControlPanels route53-recovery-control-config:ListRoutingControls route53-recovery-control-config:ListSafetyRules route53-recovery-control-config:UpdateCluster route53-recovery-control-config:UpdateControlPanel route53-recovery-control-config:UpdateRoutingControl route53-recovery-control-config:UpdateSafetyRule  | 
| route53-recovery-readiness |  route53-recovery-readiness:CreateCell route53-recovery-readiness:CreateCrossAccountAuthorization route53-recovery-readiness:CreateReadinessCheck route53-recovery-readiness:CreateRecoveryGroup route53-recovery-readiness:CreateResourceSet route53-recovery-readiness:DeleteCell route53-recovery-readiness:DeleteCrossAccountAuthorization route53-recovery-readiness:DeleteReadinessCheck route53-recovery-readiness:DeleteRecoveryGroup route53-recovery-readiness:DeleteResourceSet route53-recovery-readiness:GetArchitectureRecommendations route53-recovery-readiness:GetCell route53-recovery-readiness:GetCellReadinessSummary route53-recovery-readiness:GetReadinessCheck route53-recovery-readiness:GetReadinessCheckResourceStatus route53-recovery-readiness:GetReadinessCheckStatus route53-recovery-readiness:GetRecoveryGroup route53-recovery-readiness:GetRecoveryGroupReadinessSummary route53-recovery-readiness:GetResourceSet route53-recovery-readiness:ListCells route53-recovery-readiness:ListCrossAccountAuthorizations route53-recovery-readiness:ListReadinessChecks route53-recovery-readiness:ListRecoveryGroups route53-recovery-readiness:ListResourceSets route53-recovery-readiness:ListRules route53-recovery-readiness:UpdateCell route53-recovery-readiness:UpdateReadinessCheck route53-recovery-readiness:UpdateRecoveryGroup route53-recovery-readiness:UpdateResourceSet  | 
| route53resolver |  route53resolver:AssociateFirewallRuleGroup route53resolver:AssociateResolverEndpointIpAddress route53resolver:AssociateResolverQueryLogConfig route53resolver:AssociateResolverRule route53resolver:CreateFirewallDomainList route53resolver:CreateFirewallRule route53resolver:CreateFirewallRuleGroup route53resolver:CreateResolverEndpoint route53resolver:CreateResolverQueryLogConfig route53resolver:CreateResolverRule route53resolver:DeleteFirewallDomainList route53resolver:DeleteFirewallRule route53resolver:DeleteFirewallRuleGroup route53resolver:DeleteOutpostResolver route53resolver:DeleteResolverEndpoint route53resolver:DeleteResolverQueryLogConfig route53resolver:DeleteResolverRule route53resolver:DisassociateFirewallRuleGroup route53resolver:DisassociateResolverEndpointIpAddress route53resolver:DisassociateResolverQueryLogConfig route53resolver:DisassociateResolverRule route53resolver:GetFirewallConfig route53resolver:GetFirewallDomainList route53resolver:GetFirewallRuleGroup route53resolver:GetFirewallRuleGroupAssociation route53resolver:GetFirewallRuleGroupPolicy route53resolver:GetOutpostResolver route53resolver:GetResolverConfig route53resolver:GetResolverDnssecConfig route53resolver:GetResolverEndpoint route53resolver:GetResolverQueryLogConfig route53resolver:GetResolverQueryLogConfigAssociation route53resolver:GetResolverQueryLogConfigPolicy route53resolver:GetResolverRule route53resolver:GetResolverRuleAssociation route53resolver:GetResolverRulePolicy route53resolver:ImportFirewallDomains route53resolver:ListFirewallConfigs route53resolver:ListFirewallDomainLists route53resolver:ListFirewallDomains route53resolver:ListFirewallRuleGroupAssociations route53resolver:ListFirewallRuleGroups route53resolver:ListFirewallRules route53resolver:ListOutpostResolvers route53resolver:ListResolverConfigs route53resolver:ListResolverDnssecConfigs route53resolver:ListResolverEndpointIpAddresses route53resolver:ListResolverEndpoints route53resolver:ListResolverQueryLogConfigAssociations route53resolver:ListResolverQueryLogConfigs route53resolver:ListResolverRuleAssociations route53resolver:ListResolverRules route53resolver:PutFirewallRuleGroupPolicy route53resolver:PutResolverQueryLogConfigPolicy route53resolver:UpdateFirewallConfig route53resolver:UpdateFirewallDomains route53resolver:UpdateFirewallRule route53resolver:UpdateFirewallRuleGroupAssociation route53resolver:UpdateOutpostResolver route53resolver:UpdateResolverConfig route53resolver:UpdateResolverDnssecConfig route53resolver:UpdateResolverEndpoint route53resolver:UpdateResolverRule  | 
| rum |  rum:BatchCreateRumMetricDefinitions rum:BatchDeleteRumMetricDefinitions rum:BatchGetRumMetricDefinitions rum:CreateAppMonitor rum:DeleteAppMonitor rum:DeleteResourcePolicy rum:DeleteRumMetricsDestination rum:GetAppMonitor rum:GetAppMonitorData rum:GetResourcePolicy rum:ListAppMonitors rum:ListRumMetricsDestinations rum:PutResourcePolicy rum:PutRumMetricsDestination rum:UpdateAppMonitor rum:UpdateRumMetricDefinition  | 
| s3 |  s3:AssociateAccessGrantsIdentityCenter s3:CreateAccessGrant s3:CreateAccessGrantsInstance s3:CreateAccessGrantsLocation s3:CreateAccessPoint s3:CreateAccessPointForObjectLambda s3:CreateBucket s3:CreateBucketMetadataTableConfiguration s3:CreateJob s3:CreateMultiRegionAccessPoint s3:DeleteAccessGrant s3:DeleteAccessGrantsInstance s3:DeleteAccessGrantsInstanceResourcePolicy s3:DeleteAccessGrantsLocation s3:DeleteAccessPoint s3:DeleteAccessPointForObjectLambda s3:DeleteAccessPointPolicy s3:DeleteAccessPointPolicyForObjectLambda s3:DeleteBucket s3:DeleteBucketMetadataTableConfiguration s3:DeleteBucketPolicy s3:DeleteBucketWebsite s3:DeleteMultiRegionAccessPoint s3:DeleteStorageLensConfiguration s3:DescribeJob s3:DescribeMultiRegionAccessPointOperation s3:DissociateAccessGrantsIdentityCenter s3:GetAccelerateConfiguration s3:GetAccessGrant s3:GetAccessGrantsInstance s3:GetAccessGrantsInstanceForPrefix s3:GetAccessGrantsInstanceResourcePolicy s3:GetAccessGrantsLocation s3:GetAccessPoint s3:GetAccessPointConfigurationForObjectLambda s3:GetAccessPointForObjectLambda s3:GetAccessPointPolicy s3:GetAccessPointPolicyForObjectLambda s3:GetAccessPointPolicyStatus s3:GetAccessPointPolicyStatusForObjectLambda s3:GetAccountPublicAccessBlock s3:GetAnalyticsConfiguration s3:GetBucketAbac s3:GetBucketAcl s3:GetBucketCORS s3:GetBucketLocation s3:GetBucketLogging s3:GetBucketNotification s3:GetBucketObjectLockConfiguration s3:GetBucketOwnershipControls s3:GetBucketPolicy s3:GetBucketPolicyStatus s3:GetBucketPublicAccessBlock s3:GetBucketRequestPayment s3:GetBucketVersioning s3:GetBucketWebsite s3:GetDataAccess s3:GetEncryptionConfiguration s3:GetIntelligentTieringConfiguration s3:GetInventoryConfiguration s3:GetLifecycleConfiguration s3:GetMetricsConfiguration s3:GetMultiRegionAccessPoint s3:GetMultiRegionAccessPointPolicy s3:GetMultiRegionAccessPointPolicyStatus s3:GetMultiRegionAccessPointRoutes s3:GetReplicationConfiguration s3:GetStorageLensConfiguration s3:GetStorageLensDashboard s3:ListAccessGrants s3:ListAccessGrantsInstances s3:ListAccessGrantsLocations s3:ListAccessPoints s3:ListAccessPointsForObjectLambda s3:ListAllMyBuckets s3:ListBucketMultipartUploads s3:ListCallerAccessGrants s3:ListJobs s3:ListMultiRegionAccessPoints s3:ListStorageLensConfigurations s3:PutAccelerateConfiguration s3:PutAccessGrantsInstanceResourcePolicy s3:PutAccessPointConfigurationForObjectLambda s3:PutAccessPointPolicy s3:PutAccessPointPolicyForObjectLambda s3:PutAccountPublicAccessBlock s3:PutAnalyticsConfiguration s3:PutBucketAbac s3:PutBucketAcl s3:PutBucketCORS s3:PutBucketLogging s3:PutBucketNotification s3:PutBucketObjectLockConfiguration s3:PutBucketOwnershipControls s3:PutBucketPolicy s3:PutBucketPublicAccessBlock s3:PutBucketRequestPayment s3:PutBucketVersioning s3:PutBucketWebsite s3:PutEncryptionConfiguration s3:PutIntelligentTieringConfiguration s3:PutInventoryConfiguration s3:PutLifecycleConfiguration s3:PutMetricsConfiguration s3:PutMultiRegionAccessPointPolicy s3:PutReplicationConfiguration s3:PutStorageLensConfiguration s3:SubmitMultiRegionAccessPointRoutes s3:UpdateAccessGrantsLocation s3:UpdateBucketMetadataJournalTableConfiguration s3:UpdateJobPriority s3:UpdateJobStatus  | 
| s3-outposts |  s3-outposts:CreateEndpoint s3-outposts:DeleteEndpoint s3-outposts:ListEndpoints s3-outposts:ListOutpostsWithS3 s3-outposts:ListSharedEndpoints  | 
| sagemaker-geospatial |  sagemaker-geospatial:DeleteEarthObservationJob sagemaker-geospatial:DeleteVectorEnrichmentJob sagemaker-geospatial:ExportEarthObservationJob sagemaker-geospatial:ExportVectorEnrichmentJob sagemaker-geospatial:GetEarthObservationJob sagemaker-geospatial:GetRasterDataCollection sagemaker-geospatial:GetTile sagemaker-geospatial:GetVectorEnrichmentJob sagemaker-geospatial:ListEarthObservationJobs sagemaker-geospatial:ListRasterDataCollections sagemaker-geospatial:ListVectorEnrichmentJobs sagemaker-geospatial:SearchRasterDataCollection sagemaker-geospatial:StartEarthObservationJob sagemaker-geospatial:StartVectorEnrichmentJob sagemaker-geospatial:StopEarthObservationJob sagemaker-geospatial:StopVectorEnrichmentJob  | 
| savingsplans |  savingsplans:CreateSavingsPlan savingsplans:DeleteQueuedSavingsPlan savingsplans:DescribeSavingsPlanRates savingsplans:DescribeSavingsPlans savingsplans:DescribeSavingsPlansOfferingRates savingsplans:DescribeSavingsPlansOfferings savingsplans:ReturnSavingsPlan  | 
| schemas |  schemas:CreateDiscoverer schemas:CreateRegistry schemas:CreateSchema schemas:DeleteDiscoverer schemas:DeleteRegistry schemas:DeleteResourcePolicy schemas:DeleteSchema schemas:DeleteSchemaVersion schemas:DescribeCodeBinding schemas:DescribeDiscoverer schemas:DescribeRegistry schemas:DescribeSchema schemas:ExportSchema schemas:GetCodeBindingSource schemas:GetDiscoveredSchema schemas:GetResourcePolicy schemas:ListDiscoverers schemas:ListRegistries schemas:ListSchemaVersions schemas:ListSchemas schemas:PutCodeBinding schemas:PutResourcePolicy schemas:SearchSchemas schemas:StartDiscoverer schemas:StopDiscoverer schemas:UpdateDiscoverer schemas:UpdateRegistry schemas:UpdateSchema  | 
| sdb |  sdb:CreateDomain sdb:DeleteDomain sdb:DomainMetadata sdb:ListDomains  | 
| secretsmanager |  secretsmanager:CancelRotateSecret secretsmanager:CreateSecret secretsmanager:DeleteResourcePolicy secretsmanager:DeleteSecret secretsmanager:DescribeSecret secretsmanager:GetRandomPassword secretsmanager:GetResourcePolicy secretsmanager:GetSecretValue secretsmanager:ListSecretVersionIds secretsmanager:ListSecrets secretsmanager:PutResourcePolicy secretsmanager:PutSecretValue secretsmanager:RemoveRegionsFromReplication secretsmanager:ReplicateSecretToRegions secretsmanager:RestoreSecret secretsmanager:RotateSecret secretsmanager:StopReplicationToReplica secretsmanager:UpdateSecret secretsmanager:ValidateResourcePolicy  | 
| securityhub |  securityhub:AcceptAdministratorInvitation securityhub:AcceptInvitation securityhub:BatchDeleteAutomationRules securityhub:BatchDisableStandards securityhub:BatchEnableStandards securityhub:BatchGetAutomationRules securityhub:BatchGetConfigurationPolicyAssociations securityhub:BatchGetSecurityControls securityhub:BatchGetStandardsControlAssociations securityhub:BatchImportFindings securityhub:BatchUpdateAutomationRules securityhub:BatchUpdateFindings securityhub:BatchUpdateStandardsControlAssociations securityhub:ConnectorRegistrationsV2 securityhub:CreateActionTarget securityhub:CreateAggregatorV2 securityhub:CreateAutomationRule securityhub:CreateAutomationRuleV2 securityhub:CreateConfigurationPolicy securityhub:CreateConnectorV2 securityhub:CreateFindingAggregator securityhub:CreateInsight securityhub:CreateMembers securityhub:CreateTicketV2 securityhub:DeclineInvitations securityhub:DeleteActionTarget securityhub:DeleteAggregatorV2 securityhub:DeleteAutomationRuleV2 securityhub:DeleteConfigurationPolicy securityhub:DeleteConnectorV2 securityhub:DeleteFindingAggregator securityhub:DeleteInsight securityhub:DeleteInvitations securityhub:DeleteMembers securityhub:DescribeActionTargets securityhub:DescribeHub securityhub:DescribeOrganizationConfiguration securityhub:DescribeProducts securityhub:DescribeSecurityHubV2 securityhub:DescribeStandards securityhub:DisableImportFindingsForProduct securityhub:DisableOrganizationAdminAccount securityhub:DisableSecurityHub securityhub:DisableSecurityHubV2 securityhub:DisassociateFromAdministratorAccount securityhub:DisassociateFromMasterAccount securityhub:DisassociateMembers securityhub:EnableImportFindingsForProduct securityhub:EnableOrganizationAdminAccount securityhub:EnableSecurityHub securityhub:GetAdministratorAccount securityhub:GetAggregatorV2 securityhub:GetAutomationRuleV2 securityhub:GetConfigurationPolicy securityhub:GetConfigurationPolicyAssociation securityhub:GetConnectorV2 securityhub:GetEnabledStandards securityhub:GetFindingAggregator securityhub:GetFindingHistory securityhub:GetFindings securityhub:GetInsightResults securityhub:GetInsights securityhub:GetInvitationsCount securityhub:GetMasterAccount securityhub:GetMembers securityhub:GetSecurityControlDefinition securityhub:InviteMembers securityhub:ListAggregatorsV2 securityhub:ListAutomationRules securityhub:ListAutomationRulesV2 securityhub:ListConfigurationPolicies securityhub:ListConfigurationPolicyAssociations securityhub:ListConnectorsV2 securityhub:ListEnabledProductsForImport securityhub:ListFindingAggregators securityhub:ListInvitations securityhub:ListMembers securityhub:ListOrganizationAdminAccounts securityhub:ListSecurityControlDefinitions securityhub:ListStandardsControlAssociations securityhub:StartConfigurationPolicyAssociation securityhub:StartConfigurationPolicyDisassociation securityhub:UpdateActionTarget securityhub:UpdateAggregatorV2 securityhub:UpdateAutomationRuleV2 securityhub:UpdateConfigurationPolicy securityhub:UpdateConnectorV2 securityhub:UpdateFindingAggregator securityhub:UpdateFindings securityhub:UpdateInsight securityhub:UpdateOrganizationConfiguration securityhub:UpdateSecurityControl securityhub:UpdateSecurityHubConfiguration  | 
| securitylake |  securitylake:CreateAwsLogSource securitylake:CreateCustomLogSource securitylake:CreateDataLakeExceptionSubscription securitylake:CreateDataLakeOrganizationConfiguration securitylake:CreateSubscriber securitylake:CreateSubscriberNotification securitylake:DeleteAwsLogSource securitylake:DeleteCustomLogSource securitylake:DeleteDataLakeExceptionSubscription securitylake:DeleteDataLakeOrganizationConfiguration securitylake:DeleteSubscriber securitylake:DeleteSubscriberNotification securitylake:DeregisterDataLakeDelegatedAdministrator securitylake:GetDataLakeExceptionSubscription securitylake:GetDataLakeOrganizationConfiguration securitylake:GetDataLakeSources securitylake:GetSubscriber securitylake:ListDataLakes securitylake:ListLogSources securitylake:ListSubscribers securitylake:RegisterDataLakeDelegatedAdministrator securitylake:UpdateDataLakeExceptionSubscription securitylake:UpdateSubscriber securitylake:UpdateSubscriberNotification  | 
| serverlessrepo |  serverlessrepo:CreateApplication serverlessrepo:CreateApplicationVersion serverlessrepo:CreateCloudFormationChangeSet serverlessrepo:CreateCloudFormationTemplate serverlessrepo:DeleteApplication serverlessrepo:GetApplication serverlessrepo:GetApplicationPolicy serverlessrepo:GetCloudFormationTemplate serverlessrepo:ListApplicationDependencies serverlessrepo:ListApplicationVersions serverlessrepo:ListApplications serverlessrepo:PutApplicationPolicy serverlessrepo:UnshareApplication serverlessrepo:UpdateApplication  | 
| servicecatalog |  servicecatalog:AcceptPortfolioShare servicecatalog:AssociateBudgetWithResource servicecatalog:AssociatePrincipalWithPortfolio servicecatalog:AssociateProductWithPortfolio servicecatalog:AssociateServiceActionWithProvisioningArtifact servicecatalog:BatchAssociateServiceActionWithProvisioningArtifact servicecatalog:BatchDisassociateServiceActionFromProvisioningArtifact servicecatalog:CopyProduct servicecatalog:CreateAttributeGroup servicecatalog:CreateConstraint servicecatalog:CreatePortfolio servicecatalog:CreatePortfolioShare servicecatalog:CreateProduct servicecatalog:CreateProvisionedProductPlan servicecatalog:CreateProvisioningArtifact servicecatalog:CreateServiceAction servicecatalog:DeleteAttributeGroup servicecatalog:DeleteConstraint servicecatalog:DeletePortfolio servicecatalog:DeletePortfolioShare servicecatalog:DeleteProduct servicecatalog:DeleteProvisionedProductPlan servicecatalog:DeleteProvisioningArtifact servicecatalog:DeleteServiceAction servicecatalog:DescribeConstraint servicecatalog:DescribeCopyProductStatus servicecatalog:DescribePortfolio servicecatalog:DescribePortfolioShareStatus servicecatalog:DescribePortfolioShares servicecatalog:DescribeProduct servicecatalog:DescribeProductAsAdmin servicecatalog:DescribeProductView servicecatalog:DescribeProvisionedProduct servicecatalog:DescribeProvisionedProductPlan servicecatalog:DescribeProvisioningArtifact servicecatalog:DescribeProvisioningParameters servicecatalog:DescribeRecord servicecatalog:DescribeServiceAction servicecatalog:DescribeServiceActionExecutionParameters servicecatalog:DisableAWSOrganizationsAccess servicecatalog:DisassociateBudgetFromResource servicecatalog:DisassociatePrincipalFromPortfolio servicecatalog:DisassociateProductFromPortfolio servicecatalog:DisassociateServiceActionFromProvisioningArtifact servicecatalog:EnableAWSOrganizationsAccess servicecatalog:ExecuteProvisionedProductPlan servicecatalog:ExecuteProvisionedProductServiceAction servicecatalog:GetAWSOrganizationsAccessStatus servicecatalog:GetProvisionedProductOutputs servicecatalog:ImportAsProvisionedProduct servicecatalog:ListAcceptedPortfolioShares servicecatalog:ListAttributeGroups servicecatalog:ListBudgetsForResource servicecatalog:ListConstraintsForPortfolio servicecatalog:ListLaunchPaths servicecatalog:ListOrganizationPortfolioAccess servicecatalog:ListPortfolioAccess servicecatalog:ListPortfolios servicecatalog:ListPortfoliosForProduct servicecatalog:ListPrincipalsForPortfolio servicecatalog:ListProvisionedProductPlans servicecatalog:ListProvisioningArtifacts servicecatalog:ListProvisioningArtifactsForServiceAction servicecatalog:ListRecordHistory servicecatalog:ListServiceActions servicecatalog:ListServiceActionsForProvisioningArtifact servicecatalog:ListStackInstancesForProvisionedProduct servicecatalog:NotifyProvisionProductEngineWorkflowResult servicecatalog:NotifyTerminateProvisionedProductEngineWorkflowResult servicecatalog:NotifyUpdateProvisionedProductEngineWorkflowResult servicecatalog:ProvisionProduct servicecatalog:RejectPortfolioShare servicecatalog:ScanProvisionedProducts servicecatalog:SearchProducts servicecatalog:SearchProductsAsAdmin servicecatalog:SearchProvisionedProducts servicecatalog:TerminateProvisionedProduct servicecatalog:UpdateConstraint servicecatalog:UpdatePortfolio servicecatalog:UpdatePortfolioShare servicecatalog:UpdateProduct servicecatalog:UpdateProvisionedProduct servicecatalog:UpdateProvisionedProductProperties servicecatalog:UpdateProvisioningArtifact servicecatalog:UpdateServiceAction  | 
| servicediscovery |  servicediscovery:CreateHttpNamespace servicediscovery:CreatePrivateDnsNamespace servicediscovery:CreatePublicDnsNamespace servicediscovery:CreateService servicediscovery:DeleteNamespace servicediscovery:DeleteService servicediscovery:DeleteServiceAttributes servicediscovery:DeregisterInstance servicediscovery:GetInstance servicediscovery:GetInstancesHealthStatus servicediscovery:GetNamespace servicediscovery:GetOperation servicediscovery:GetService servicediscovery:ListInstances servicediscovery:ListNamespaces servicediscovery:ListOperations servicediscovery:ListServices servicediscovery:RegisterInstance servicediscovery:UpdateHttpNamespace servicediscovery:UpdateInstanceCustomHealthStatus servicediscovery:UpdatePrivateDnsNamespace servicediscovery:UpdatePublicDnsNamespace servicediscovery:UpdateService servicediscovery:UpdateServiceAttributes  | 
| servicequotas |  servicequotas:AssociateServiceQuotaTemplate servicequotas:CreateSupportCase servicequotas:DeleteServiceQuotaIncreaseRequestFromTemplate servicequotas:DisassociateServiceQuotaTemplate servicequotas:GetAWSDefaultServiceQuota servicequotas:GetAssociationForServiceQuotaTemplate servicequotas:GetAutoManagementConfiguration servicequotas:GetQuotaUtilizationReport servicequotas:GetRequestedServiceQuotaChange servicequotas:GetServiceQuota servicequotas:GetServiceQuotaIncreaseRequestFromTemplate servicequotas:ListAWSDefaultServiceQuotas servicequotas:ListRequestedServiceQuotaChangeHistory servicequotas:ListRequestedServiceQuotaChangeHistoryByQuota servicequotas:ListServiceQuotaIncreaseRequestsInTemplate servicequotas:ListServiceQuotas servicequotas:ListServices servicequotas:PutServiceQuotaIncreaseRequestIntoTemplate servicequotas:RequestServiceQuotaIncrease servicequotas:StartAutoManagement servicequotas:StartQuotaUtilizationReport servicequotas:StopAutoManagement servicequotas:UpdateAutoManagement  | 
| ses |  ses:BatchGetMetricData ses:CloneReceiptRuleSet ses:CreateAddonInstance ses:CreateAddonSubscription ses:CreateAddressList ses:CreateAddressListImportJob ses:CreateArchive ses:CreateConfigurationSet ses:CreateConfigurationSetEventDestination ses:CreateConfigurationSetTrackingOptions ses:CreateContact ses:CreateContactList ses:CreateCustomVerificationEmailTemplate ses:CreateDedicatedIpPool ses:CreateDeliverabilityTestReport ses:CreateEmailIdentity ses:CreateEmailIdentityPolicy ses:CreateEmailTemplate ses:CreateImportJob ses:CreateIngressPoint ses:CreateMultiRegionEndpoint ses:CreateReceiptFilter ses:CreateReceiptRule ses:CreateReceiptRuleSet ses:CreateRelay ses:CreateRuleSet ses:CreateTemplate ses:CreateTenant ses:CreateTenantResourceAssociation ses:CreateTrafficPolicy ses:DeleteAddonInstance ses:DeleteAddonSubscription ses:DeleteAddressList ses:DeleteArchive ses:DeleteConfigurationSet ses:DeleteConfigurationSetEventDestination ses:DeleteConfigurationSetTrackingOptions ses:DeleteContact ses:DeleteContactList ses:DeleteCustomVerificationEmailTemplate ses:DeleteDedicatedIpPool ses:DeleteEmailIdentity ses:DeleteEmailIdentityPolicy ses:DeleteEmailTemplate ses:DeleteIdentity ses:DeleteIdentityPolicy ses:DeleteIngressPoint ses:DeleteMultiRegionEndpoint ses:DeleteReceiptFilter ses:DeleteReceiptRule ses:DeleteReceiptRuleSet ses:DeleteRelay ses:DeleteRuleSet ses:DeleteSuppressedDestination ses:DeleteTemplate ses:DeleteTenant ses:DeleteTenantResourceAssociation ses:DeleteTrafficPolicy ses:DeleteVerifiedEmailAddress ses:DeregisterMemberFromAddressList ses:DescribeActiveReceiptRuleSet ses:DescribeConfigurationSet ses:DescribeReceiptRule ses:DescribeReceiptRuleSet ses:GetAccount ses:GetAccountSendingEnabled ses:GetAddonInstance ses:GetAddonSubscription ses:GetAddressList ses:GetArchive ses:GetArchiveExport ses:GetArchiveMessage ses:GetArchiveMessageContent ses:GetArchiveSearch ses:GetArchiveSearchResults ses:GetBlacklistReports ses:GetConfigurationSet ses:GetConfigurationSetEventDestinations ses:GetContact ses:GetContactList ses:GetCustomVerificationEmailTemplate ses:GetDedicatedIp ses:GetDedicatedIpPool ses:GetDedicatedIps ses:GetDeliverabilityDashboardOptions ses:GetDeliverabilityTestReport ses:GetDomainDeliverabilityCampaign ses:GetDomainStatisticsReport ses:GetEmailAddressInsights ses:GetEmailIdentity ses:GetEmailIdentityPolicies ses:GetEmailTemplate ses:GetIdentityDkimAttributes ses:GetIdentityMailFromDomainAttributes ses:GetIdentityNotificationAttributes ses:GetIdentityPolicies ses:GetIdentityVerificationAttributes ses:GetImportJob ses:GetIngressPoint ses:GetMemberOfAddressList ses:GetMessageInsights ses:GetMultiRegionEndpoint ses:GetRelay ses:GetRuleSet ses:GetSendQuota ses:GetSendStatistics ses:GetSuppressedDestination ses:GetTemplate ses:GetTenant ses:GetTrafficPolicy ses:ListAddonInstances ses:ListAddonSubscriptions ses:ListAddressListImportJobs ses:ListAddressLists ses:ListArchiveExports ses:ListArchiveSearches ses:ListArchives ses:ListConfigurationSets ses:ListContactLists ses:ListContacts ses:ListCustomVerificationEmailTemplates ses:ListDedicatedIpPools ses:ListDeliverabilityTestReports ses:ListDomainDeliverabilityCampaigns ses:ListEmailIdentities ses:ListEmailTemplates ses:ListExportJobs ses:ListIdentities ses:ListIdentityPolicies ses:ListImportJobs ses:ListIngressPoints ses:ListMembersOfAddressList ses:ListMultiRegionEndpoints ses:ListReceiptFilters ses:ListReceiptRuleSets ses:ListRecommendations ses:ListRelays ses:ListReputationEntities ses:ListResourceTenants ses:ListRuleSets ses:ListSuppressedDestinations ses:ListTemplates ses:ListTenantResources ses:ListTenants ses:ListTrafficPolicies ses:ListVerifiedEmailAddresses ses:PutAccountDedicatedIpWarmupAttributes ses:PutAccountDetails ses:PutAccountSendingAttributes ses:PutAccountSuppressionAttributes ses:PutAccountVdmAttributes ses:PutConfigurationSetArchivingOptions ses:PutConfigurationSetDeliveryOptions ses:PutConfigurationSetReputationOptions ses:PutConfigurationSetSendingOptions ses:PutConfigurationSetSuppressionOptions ses:PutConfigurationSetTrackingOptions ses:PutConfigurationSetVdmOptions ses:PutDedicatedIpInPool ses:PutDedicatedIpPoolScalingAttributes ses:PutDedicatedIpWarmupAttributes ses:PutDeliverabilityDashboardOption ses:PutEmailIdentityConfigurationSetAttributes ses:PutEmailIdentityDkimAttributes ses:PutEmailIdentityDkimSigningAttributes ses:PutEmailIdentityFeedbackAttributes ses:PutEmailIdentityMailFromAttributes ses:PutIdentityPolicy ses:PutSuppressedDestination ses:RegisterMemberToAddressList ses:ReorderReceiptRuleSet ses:SendBounce ses:SendCustomVerificationEmail ses:SetActiveReceiptRuleSet ses:SetIdentityDkimEnabled ses:SetIdentityFeedbackForwardingEnabled ses:SetIdentityHeadersInNotificationsEnabled ses:SetIdentityMailFromDomain ses:SetIdentityNotificationTopic ses:SetReceiptRulePosition ses:StartArchiveExport ses:StartArchiveSearch ses:StopArchiveExport ses:StopArchiveSearch ses:TestRenderEmailTemplate ses:TestRenderTemplate ses:UpdateAccountSendingEnabled ses:UpdateArchive ses:UpdateConfigurationSetEventDestination ses:UpdateConfigurationSetReputationMetricsEnabled ses:UpdateConfigurationSetSendingEnabled ses:UpdateConfigurationSetTrackingOptions ses:UpdateContact ses:UpdateContactList ses:UpdateCustomVerificationEmailTemplate ses:UpdateEmailIdentityPolicy ses:UpdateEmailTemplate ses:UpdateIngressPoint ses:UpdateReceiptRule ses:UpdateRelay ses:UpdateRuleSet ses:UpdateTemplate ses:UpdateTrafficPolicy ses:VerifyDomainDkim ses:VerifyDomainIdentity ses:VerifyEmailAddress ses:VerifyEmailIdentity  | 
| shield |  shield:AssociateDRTLogBucket shield:AssociateHealthCheck shield:AssociateProactiveEngagementDetails shield:CreateProtection shield:CreateProtectionGroup shield:CreateSubscription shield:DeleteProtection shield:DeleteProtectionGroup shield:DeleteSubscription shield:DescribeAttack shield:DescribeAttackStatistics shield:DescribeDRTAccess shield:DescribeEmergencyContactSettings shield:DescribeProtection shield:DescribeProtectionGroup shield:DescribeSubscription shield:DisableApplicationLayerAutomaticResponse shield:DisableProactiveEngagement shield:DisassociateDRTLogBucket shield:DisassociateDRTRole shield:DisassociateHealthCheck shield:EnableApplicationLayerAutomaticResponse shield:EnableProactiveEngagement shield:GetSubscriptionState shield:ListAttacks shield:ListProtectionGroups shield:ListProtections shield:ListResourcesInProtectionGroup shield:UpdateApplicationLayerAutomaticResponse shield:UpdateEmergencyContactSettings shield:UpdateProtectionGroup shield:UpdateSubscription  | 
| signer |  signer:AddProfilePermission signer:CancelSigningProfile signer:DescribeSigningJob signer:GetSigningPlatform signer:GetSigningProfile signer:ListProfilePermissions signer:ListSigningJobs signer:ListSigningPlatforms signer:ListSigningProfiles signer:PutSigningProfile signer:RemoveProfilePermission signer:RevokeSignature signer:RevokeSigningProfile signer:SignPayload signer:StartSigningJob  | 
| simspaceweaver |  simspaceweaver:CreateSnapshot simspaceweaver:DeleteApp simspaceweaver:DeleteSimulation simspaceweaver:DescribeApp simspaceweaver:DescribeSimulation simspaceweaver:ListApps simspaceweaver:ListSimulations simspaceweaver:StartApp simspaceweaver:StartClock simspaceweaver:StartSimulation simspaceweaver:StopApp simspaceweaver:StopClock simspaceweaver:StopSimulation  | 
| sms |  sms:CreateApp sms:CreateReplicationJob sms:DeleteApp sms:DeleteAppLaunchConfiguration sms:DeleteAppReplicationConfiguration sms:DeleteAppValidationConfiguration sms:DeleteReplicationJob sms:DeleteServerCatalog sms:DisassociateConnector sms:GenerateChangeSet sms:GenerateTemplate sms:GetApp sms:GetAppLaunchConfiguration sms:GetAppReplicationConfiguration sms:GetAppValidationConfiguration sms:GetAppValidationOutput sms:GetConnectors sms:GetReplicationJobs sms:GetReplicationRuns sms:GetServers sms:ImportAppCatalog sms:ImportServerCatalog sms:LaunchApp sms:ListApps sms:NotifyAppValidationOutput sms:PutAppLaunchConfiguration sms:PutAppReplicationConfiguration sms:PutAppValidationConfiguration sms:StartAppReplication sms:StartOnDemandAppReplication sms:StartOnDemandReplicationRun sms:StopAppReplication sms:TerminateApp sms:UpdateApp sms:UpdateReplicationJob  | 
| sms-voice |  sms-voice:AssociateProtectConfiguration sms-voice:CreateConfigurationSet sms-voice:CreateConfigurationSetEventDestination sms-voice:CreateEventDestination sms-voice:CreateOptOutList sms-voice:CreatePool sms-voice:CreateProtectConfiguration sms-voice:CreateRegistration sms-voice:CreateRegistrationAssociation sms-voice:CreateRegistrationAttachment sms-voice:CreateRegistrationVersion sms-voice:CreateVerifiedDestinationNumber sms-voice:DeleteAccountDefaultProtectConfiguration sms-voice:DeleteConfigurationSet sms-voice:DeleteConfigurationSetEventDestination sms-voice:DeleteDefaultMessageType sms-voice:DeleteDefaultSenderId sms-voice:DeleteEventDestination sms-voice:DeleteKeyword sms-voice:DeleteMediaMessageSpendLimitOverride sms-voice:DeleteOptOutList sms-voice:DeleteOptedOutNumber sms-voice:DeletePool sms-voice:DeleteProtectConfiguration sms-voice:DeleteProtectConfigurationRuleSetNumberOverride sms-voice:DeleteRegistration sms-voice:DeleteRegistrationAttachment sms-voice:DeleteResourcePolicy sms-voice:DeleteTextMessageSpendLimitOverride sms-voice:DeleteVerifiedDestinationNumber sms-voice:DeleteVoiceMessageSpendLimitOverride sms-voice:DescribeAccountAttributes sms-voice:DescribeAccountLimits sms-voice:DescribeConfigurationSets sms-voice:DescribeKeywords sms-voice:DescribeOptOutLists sms-voice:DescribeOptedOutNumbers sms-voice:DescribePhoneNumbers sms-voice:DescribePools sms-voice:DescribeProtectConfigurations sms-voice:DescribeRegistrationAttachments sms-voice:DescribeRegistrationFieldDefinitions sms-voice:DescribeRegistrationFieldValues sms-voice:DescribeRegistrationSectionDefinitions sms-voice:DescribeRegistrationTypeDefinitions sms-voice:DescribeRegistrationVersions sms-voice:DescribeRegistrations sms-voice:DescribeSenderIds sms-voice:DescribeSpendLimits sms-voice:DescribeVerifiedDestinationNumbers sms-voice:DisassociateOriginationIdentity sms-voice:DisassociateProtectConfiguration sms-voice:DiscardRegistrationVersion sms-voice:GetConfigurationSetEventDestinations sms-voice:GetProtectConfigurationCountryRuleSet sms-voice:GetResourcePolicy sms-voice:ListConfigurationSets sms-voice:ListPoolOriginationIdentities sms-voice:ListProtectConfigurationRuleSetNumberOverrides sms-voice:ListRegistrationAssociations sms-voice:PutKeyword sms-voice:PutOptedOutNumber sms-voice:PutProtectConfigurationRuleSetNumberOverride sms-voice:PutResourcePolicy sms-voice:ReleasePhoneNumber sms-voice:ReleaseSenderId sms-voice:RequestPhoneNumber sms-voice:RequestSenderId sms-voice:SendDestinationNumberVerificationCode sms-voice:SetAccountDefaultProtectConfiguration sms-voice:SetDefaultMessageFeedbackEnabled sms-voice:SetDefaultMessageType sms-voice:SetDefaultSenderId sms-voice:SetMediaMessageSpendLimitOverride sms-voice:SetTextMessageSpendLimitOverride sms-voice:SetVoiceMessageSpendLimitOverride sms-voice:SubmitRegistrationVersion sms-voice:UpdateConfigurationSetEventDestination sms-voice:UpdateEventDestination sms-voice:UpdatePhoneNumber sms-voice:UpdatePool sms-voice:UpdateProtectConfiguration sms-voice:UpdateProtectConfigurationCountryRuleSet sms-voice:UpdateSenderId  | 
| snowball |  snowball:CancelCluster snowball:CancelJob snowball:CreateAddress snowball:CreateCluster snowball:CreateJob snowball:CreateLongTermPricing snowball:CreateReturnShippingLabel snowball:DescribeAddress snowball:DescribeAddresses snowball:DescribeCluster snowball:DescribeJob snowball:DescribeReturnShippingLabel snowball:GetJobManifest snowball:GetJobUnlockCode snowball:GetSnowballUsage snowball:GetSoftwareUpdates snowball:ListClusterJobs snowball:ListClusters snowball:ListCompatibleImages snowball:ListJobs snowball:ListLongTermPricing snowball:ListPickupLocations snowball:ListServiceVersions snowball:UpdateCluster snowball:UpdateJob snowball:UpdateJobShipmentState snowball:UpdateLongTermPricing  | 
| sqs |  sqs:AddPermission sqs:CancelMessageMoveTask sqs:CreateQueue sqs:DeleteQueue sqs:PurgeQueue sqs:RemovePermission sqs:SetQueueAttributes  | 
| ssm |  ssm:AssociateOpsItemRelatedItem SSM: CancelCommand ssm:CancelMaintenanceWindowExecution ssm:CreateActivation ssm:CreateAssociation ssm:CreateAssociationBatch ssm:CreateDocument ssm:CreateMaintenanceWindow ssm:CreateOpsItem ssm:CreateOpsMetadata ssm:CreatePatchBaseline ssm:CreateResourceDataSync ssm:DeleteActivation ssm:DeleteAssociation ssm:DeleteDocument ssm:DeleteInventory ssm:DeleteMaintenanceWindow ssm:DeleteOpsItem ssm:DeleteOpsMetadata ssm:DeleteParameter ssm:DeleteParameters ssm:DeletePatchBaseline ssm:DeleteResourceDataSync ssm:DeleteResourcePolicy SSM: DeregisterManagedInstance ssm:DeregisterPatchBaselineForPatchGroup ssm:DeregisterTargetFromMaintenanceWindow ssm:DeregisterTaskFromMaintenanceWindow ssm:DescribeActivations ssm:DescribeAssociation ssm:DescribeAssociationExecutionTargets ssm:DescribeAssociationExecutions ssm:DescribeAutomationExecutions ssm:DescribeAutomationStepExecutions ssm:DescribeAvailablePatches ssm:DescribeDocument ssm:DescribeDocumentParameters ssm:DescribeDocumentPermission ssm:DescribeEffectiveInstanceAssociations ssm:DescribeEffectivePatchesForPatchBaseline ssm:DescribeInstanceAssociationsStatus ssm:DescribeInstanceInformation ssm:DescribeInstancePatchStates ssm:DescribeInstancePatchStatesForPatchGroup ssm:DescribeInstancePatches ssm:DescribeInstanceProperties ssm:DescribeInventoryDeletions ssm:DescribeMaintenanceWindowExecutionTaskInvocations ssm:DescribeMaintenanceWindowExecutionTasks ssm:DescribeMaintenanceWindowExecutions ssm:DescribeMaintenanceWindowSchedule ssm:DescribeMaintenanceWindowTargets ssm:DescribeMaintenanceWindowTasks ssm:DescribeMaintenanceWindows ssm:DescribeMaintenanceWindowsForTarget ssm:DescribeOpsItems ssm:DescribeParameters ssm:DescribePatchBaselines ssm:DescribePatchGroupState ssm:DescribePatchGroups ssm:DescribePatchProperties ssm:DescribeSessions ssm:DisassociateOpsItemRelatedItem ssm:GetAccessToken ssm:GetAutomationExecution ssm:GetCalendarState ssm:GetCommandInvocation ssm:GetConnectionStatus ssm:GetDefaultPatchBaseline ssm:GetDeployablePatchSnapshotForInstance ssm:GetDocument ssm:GetExecutionPreview ssm:GetInventory ssm:GetInventorySchema ssm:GetMaintenanceWindow ssm:GetMaintenanceWindowExecution ssm:GetMaintenanceWindowExecutionTask ssm:GetMaintenanceWindowExecutionTaskInvocation ssm:GetMaintenanceWindowTask ssm:GetOpsItem ssm:GetOpsMetadata ssm:GetOpsSummary ssm:GetParameter ssm:GetParameterHistory ssm:GetParameters ssm:GetParametersByPath ssm:GetPatchBaseline ssm:GetPatchBaselineForPatchGroup ssm:GetResourcePolicies ssm:GetServiceSetting ssm:LabelParameterVersion ssm:ListAssociationVersions ssm:ListAssociations ssm:ListCommandInvocations ssm:ListCommands ssm:ListComplianceItems ssm:ListComplianceSummaries ssm:ListDocumentMetadataHistory ssm:ListDocumentVersions ssm:ListDocuments ssm:ListInstanceAssociations ssm:ListInventoryEntries ssm:ListNodes ssm:ListNodesSummary ssm:ListOpsItemEvents ssm:ListOpsItemRelatedItems ssm:ListOpsMetadata ssm:ListResourceComplianceSummaries ssm:ListResourceDataSync ssm:ModifyDocumentPermission ssm:PutComplianceItems ssm:PutInventory ssm:PutParameter ssm:PutResourcePolicy ssm:RegisterDefaultPatchBaseline ssm:RegisterManagedInstance ssm:RegisterPatchBaselineForPatchGroup ssm:RegisterTargetWithMaintenanceWindow ssm:RegisterTaskWithMaintenanceWindow ssm:ResetServiceSetting ssm:ResumeSession ssm:SendAutomationSignal SSM: SendCommand ssm:StartAssociationsOnce ssm:StartAutomationExecution ssm:StartChangeRequestExecution ssm:StartSession ssm:StopAutomationExecution ssm:TerminateSession ssm:UnlabelParameterVersion ssm:UpdateAssociation ssm:UpdateAssociationStatus ssm:UpdateDocument ssm:UpdateDocumentDefaultVersion ssm:UpdateDocumentMetadata ssm:UpdateInstanceInformation ssm:UpdateMaintenanceWindow ssm:UpdateMaintenanceWindowTarget ssm:UpdateMaintenanceWindowTask ssm:UpdateManagedInstanceRole ssm:UpdateOpsItem ssm:UpdateOpsMetadata ssm:UpdatePatchBaseline ssm:UpdateResourceDataSync ssm:UpdateServiceSetting  | 
| ssm-incidents |  ssm-incidents:BatchGetIncidentFindings ssm-incidents:CreateReplicationSet ssm-incidents:CreateResponsePlan ssm-incidents:CreateTimelineEvent ssm-incidents:DeleteIncidentRecord ssm-incidents:DeleteReplicationSet ssm-incidents:DeleteResourcePolicy ssm-incidents:DeleteResponsePlan ssm-incidents:DeleteTimelineEvent ssm-incidents:GetIncidentRecord ssm-incidents:GetReplicationSet ssm-incidents:GetResourcePolicies ssm-incidents:GetResponsePlan ssm-incidents:GetTimelineEvent ssm-incidents:ListIncidentFindings ssm-incidents:ListIncidentRecords ssm-incidents:ListRelatedItems ssm-incidents:ListReplicationSets ssm-incidents:ListResponsePlans ssm-incidents:ListTimelineEvents ssm-incidents:PutResourcePolicy ssm-incidents:StartIncident ssm-incidents:UpdateDeletionProtection ssm-incidents:UpdateIncidentRecord ssm-incidents:UpdateRelatedItems ssm-incidents:UpdateReplicationSet ssm-incidents:UpdateResponsePlan ssm-incidents:UpdateTimelineEvent  | 
| ssm-sap |  ssm-sap:BackupDatabase ssm-sap:DeleteResourcePermission ssm-sap:DeregisterApplication ssm-sap:GetApplication ssm-sap:GetComponent ssm-sap:GetConfigurationCheckOperation ssm-sap:GetDatabase ssm-sap:GetOperation ssm-sap:GetResourcePermission ssm-sap:ListApplications ssm-sap:ListComponents ssm-sap:ListConfigurationCheckDefinitions ssm-sap:ListConfigurationCheckOperations ssm-sap:ListDatabases ssm-sap:ListOperationEvents ssm-sap:ListOperations ssm-sap:ListSubCheckResults ssm-sap:ListSubCheckRuleResults ssm-sap:PutResourcePermission ssm-sap:RegisterApplication ssm-sap:RestoreDatabase ssm-sap:StartApplication ssm-sap:StartApplicationRefresh ssm-sap:StartConfigurationChecks ssm-sap:StopApplication ssm-sap:UpdateApplicationSettings ssm-sap:UpdateHANABackupSettings  | 
| states |  states:CreateActivity states:CreateStateMachine states:CreateStateMachineAlias states:DeleteActivity states:DeleteStateMachine states:DeleteStateMachineAlias states:DeleteStateMachineVersion states:DescribeActivity states:DescribeExecution states:DescribeMapRun states:DescribeStateMachine states:DescribeStateMachineAlias states:DescribeStateMachineForExecution states:GetExecutionHistory states:ListActivities states:ListExecutions states:ListMapRuns states:ListStateMachineAliases states:ListStateMachineVersions states:ListStateMachines states:SendTaskFailure states:SendTaskHeartbeat states:SendTaskSuccess states:StartExecution states:StopExecution states:UpdateMapRun states:UpdateStateMachine states:UpdateStateMachineAlias states:ValidateStateMachineDefinition  | 
| sts |  sts:AssumeRole sts:AssumeRoleWithSAML sts:AssumeRoleWithWebIdentity sts:DecodeAuthorizationMessage sts:GetAccessKeyInfo sts:GetCallerIdentity sts:GetFederationToken sts:GetSessionToken sts:GetWebIdentityToken  | 
| swf |  swf:DeleteActivityType swf:DeleteWorkflowType swf:DeprecateActivityType swf:DeprecateDomain swf:DeprecateWorkflowType swf:DescribeActivityType swf:DescribeDomain swf:DescribeWorkflowType swf:ListActivityTypes swf:ListDomains swf:ListWorkflowTypes swf:RegisterActivityType swf:RegisterDomain swf:RegisterWorkflowType swf:UndeprecateActivityType swf:UndeprecateDomain swf:UndeprecateWorkflowType  | 
| synthetics |  synthetics:AssociateResource synthetics:CreateCanary synthetics:CreateGroup synthetics:DeleteCanary synthetics:DeleteGroup synthetics:DescribeCanaries synthetics:DescribeCanariesLastRun synthetics:DescribeRuntimeVersions synthetics:DisassociateResource synthetics:GetCanary synthetics:GetCanaryRuns synthetics:GetGroup synthetics:ListAssociatedGroups synthetics:ListGroupResources synthetics:ListGroups synthetics:StartCanary synthetics:StartCanaryDryRun synthetics:StopCanary synthetics:UpdateCanary  | 
| tag |  tag:DescribeReportCreation tag:GetComplianceSummary tag:GetResources tag:StartReportCreation  | 
| textract |  textract:AnalyzeDocument textract:AnalyzeExpense textract:AnalyzeID textract:CreateAdapter textract:CreateAdapterVersion textract:DeleteAdapter textract:DeleteAdapterVersion textract:DetectDocumentText textract:GetAdapter textract:GetAdapterVersion textract:GetDocumentAnalysis textract:GetDocumentTextDetection textract:GetExpenseAnalysis textract:GetLendingAnalysis textract:GetLendingAnalysisSummary textract:ListAdapterVersions textract:ListAdapters textract:StartDocumentAnalysis textract:StartDocumentTextDetection textract:StartExpenseAnalysis textract:StartLendingAnalysis textract:UpdateAdapter  | 
| timestream |  timestream:CancelQuery timestream:CreateDatabase timestream:CreateScheduledQuery timestream:CreateTable timestream:DeleteDatabase timestream:DeleteScheduledQuery timestream:DeleteTable timestream:DescribeAccountSettings timestream:DescribeDatabase timestream:DescribeScheduledQuery timestream:DescribeTable timestream:ExecuteScheduledQuery timestream:ListBatchLoadTasks timestream:ListDatabases timestream:ListScheduledQueries timestream:ListTables timestream:PrepareQuery timestream:UpdateAccountSettings timestream:UpdateDatabase timestream:UpdateScheduledQuery timestream:UpdateTable  | 
| tnb |  tnb:CancelSolNetworkOperation tnb:CreateSolFunctionPackage tnb:CreateSolNetworkInstance tnb:CreateSolNetworkPackage tnb:DeleteSolFunctionPackage tnb:DeleteSolNetworkInstance tnb:DeleteSolNetworkPackage tnb:GetSolFunctionInstance tnb:GetSolFunctionPackage tnb:GetSolFunctionPackageContent tnb:GetSolFunctionPackageDescriptor tnb:GetSolNetworkInstance tnb:GetSolNetworkOperation tnb:GetSolNetworkPackage tnb:GetSolNetworkPackageContent tnb:GetSolNetworkPackageDescriptor tnb:InstantiateSolNetworkInstance tnb:ListSolFunctionInstances tnb:ListSolFunctionPackages tnb:ListSolNetworkInstances tnb:ListSolNetworkOperations tnb:ListSolNetworkPackages tnb:PutSolFunctionPackageContent tnb:PutSolNetworkPackageContent tnb:TerminateSolNetworkInstance tnb:UpdateSolFunctionPackage tnb:UpdateSolNetworkInstance tnb:UpdateSolNetworkPackage tnb:ValidateSolFunctionPackageContent tnb:ValidateSolNetworkPackageContent  | 
| transcribe |  transcribe:CreateCallAnalyticsCategory transcribe:CreateLanguageModel transcribe:CreateMedicalVocabulary transcribe:CreateVocabulary transcribe:CreateVocabularyFilter transcribe:DeleteCallAnalyticsCategory transcribe:DeleteCallAnalyticsJob transcribe:DeleteLanguageModel transcribe:DeleteMedicalScribeJob transcribe:DeleteMedicalTranscriptionJob transcribe:DeleteMedicalVocabulary transcribe:DeleteTranscriptionJob transcribe:DeleteVocabulary transcribe:DeleteVocabularyFilter transcribe:DescribeLanguageModel transcribe:GetCallAnalyticsCategory transcribe:GetCallAnalyticsJob transcribe:GetMedicalScribeJob transcribe:GetMedicalTranscriptionJob transcribe:GetMedicalVocabulary transcribe:GetTranscriptionJob transcribe:GetVocabulary transcribe:GetVocabularyFilter transcribe:ListCallAnalyticsCategories transcribe:ListCallAnalyticsJobs transcribe:ListLanguageModels transcribe:ListMedicalScribeJobs transcribe:ListMedicalTranscriptionJobs transcribe:ListMedicalVocabularies transcribe:ListTranscriptionJobs transcribe:ListVocabularies transcribe:ListVocabularyFilters transcribe:StartCallAnalyticsJob transcribe:StartCallAnalyticsStreamTranscription transcribe:StartCallAnalyticsStreamTranscriptionWebSocket transcribe:StartMedicalScribeJob transcribe:StartMedicalStreamTranscription transcribe:StartMedicalStreamTranscriptionWebSocket transcribe:StartMedicalTranscriptionJob transcribe:StartStreamTranscription transcribe:StartStreamTranscriptionWebSocket transcribe:StartTranscriptionJob transcribe:UpdateCallAnalyticsCategory transcribe:UpdateMedicalVocabulary transcribe:UpdateVocabulary transcribe:UpdateVocabularyFilter  | 
| 転送 |  transfer:CreateAccess transfer:CreateAgreement transfer:CreateConnector transfer:CreateProfile transfer:CreateServer transfer:CreateUser transfer:CreateWebApp transfer:CreateWorkflow transfer:DeleteAccess transfer:DeleteAgreement transfer:DeleteCertificate transfer:DeleteConnector transfer:DeleteHostKey transfer:DeleteProfile transfer:DeleteServer transfer:DeleteSshPublicKey transfer:DeleteUser transfer:DeleteWebApp transfer:DeleteWebAppCustomization transfer:DeleteWorkflow transfer:DescribeAccess transfer:DescribeAgreement transfer:DescribeCertificate transfer:DescribeConnector transfer:DescribeExecution transfer:DescribeHostKey transfer:DescribeProfile transfer:DescribeSecurityPolicy transfer:DescribeServer transfer:DescribeUser transfer:DescribeWebApp transfer:DescribeWebAppCustomization transfer:DescribeWorkflow transfer:ImportCertificate transfer:ImportHostKey transfer:ImportSshPublicKey transfer:ListAccesses transfer:ListCertificates transfer:ListConnectors transfer:ListExecutions transfer:ListFileTransferResults transfer:ListHostKeys transfer:ListProfiles transfer:ListSecurityPolicies transfer:ListServers transfer:ListUsers transfer:ListWebApps transfer:ListWorkflows transfer:SendWorkflowStepState transfer:StartDirectoryListing transfer:StartFileTransfer transfer:StartRemoteDelete transfer:StartRemoteMove transfer:StartServer transfer:StopServer transfer:TestConnection transfer:TestIdentityProvider transfer:UpdateAccess transfer:UpdateAgreement transfer:UpdateCertificate transfer:UpdateConnector transfer:UpdateHostKey transfer:UpdateProfile transfer:UpdateServer transfer:UpdateUser transfer:UpdateWebApp transfer:UpdateWebAppCustomization  | 
| translate |  translate:CreateParallelData translate:DeleteParallelData translate:DeleteTerminology translate:DescribeTextTranslationJob translate:GetParallelData translate:GetTerminology translate:ImportTerminology translate:ListLanguages translate:ListParallelData translate:ListTerminologies translate:ListTextTranslationJobs translate:StartTextTranslationJob translate:StopTextTranslationJob translate:TranslateDocument translate:TranslateText translate:UpdateParallelData  | 
| voiceid |  voiceid:AssociateFraudster voiceid:CreateDomain voiceid:CreateWatchlist voiceid:DeleteDomain voiceid:DeleteFraudster voiceid:DeleteSpeaker voiceid:DeleteWatchlist voiceid:DescribeDomain voiceid:DescribeFraudster voiceid:DescribeFraudsterRegistrationJob voiceid:DescribeSpeaker voiceid:DescribeSpeakerEnrollmentJob voiceid:DescribeWatchlist voiceid:DisassociateFraudster voiceid:EvaluateSession voiceid:ListDomains voiceid:ListFraudsterRegistrationJobs voiceid:ListFraudsters voiceid:ListSpeakerEnrollmentJobs voiceid:ListSpeakers voiceid:ListWatchlists voiceid:OptOutSpeaker voiceid:StartFraudsterRegistrationJob voiceid:StartSpeakerEnrollmentJob voiceid:UpdateDomain voiceid:UpdateWatchlist  | 
| vpc-lattice |  vpc-lattice:CreateAccessLogSubscription vpc-lattice:CreateListener vpc-lattice:CreateResourceConfiguration vpc-lattice:CreateResourceGateway vpc-lattice:CreateRule vpc-lattice:CreateService vpc-lattice:CreateServiceNetwork vpc-lattice:CreateServiceNetworkResourceAssociation vpc-lattice:CreateServiceNetworkServiceAssociation vpc-lattice:CreateServiceNetworkVpcAssociation vpc-lattice:CreateTargetGroup vpc-lattice:DeleteAccessLogSubscription vpc-lattice:DeleteAuthPolicy vpc-lattice:DeleteDomainVerification vpc-lattice:DeleteListener vpc-lattice:DeleteResourceConfiguration vpc-lattice:DeleteResourceEndpointAssociation vpc-lattice:DeleteResourceGateway vpc-lattice:DeleteResourcePolicy vpc-lattice:DeleteRule vpc-lattice:DeleteService vpc-lattice:DeleteServiceNetwork vpc-lattice:DeleteServiceNetworkResourceAssociation vpc-lattice:DeleteServiceNetworkServiceAssociation vpc-lattice:DeleteServiceNetworkVpcAssociation vpc-lattice:DeleteTargetGroup vpc-lattice:DeregisterTargets vpc-lattice:GetAccessLogSubscription vpc-lattice:GetAuthPolicy vpc-lattice:GetDomainVerification vpc-lattice:GetListener vpc-lattice:GetResourceConfiguration vpc-lattice:GetResourceGateway vpc-lattice:GetResourcePolicy vpc-lattice:GetRule vpc-lattice:GetService vpc-lattice:GetServiceNetwork vpc-lattice:GetServiceNetworkResourceAssociation vpc-lattice:GetServiceNetworkServiceAssociation vpc-lattice:GetServiceNetworkVpcAssociation vpc-lattice:GetTargetGroup vpc-lattice:ListAccessLogSubscriptions vpc-lattice:ListDomainVerifications vpc-lattice:ListListeners vpc-lattice:ListResourceConfigurations vpc-lattice:ListResourceEndpointAssociations vpc-lattice:ListResourceGateways vpc-lattice:ListRules vpc-lattice:ListServiceNetworkResourceAssociations vpc-lattice:ListServiceNetworkServiceAssociations vpc-lattice:ListServiceNetworkVpcAssociations vpc-lattice:ListServiceNetworkVpcEndpointAssociations vpc-lattice:ListServiceNetworks vpc-lattice:ListServices vpc-lattice:ListTargetGroups vpc-lattice:ListTargets vpc-lattice:PutAuthPolicy vpc-lattice:PutResourcePolicy vpc-lattice:RegisterTargets vpc-lattice:StartDomainVerification vpc-lattice:UpdateAccessLogSubscription vpc-lattice:UpdateListener vpc-lattice:UpdateResourceConfiguration vpc-lattice:UpdateResourceGateway vpc-lattice:UpdateRule vpc-lattice:UpdateService vpc-lattice:UpdateServiceNetwork vpc-lattice:UpdateServiceNetworkVpcAssociation vpc-lattice:UpdateTargetGroup  | 
| wafv2 |  wafv2:AssociateWebACL wafv2:CheckCapacity wafv2:CreateAPIKey wafv2:CreateIPSet wafv2:CreateRegexPatternSet wafv2:CreateRuleGroup wafv2:CreateWebACL wafv2:DeleteAPIKey wafv2:DeleteFirewallManagerRuleGroups wafv2:DeleteIPSet wafv2:DeleteLoggingConfiguration wafv2:DeletePermissionPolicy wafv2:DeleteRegexPatternSet wafv2:DeleteRuleGroup wafv2:DeleteWebACL wafv2:DescribeAllManagedProducts wafv2:DescribeManagedProductsByVendor wafv2:DescribeManagedRuleGroup wafv2:DisassociateWebACL wafv2:GenerateMobileSdkReleaseUrl wafv2:GetDecryptedAPIKey wafv2:GetIPSet wafv2:GetLoggingConfiguration wafv2:GetManagedRuleSet wafv2:GetMobileSdkRelease wafv2:GetRateBasedStatementManagedKeys wafv2:GetRegexPatternSet wafv2:GetRuleGroup wafv2:GetSampledRequests wafv2:GetWebACLForResource wafv2:ListAPIKeys wafv2:ListAvailableManagedRuleGroupVersions wafv2:ListAvailableManagedRuleGroups wafv2:ListIPSets wafv2:ListLoggingConfigurations wafv2:ListManagedRuleSets wafv2:ListMobileSdkReleases wafv2:ListRegexPatternSets wafv2:ListResourcesForWebACL wafv2:ListRuleGroups wafv2:ListWebACLs wafv2:PutLoggingConfiguration wafv2:PutManagedRuleSetVersions wafv2:UpdateIPSet wafv2:UpdateManagedRuleSetVersionExpiryDate wafv2:UpdateRegexPatternSet wafv2:UpdateRuleGroup wafv2:UpdateWebACL  | 
| wellarchitected |  wellarchitected:AssociateLenses wellarchitected:AssociateProfiles wellarchitected:CreateLensShare wellarchitected:CreateLensVersion wellarchitected:CreateMilestone wellarchitected:CreateProfile wellarchitected:CreateProfileShare wellarchitected:CreateReviewTemplate wellarchitected:CreateWorkload wellarchitected:CreateWorkloadShare wellarchitected:DeleteLens wellarchitected:DeleteLensShare wellarchitected:DeleteProfile wellarchitected:DeleteProfileShare wellarchitected:DeleteReviewTemplate wellarchitected:DeleteTemplateShare wellarchitected:DeleteWorkload wellarchitected:DeleteWorkloadShare wellarchitected:DisassociateLenses wellarchitected:DisassociateProfiles wellarchitected:ExportLens wellarchitected:GetAnswer wellarchitected:GetConsolidatedReport wellarchitected:GetGlobalSettings wellarchitected:GetLens wellarchitected:GetLensReview wellarchitected:GetLensReviewReport wellarchitected:GetLensVersionDifference wellarchitected:GetMilestone wellarchitected:GetProfile wellarchitected:GetProfileTemplate wellarchitected:GetReviewTemplate wellarchitected:GetReviewTemplateAnswer wellarchitected:GetReviewTemplateLensReview wellarchitected:GetWorkload wellarchitected:ImportLens wellarchitected:ListAnswers wellarchitected:ListCheckDetails wellarchitected:ListCheckSummaries wellarchitected:ListLensReviewImprovements wellarchitected:ListLensReviews wellarchitected:ListLensShares wellarchitected:ListLenses wellarchitected:ListMilestones wellarchitected:ListNotifications wellarchitected:ListProfileNotifications wellarchitected:ListProfileShares wellarchitected:ListProfiles wellarchitected:ListReviewTemplateAnswers wellarchitected:ListReviewTemplates wellarchitected:ListShareInvitations wellarchitected:ListTemplateShares wellarchitected:ListWorkloadShares wellarchitected:ListWorkloads wellarchitected:UpdateAnswer wellarchitected:UpdateGlobalSettings wellarchitected:UpdateIntegration wellarchitected:UpdateLensReview wellarchitected:UpdateProfile wellarchitected:UpdateReviewTemplate wellarchitected:UpdateReviewTemplateLensReview wellarchitected:UpdateShareInvitation wellarchitected:UpdateWorkload wellarchitected:UpdateWorkloadShare wellarchitected:UpgradeLensReview wellarchitected:UpgradeProfileVersion wellarchitected:UpgradeReviewTemplateLensReview  | 
| wisdom |  wisdom:CreateAssistant wisdom:CreateAssistantAssociation wisdom:CreateContent wisdom:CreateKnowledgeBase wisdom:CreateQuickResponse wisdom:CreateSession wisdom:DeleteAssistant wisdom:DeleteAssistantAssociation wisdom:DeleteContent wisdom:DeleteImportJob wisdom:DeleteKnowledgeBase wisdom:DeleteQuickResponse wisdom:GetAssistant wisdom:GetAssistantAssociation wisdom:GetContent wisdom:GetContentAssociation wisdom:GetContentSummary wisdom:GetImportJob wisdom:GetKnowledgeBase wisdom:GetRecommendations wisdom:GetSession wisdom:ListAssistantAssociations wisdom:ListAssistants wisdom:ListContentAssociations wisdom:ListContents wisdom:ListImportJobs wisdom:ListKnowledgeBases wisdom:ListQuickResponses wisdom:NotifyRecommendationsReceived wisdom:QueryAssistant wisdom:RemoveKnowledgeBaseTemplateUri wisdom:SearchContent wisdom:SearchQuickResponses wisdom:SearchSessions wisdom:StartContentUpload wisdom:StartImportJob wisdom:UpdateContent wisdom:UpdateKnowledgeBaseTemplateUri wisdom:UpdateQuickResponse wisdom:UpdateSession  | 
| worklink |  worklink:AssociateDomain worklink:AssociateWebsiteAuthorizationProvider worklink:AssociateWebsiteCertificateAuthority worklink:CreateFleet worklink:DeleteFleet worklink:DescribeAuditStreamConfiguration worklink:DescribeCompanyNetworkConfiguration worklink:DescribeDevice worklink:DescribeDevicePolicyConfiguration worklink:DescribeDomain worklink:DescribeFleetMetadata worklink:DescribeIdentityProviderConfiguration worklink:DescribeWebsiteCertificateAuthority worklink:DisassociateDomain worklink:DisassociateWebsiteAuthorizationProvider worklink:DisassociateWebsiteCertificateAuthority worklink:ListDevices worklink:ListDomains worklink:ListFleets worklink:ListWebsiteAuthorizationProviders worklink:ListWebsiteCertificateAuthorities worklink:RestoreDomainAccess worklink:RevokeDomainAccess worklink:SignOutUser worklink:UpdateAuditStreamConfiguration worklink:UpdateCompanyNetworkConfiguration worklink:UpdateDevicePolicyConfiguration worklink:UpdateDomainMetadata worklink:UpdateFleetMetadata worklink:UpdateIdentityProviderConfiguration  | 
| ワークスペース |  workspaces:AcceptAccountLinkInvitation workspaces:AssociateConnectionAlias workspaces:AssociateIpGroups workspaces:AssociateWorkspaceApplication workspaces:CopyWorkspaceImage workspaces:CreateAccountLinkInvitation workspaces:CreateConnectClientAddIn workspaces:CreateConnectionAlias workspaces:CreateIpGroup workspaces:CreateStandbyWorkspaces workspaces:CreateUpdatedWorkspaceImage workspaces:CreateWorkspaceBundle workspaces:CreateWorkspaceImage workspaces:CreateWorkspaces workspaces:CreateWorkspacesPool workspaces:DeleteAccountLinkInvitation workspaces:DeleteClientBranding workspaces:DeleteConnectClientAddIn workspaces:DeleteConnectionAlias workspaces:DeleteIpGroup workspaces:DeleteWorkspaceBundle workspaces:DeleteWorkspaceImage workspaces:DeployWorkspaceApplications workspaces:DeregisterWorkspaceDirectory workspaces:DescribeAccount workspaces:DescribeAccountModifications workspaces:DescribeApplicationAssociations workspaces:DescribeApplications workspaces:DescribeBundleAssociations workspaces:DescribeClientBranding workspaces:DescribeClientProperties workspaces:DescribeConnectClientAddIns workspaces:DescribeConnectionAliasPermissions workspaces:DescribeConnectionAliases workspaces:DescribeCustomWorkspaceImageImport workspaces:DescribeImageAssociations workspaces:DescribeIpGroups workspaces:DescribeWorkspaceAssociations workspaces:DescribeWorkspaceBundles workspaces:DescribeWorkspaceDirectories workspaces:DescribeWorkspaceImagePermissions workspaces:DescribeWorkspaceSnapshots workspaces:DescribeWorkspaces workspaces:DescribeWorkspacesConnectionStatus workspaces:DescribeWorkspacesPoolSessions workspaces:DescribeWorkspacesPools workspaces:DisassociateConnectionAlias workspaces:DisassociateIpGroups workspaces:DisassociateWorkspaceApplication workspaces:GetAccountLink workspaces:ImportClientBranding workspaces:ImportWorkspaceImage workspaces:ListAccountLinks workspaces:ListAvailableManagementCidrRanges workspaces:MigrateWorkspace workspaces:ModifyAccount workspaces:ModifyCertificateBasedAuthProperties workspaces:ModifyClientProperties workspaces:ModifyEndpointEncryptionMode workspaces:ModifySamlProperties workspaces:ModifySelfservicePermissions workspaces:ModifyStreamingProperties workspaces:ModifyWorkspaceAccessProperties workspaces:ModifyWorkspaceCreationProperties workspaces:ModifyWorkspaceProperties workspaces:ModifyWorkspaceState workspaces:RebootWorkspaces workspaces:RebuildWorkspaces workspaces:RegisterWorkspaceDirectory workspaces:RejectAccountLinkInvitation workspaces:RestoreWorkspace workspaces:StartWorkspaces workspaces:StartWorkspacesPool workspaces:StopWorkspaces workspaces:StopWorkspacesPool workspaces:TerminateWorkspaces workspaces:TerminateWorkspacesPool workspaces:TerminateWorkspacesPoolSession workspaces:UpdateConnectClientAddIn workspaces:UpdateConnectionAliasPermission workspaces:UpdateWorkspaceBundle workspaces:UpdateWorkspaceImagePermission workspaces:UpdateWorkspacesPool  | 
| xray |  xray:CreateGroup xray:CreateSamplingRule xray:DeleteGroup xray:DeleteResourcePolicy xray:DeleteSamplingRule xray:GetEncryptionConfig xray:GetGroup xray:GetGroups xray:GetInsight xray:GetInsightEvents xray:GetInsightImpactGraph xray:GetInsightSummaries xray:GetSamplingRules xray:ListResourcePolicies xray:PutEncryptionConfig xray:PutResourcePolicy xray:UpdateGroup xray:UpdateSamplingRule  | 

# ポリシー概要
<a name="access_policies_understand"></a>

IAM コンソールには、ポリシー内の各サービスに対して許可または拒否されるアクセスレベル、リソース、条件を定義する*ポリシー概要*テーブルが含まれます。ポリシーは、[ポリシー概要](access_policies_understand-policy-summary.md)、[サービス概要](access_policies_understand-service-summary.md)、[アクション概要](access_policies_understand-action-summary.md)の 3 つのテーブルにまとめられています。*ポリシー概要*テーブルには、サービスのリストが含まれます。そのリストからサービスを選択して、*サービス概要*を表示します。この概要テーブルには、選択したサービスに対して定義されているアクションとその関連するアクセス権限のリストが含まれます。そのテーブルからアクションを選択して、*アクション概要*を表示できます。このテーブルには、選択したアクションのリソースと条件のリストが含まれます。

![\[3 つのテーブルとそれらの関係を示すポリシー概要の図\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policy_summaries-diagram.png)


そのユーザーにアタッチされているすべてのポリシー (管理およびインライン) について、[**ユーザー**] ページまたは [**ロール**] ページでポリシー概要を表示できます。すべての管理ポリシーについて、[**ポリシー**] ページで概要を表示します。管理ポリシーには、AWS 管理ポリシー、AWS 管理ジョブ機能ポリシー、カスタマー管理ポリシーが含まれます。これらのポリシーの概要は、ユーザーまたは他の IAM ID にアタッチされているかどうかにかかわらず、[**Policies**] ページで表示できます。

ポリシー概要の情報を使用して、ポリシーによって許可または拒否されるアクセス権限を理解できます。ポリシー概要は、想定するアクセス許可を付与しないポリシーの[トラブルシューティング](troubleshoot_policies.md)に役立ちます。

**Topics**
+ [ポリシー概要 (サービスの一覧)](access_policies_understand-policy-summary.md)
+ [ポリシー概要のアクセスレベル](access_policies_understand-policy-summary-access-level-summaries.md)
+ [サービス概要 (アクションのリスト)](access_policies_understand-service-summary.md)
+ [アクション概要 (リソースのリスト)](access_policies_understand-action-summary.md)
+ [ポリシー概要の例](access_policies_policy-summary-examples.md)

# ポリシー概要 (サービスの一覧)
<a name="access_policies_understand-policy-summary"></a>

ポリシーは、ポリシー概要、[サービス概要](access_policies_understand-service-summary.md)、[アクション概要](access_policies_understand-action-summary.md)の 3 つのテーブルにまとめられています。*ポリシー概要*テーブルには、選択したポリシーによって定義されているサービスとアクセス許可の概要のリストが含まれます。

![\[3 つのテーブルとそれらの関係を示すポリシー概要の図\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policy_summaries-pol-sum.png)


ポリシー概要テーブルは、[**Uncategorized services (未分類サービス)**]、[**Explicit deny (明示的な拒否)**]、[**許可**] という 1 つ以上のセクションにグループ化されます。IAM によって認識されないサービスがポリシーに含まれる場合、そのサービスはテーブルの [**Uncategorized services (未分類サービス)**] セクションに含まれます。IAM によって認識されるサービスがポリシーに含まれる場合、ポリシーの効果 (`Deny` または `Allow`) に応じて、そのサービスはテーブルの [**Explicit deny (明示的な拒否)**] セクションまたは [**許可**] セクションに含まれます。

## ポリシー概要の要素について
<a name="understanding-elements-policy-summary"></a>

次のポリシー詳細ページの例で、[**SummaryAllElements**] ポリシーは、ユーザーに直接アタッチされている管理ポリシー (カスタマー管理ポリシー) です。ポリシー概要を表示するには、このポリシーを展開します。

![\[ポリシー概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-user-page-dialog.png)


前のイメージで、ポリシー概要は、[**ポリシー**] ページ内に表示されます。

1. [**アクセス許可**] タブには、ポリシーで定義されたアクセス許可が含まれています。

1. ポリシーに定義されているすべてのアクション、リソース、条件に対し、ポリシーで権限が付与されない場合、警告またはエラーバナーがページの上部に表示されます。すると、問題に関する詳細がポリシー概要に含まれます。ポリシーで付与されるアクセス許可について理解し、問題の解決にポリシー概要をどのように役立てるかについては、「[使用するポリシーが予期するアクセス許可を付与しない](troubleshoot_policies.md#policy-summary-not-grant-permissions)」を参照してください。

1. [**概要**] と [**JSON**] ボタンを使用して、ポリシー概要と JSON ポリシードキュメントを切り替えます。

1.  [**検索**] ボックスを使用してサービスのリストを縮小すると、特定のサービスを簡単に検索できます。

1. 展開されたビューには、[**SummaryAllElements**] ポリシーの追加の詳細が表示されます。

以下のポリシー概要テーブルの図は、[ポリシー詳細] ページで展開した [**SummaryAllElements**] ポリシーを示しています。

![\[ポリシー概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-table-dialog.png)


前のイメージで、ポリシー概要は、[**ポリシー**] ページ内に表示されます。

1. IAM によって認識されるサービスは、ポリシーによってそのサービスの使用が許可されるか明示的に拒否されるかに応じて、グループ化されます。この例のポリシーには、Amazon S3 サービスに関する `Deny` ステートメントと、請求、CodeDeploy、Amazon EC2 サービスに関する `Allow` ステートメントが含まれています。

1. [**Service (サービス)**] – この列には、ポリシー内で定義されているサービス一覧と各サービスの詳細が表示されています。ポリシー概要テーブルの各サービス名は、[*service summary (サービス概要)*] テーブルへのリンクです。詳細については、「[サービス概要 (アクションのリスト)](access_policies_understand-service-summary.md)」を参照してください。この例のアクセス許可は、Amazon S3、請求、CodeDeploy、Amazon EC2 サービス向けに定義されています。

1. [**アクセスレベル**] – この列には、各アクセスレベル (`List`、`Read`、`Write`、`Permission Management`、および `Tagging`) のアクションに、ポリシーで定義されている`Full` または `Limited` アクセス許可があるかどうかが表示されます。アクセスレベルの概要の詳細と例については、「[ポリシー概要のアクセスレベル](access_policies_understand-policy-summary-access-level-summaries.md)」を参照してください。
   + **フルアクセス** – このエントリは、そのサービスに使用可能な 4 つの全アクセスレベルのすべてのアクションへのアクセスが許可されていることを示します。
   + <a name="full-vs-limited-access-summary"></a>エントリに [**フルアクセス**] が含まれていない場合、一部のサービスは利用できますが、すべてのアクションを利用できるわけではありません。このアクセスは、各アクセスレベル (`List`、`Read`、`Write`、`Permission Management`、および `Tagging`) の説明のとおりに定義されます。

     [**フル**]: このポリシーでは、表示されている各アクセスレベル分類のすべてのアクションへのアクセスを許可します。この例では、ポリシーによって、すべての請求アクションに `Read` 権限が付与されます。

     **Limited (制限あり)**: このポリシーでは、表示されている各アクセスレベル分類の 1 つ以上のアクションへのアクセスを許可しますが、すべてのアクションへのアクセスを許可するわけではありません。この例では、ポリシーによって、一部の請求アクションに `Write` 権限が付与されます。

1. **Resource (リソース)** – この列には、各サービスに対してポリシーで指定したリソースが表示されます。
   + **複数** – このポリシーには、サービス内に複数のリソースが含まれていますが、すべてのリソースが含まれているわけではありません。この例では、複数の Amazon S3 リソースへのアクセスは明示的に拒否されます。
   + **すべてのリソース** – このポリシーは、サービス内のすべてのリソースに対して定義されています。この例では、ポリシーによって、一覧表示されたアクションをすべての請求リソースで行うことができるようになります。
   + リソーステキスト – このポリシーには、1 つのリソースがサービス内に含まれます。この例では、`DeploymentGroupName` CodeDeploy リソース に対してのみ、表示されているアクションを行うことができます。サービスから IAM に渡される情報に応じて、ARN が表示されるか、定義されたリソースタイプが表示される場合があります。
**注記**  
この列には、別のサービスのリソースが含まれることがあります。リソースを含むポリシーステートメントで、アクションとリソースの両方がサービスに一致しない場合、ポリシーには不一致のリソースが含まれます。IAM は、ポリシーを作成するときや、ポリシー概要でポリシーを表示するとき、リソースの不一致のリソースについて警告されません。この列に不一致のリソースが含まれる場合は、ポリシーのエラーを確認する必要があります。ポリシーをより深く理解するために、必ず [Policy Simulator](access_policies_testing-policies.md) でテストしてください。

1. **Request condition (リクエストの条件)** – この列では、リソースに関連付けられたサービスまたはアクションが条件の対象かどうかを示します。
   + **None (なし)** – このポリシーには、サービスの条件は含まれません。この例では、Amazon S3 サービスで拒否されたアクションに条件は適用されません。
   + 条件のテキスト – このポリシーには、サービスに対する 1 つの条件が含まれます。この例では、表示されている [請求] アクションは、ソースの IP アドレスが `203.0.113.0/24` と一致する場合にのみ許可されます。
   + **複数** – このポリシーでは、サービスに対する複数の条件が含まれます。ポリシーの複数の条件のそれぞれを表示するには、[**JSON**] を選択してポリシードキュメントを表示します。

1. **残りのサービスを表示** – このボタンを選択すると、テーブルが展開されて、ポリシーで定義されていないサービスが含まれます。これらのサービスは、このポリシー内で*暗黙的に拒否* (またはデフォルトで拒否) されています。ただし、別のポリシーのステートメントでは、そのサービスの使用が許可されているか明示的に拒否されている可能性があります。ポリシー概要には、1 つのポリシーのアクセス許可がまとめられています。特定のリクエストを許可するか拒否するかを AWS サービスがどのようにして決定しているかについては、「[ポリシーの評価論理](reference_policies_evaluation-logic.md)」を参照してください。

ポリシー内のポリシーまたは要素にアクセス許可を与えない場合、IAM にはポリシー概要に関する追加の警告と情報が表示されます。以下のポリシー概要テーブルは、**SummaryAllElements** ポリシー詳細ページの **[残りのサービスを表示]** サービスを拡張し、想定される警告と共に示しています。

![\[ポリシー概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-table-showremaining-dialog.png)


前のイメージには、アクセス許可のない定義済みアクション、リソース、または条件を含むすべてのサービスを示しています。

1. **Resource warnings (リソースの警告)** – すべてのアクションまたはリソースに対するアクセス許可がないサービスについては、以下のいずれかの警告がテーブルの [**Resource (リソース)**] 列に表示されます。
   + **![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) リソースが定義されていません。**– これは、サービスではアクションが定義されていますが、ポリシーにはサポートされるリソースが含まれていないことを意味します。
   + **![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) 1 つ以上のアクションには該当するリソースがありません。**– これは、サービスではアクションが定義されていますが、アクションの一部にサポートされているリソースがないことを意味します。
   + **![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) 1 つ以上のリソースには該当するアクションがありません。**– これは、サービスではリソースが定義されていますが、一部のリソースにサポートされているアクションがないことを意味します。

   サービスに、該当するリソースがないアクションと、該当するリソースがあるリソースの両方が含まれている場合、「**1 つ以上のリソースに該当するアクションがありません**」という警告が表示されます。これは、サービスの概要を表示する際に、アクションに適用されないリソースが表示されないために発生します。`ListAllMyBuckets` アクションの場合、このポリシーには最後の警告が含まれます。アクションがリソースレベルのアクセス許可をサポートせず、`s3:x-amz-acl` 条件キーをサポートしていないためです。リソースまたは条件に関する問題が解決すると、残りの問題が警告の詳細に表示されます。

1. **リクエスト条件の警告** – すべての条件に対するアクセス許可がないサービスについては、以下のいずれかの警告がテーブルの [**Request condition (リクエストの条件)**] 列に表示されます。
   + **![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) 1 つ以上のアクションには該当する条件がありません。**– これは、サービスではアクションが定義されていますが、一部のアクションにはサポートされている条件がないことを意味します。
   + **![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) 1 つ以上の条件には該当するアクションがありません。**– これは、サービスでは条件が定義されていますが、一部の条件にはサポートされているアクションがないことを意味します。

1. **Multiple \$1 ![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) 1 つ以上のアクションには該当するリソースがありません。**– Amazon S3 に対する `Deny` ステートメントで、複数のリソースが含まれます。また、複数のアクションも含まれ、一部のアクションはリソースをサポートしていますが、他のアクションはサポートしていません。このポリシーを表示するには、[**SummaryAllElements** JSON ポリシードキュメント](#policy-summary-example-json) を参照してください。この場合、ポリシーにはすべての Amazon S3 アクションが含まれ、バケットまたはバケット内のオブジェクトで実行可能なアクションのみが拒否されます。

1. **![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) リソースは定義されていません** – Tサービスはアクションを定義済みですが、サポートされるリソースはポリシーに含まれていないため、サービスはアクセス許可を付与しません。この場合、ポリシーには CodeCommit アクションが含まれますが、CodeCommit リソースは含まれません。

1. **DeploymentGroupName \$1 のような文字列 \$1 すべて、リージョン \$1 のような文字列 \$1 us-west-2 \$1![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) 1 つまたは複数のアクションに該当するリソースがありません。**– サービスには定義されたアクションと、サポートするリソースを持たないアクションが少なくとも 1 つあります。

1. **なし \$1 ![\[Warning hazard sign icon with yellow triangle background.\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) 1 つ以上の条件に該当するアクションがありません。**– サービスに、サポートするアクションのない条件キーが 1 つ以上あります。

## **SummaryAllElements** JSON ポリシードキュメント
<a name="policy-summary-example-json"></a>

**SummaryAllElements** ポリシーは、アカウントのアクセス許可を定義するために使用するものではありません。むしろ、ポリシー概要を表示している間に発生する可能性のあるエラーや警告について説明することが目的です。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "billing:Get*",
                "payments:List*",
                "payments:Update*",
                "account:Get*",
                "account:List*",
                "cur:GetUsage*"
            ],
            "Resource": [
                "*"
            ],
            "Condition": {
                "IpAddress": {
                    "aws:SourceIp": "203.0.113.0/24"
                }
            }
        },
        {
            "Effect": "Deny",
            "Action": [
                "s3:*"
            ],
            "Resource": [
                "arn:aws:s3:::customer",
                "arn:aws:s3:::customer/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:GetConsoleScreenshots"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "codedploy:*",
                "codecommit:*"
            ],
            "Resource": [
                "arn:aws:codedeploy:us-west-2:123456789012:deploymentgroup:*",
                "arn:aws:codebuild:us-east-1:123456789012:project/my-demo-project"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListAllMyBuckets",
                "s3:GetObject",
                "s3:DeletObject",
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket/*",
                "arn:aws:autoscling:us-east-2:123456789012:autoscalgrp"
            ],
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": [
                        "public-read"
                    ],
                    "s3:prefix": [
                        "custom",
                        "other"
                    ]
                }
            }
        }
    ]
}
```

------

# ポリシー概要を表示する
<a name="access_policies_view-policy-summary"></a>

IAM ユーザーまたはロールにアタッチされているポリシーのポリシー概要を表示できます。管理ポリシーの場合、**[ポリシー]** ページでポリシー概要を表示できます。ポリシー概要がポリシーに含まれていない場合、その理由については、「[欠落しているポリシーの概要](troubleshoot_policies.md#missing-policy-summary)」を参照してください。

## **[ポリシー]** ページでポリシー概要を表示する
<a name="viewing-policy-summaries-from-the-policies-page"></a>

[**ポリシー**] ページで、管理ポリシーのポリシー概要を表示できます。

**[**ポリシー**] ページのポリシー概要を表示するには**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーの一覧で、表示するポリシーの名前を選択します。

1. ポリシーの [**ポリシー詳細**] ページで [**アクセス許可**] タブを表示して、ポリシー概要を確認します。

## ユーザーにアタッチされているポリシーのポリシー概要を表示する
<a name="viewing-policy-summaries-for-policies-attached-to-users"></a>

IAM ユーザーにアタッチされているポリシーのポリシー概要を表示できます。

**ユーザーにアタッチされているポリシーの概要を表示するには**

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

1. ナビゲーションペインで **[ユーザー]** を選択します。

1. ユーザーのリストから、ポリシーを表示するユーザーを選択します。

1. ユーザーの [**Summary (概要)**] ページの [**Permissions (アクセス許可)**] タブから、ユーザーに直接、またはグループのユーザーにアタッチされているポリシーのリストを表示します。

1. ユーザーのポリシーのテーブルで、表示するポリシーの行を展開します。

## ロールにアタッチされているポリシーのポリシー概要を表示する
<a name="viewing-policy-summaries-for-policies-attached-to-roles"></a>

ロールにアタッチされているポリシーのポリシー概要を表示できます。

**ロールにアタッチされているポリシーの概要を表示するには**

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

1. ナビゲーションペインで **Roles (ロール)** を選択します。

1. ロールのリストから、表示するポリシーを含むロールの名前を選択します。

1. ロールの [**Summary (概要)**] ページの [**Permissions (アクセス許可)**] タブから、ロールにアタッチされているポリシーのリストを表示します。

1. ロールのポリシーのテーブルで、表示するポリシーの行を展開します。

## ポリシーの編集による警告の編集
<a name="edit-policy-summary"></a>

ポリシー概要の表示中に、タイプミスを見つけたり、必要なアクセス許可がポリシーから付与されないことに気付いたりすることがあります。ポリシー概要を直接編集することはできません。ただし、ビジュアルポリシーエディタを使用してお客様のマネージドポリシーを編集できます。これにより、ポリシー概要レポートで報告されるのと同じエラーや警告の多くをキャッチできます。次に、ポリシー概要の変更を表示して、これらのすべての問題を修正したことを確認できます。インラインポリシーを編集する方法については、「[IAM ポリシーを編集する](access_policies_manage-edit.md)」を参照してください。AWS の管理ポリシーを編集することはできません。

**[Visual]** オプションを使用してポリシー概要のポリシーを編集できます。

**[**Visual**] オプションを使用してポリシー概要のポリシーを編集するには**

1. 前の手順で説明されているように、ポリシー概要を開きます。

1. **[編集]** を選択します。

   [**ユーザー**] ページが表示された状態で、ユーザーにアタッチされているカスタマー管理ポリシーを編集しようとすると、[**ポリシー**] ページにリダイレクトされます。カスタマー管理ポリシーは、[**ポリシー**] ページでのみ編集できます。

1. [**Visual**] オプションを選択して、ポリシーの編集可能な視覚表現を表示します。IAM はポリシーを再構成してビジュアルエディタに合わせて最適化し、問題を見つけて修正しやすくする場合があります。ページの警告とエラーメッセージは、ポリシーの問題を修正するために役立ちます。IAM によるポリシーの再構築の詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

1. ポリシー概要に反映された変更を表示するには、ポリシーを編集し、[**次へ**] を選択します。それでも問題が表示される場合は、[**Previous (前に戻る)**] を選択して編集画面に戻ります。

1. **[変更を保存]** を選択して、変更を保存します。

**[JSON]** オプションを使用してポリシー概要のポリシーを編集できます。

****[JSON]** オプションを使用してポリシー概要のポリシーを編集するには**

1. 前の手順で説明されているように、ポリシー概要を開きます。

1. [**概要**] と [**JSON**] ボタンを使用して、ポリシー概要と JSON ポリシードキュメントを比較します。この情報を使用して、ポリシードキュメントで変更する行を確認できます。

1. [**編集**] を選択し、[**JSON**] オプションを選択して、JSON ポリシードキュメントを編集します。
**注記**  
いつでも [**Visual**] と [**JSON**] エディタオプションを切り替えることができます。ただし、**[Visual]** エディタで変更を行うか **[次へ]** を択した場合、IAM はポリシーを再構成して visual エディタに合わせて最適化することがあります。詳細については、「[ポリシーの再構成](troubleshoot_policies.md#troubleshoot_viseditor-restructure)」を参照してください。

   [**ユーザー**] ページが表示された状態で、ユーザーにアタッチされているカスタマー管理ポリシーを編集しようとすると、[**ポリシー**] ページにリダイレクトされます。カスタマー管理ポリシーは、[**ポリシー**] ページでのみ編集できます。

1. ポリシーを編集します。[ポリシーの検証](access_policies_policy-validator.md)中に生成されたセキュリティ警告、エラー、または一般警告をすべて解決してから、**[次へ]** を選択します。それでも問題が表示される場合は、[**Previous (前に戻る)**] を選択して編集画面に戻ります。

1. **[変更を保存]** を選択して、変更を保存します。

# ポリシー概要のアクセスレベル
<a name="access_policies_understand-policy-summary-access-level-summaries"></a>

## AWS アクセスレベルの概要
<a name="access_policies_access-level-summaries"></a>

ポリシー概要には、ポリシーに記載されている各サービスに対して定義されているアクションのアクセス許可を説明するアクセスレベルの概要が含まれています。ポリシーの概要については、[ポリシー概要](access_policies_understand.md) を参照してください。アクセスレベルの概要は、各アクセスレベル (`List`、`Read`、`Tagging`、`Write`、`Permissions management`) のアクションに、ポリシーで定義されている `Full` または `Limited` 許可が付与されているかを示します。サービス内の各アクションに割り当てられているアクセスレベルの分類を表示するには、「[AWS のサービスのアクション、リソース、および条件キー](reference_policies_actions-resources-contextkeys.html)」を参照してください。

以下の例では、特定のサービスのポリシーによって付与されるアクセス権限について説明しています。完全な JSON ポリシードキュメントおよび関連の概要の例については、[ポリシー概要の例](access_policies_policy-summary-examples.md) を参照してください。


****  

| サービス | アクセスレベル | このポリシーでは、以下を提供します。 | 
| --- | --- | --- | 
| IAM | フル アクセス | IAM サービス内のすべてのアクションへのアクセス | 
| CloudWatch | フル: リスト | List アクセスレベルのすべての CloudWatch アクションにアクセスできますが、Read、Write、または Permissions management アクセスレベル分類によるアクションへのアクセスはできません。 | 
| Data Pipeline | 制限: List、Read | AWS Data Pipeline および List アクセスレベルで、少なくとも 1 つの Read アクションにアクセスできますが、すべてにアクセスすることはできません。また、Write または Permissions management アクションにはアクセスできません。 | 
| EC2 | フル: List、Read 制限: Write | すべての Amazon EC2、List および Read アクションにアクセスでき、さらに Amazon EC2 Write アクションの少なくとも 1 つのアクションにアクセスできますが、すべてにはアクセスできません。また Permissions management アクセスレベル分類のアクションにはアクセスできません。 | 
| S3  | Limited: Read、Write、Permissions management | 少なくとも 1 つのアクセス許可がありますが、Amazon S3 Read の Write、および Permissions management アクションのすべてではありません。 | 
| codedploy | (空) | IAM によってこのサービスが認識されないため、不明なアクセスです。 | 
| API ゲートウェイ | なし | ポリシーにアクセス許可が定義されていません。 | 
| CodeBuild | ![\[a white exclamation point on an orange triangle background\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/console-alert-icon.console.png) アクションは定義されていません。 | サービスにアクションが定義されていないためアクセス許可がありません。この問題を理解して解決する方法については、「[使用するポリシーが予期するアクセス許可を付与しない](troubleshoot_policies.md#policy-summary-not-grant-permissions)」を参照してください。 | 

ポリシーの概要では、**[フルアクセス]** は、ポリシーがサービス内のすべてのアクションに対するアクセスを提供することを示します。サービス内の一部のアクションへアクセスを提供するポリシーは、アクセスレベルの分類に従ってさらにグループ化されます。これは、以下のアクセスレベルのグループ化の 1 つによって示されます。
+ **Full**: このポリシーは、指定されたアクセスレベル分類のすべてのアクションへのアクセスを許可します。
+ **Limited**: このポリシーは、指定されたアクセスレベル分類内の 1 つ以上のアクションへのアクセスを許可しますが、すべてのアクションへのアクセスを同時には許可しません。
+ **None**: このポリシーはいずれのアクセス許可も付与しません。
+ (空): IAM はこのサービスを認識しません。サービス名にタイプミスが含まれる場合、ポリシーによってサービスへのアクセスは許可されません。サービス名が正しい場合、サービスがポリシー概要をサポートしていないか、プレビュー中である可能性があります。この場合は、ポリシーによってアクセスが許可される可能性がありますが、そのアクセスがポリシー概要に表示されることはありません。一般公開された (GA) サービスに対するポリシー概要のサポートをリクエストするには、「[サービスが IAM ポリシー概要をサポートしていない](troubleshoot_policies.md#unsupported-services-actions)」を参照してください。

アクションへの制限付き（部分）アクセスを含むアクセスレベル概要は、AWS のアクセスレベル分類 `List`、`Read`、`Tagging`、`Write`、または `Permissions management` を使用してグループ化されます。

## AWS アクセスレベル
<a name="access_policies_access-level"></a>

AWS は、サービスのアクションについて以下のアクセスレベル分類を定義します。
+ **List**: オブジェクトが存在するかどうかを判断するためにサービス内のリソースを一覧表示するアクセス許可。このレベルのアクセス権を持つアクションはオブジェクトをリストできますが、リソースのコンテンツは表示されません。たとえば、Amazon S3 アクション `ListBucket` には **List** アクセスレベルがあります。
+ **Read**: サービス内のリソースのコンテンツと属性を読み取るアクセス許可。ただし、編集するアクセス許可はありません。たとえば、Amazon S3 アクション `GetObject` および `GetBucketLocation` には、**読み取り**アクセスレベルがあります。
+ **Tagging**: リソースタグの状態のみを変更するアクションを実行する権限。たとえば、IAM のアクション `TagRole` および `UntagRole` は、ロールのタグ付けまたはタグ付け解除のみを許可するため、**タグ付け** アクセスレベルがあります。ただし、 `CreateRole` アクションは、ロール作成時にそのロールリソースのタグ付けを許可します。このアクションはタグの追加にとどまらないため、このアクションには `Write` アクセスレベルがあります。
+ **Write**: サービス内のリソースを作成、削除、または変更するアクセス許可。たとえば、Amazon S3 アクション`DeleteBucket`、`CreateBucket`、および `PutObject` には **Write** アクセスレベルがあります。また、`Write` アクションにより、リソースタグの変更も許可される場合もあります。ただし、タグへの変更のみを許可するアクションには `Tagging` アクセスレベルがあります。
+ **許可管理**: 許可管理とは、IAM および非 IAM ID 許可を含めた AWS のサービス内のアクセスを制御するアクションを指しますが、セキュリティグループといったネットワークレベルのアクセスコントロールは含まれません。例えば、IAM と AWS Organizations のほとんどのアクション、および Amazon S3 の `PutBucketPolicy` と `DeleteBucketPolicy` アクションには、**[許可管理]** アクセスレベルがあります。
**ヒント**  
AWS アカウント のセキュリティを強化するには、**[Permissions management]** (アクセス許可の管理) アクセスレベル分類を含むポリシーを制限したり定期的にモニタリングしたりします。

サービス内の各アクションに割り当てられているアクセスレベルの分類を表示するには、「[AWS のサービスのアクション、リソース、および条件キー](reference_policies_actions-resources-contextkeys.html)」を参照してください。

# サービス概要 (アクションのリスト)
<a name="access_policies_understand-service-summary"></a>

ポリシーは、ポリシー概要、[サービス概要](access_policies_understand-policy-summary.md)、[アクション概要](access_policies_understand-action-summary.md)の 3 つのテーブルにまとめられています。*サービス概要*テーブルには、選択したサービスのポリシーによって定義されているアクションとアクセス許可の概要のリストが含まれます。

![\[3 つのテーブルとそれらの関係を示すポリシー概要の図\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policy_summaries-svc-sum.png)


アクセス許可を付与するポリシー概要に示されている各サービスの概要を表示できます。テーブルは、[**Uncategorized actions (未分類アクション)**]、[**Uncategorized resource types (未分類リソースタイプ)**]、およびアクセスレベルのセクションにグループ化されます。IAM によって認識されないアクションがポリシーに含まれる場合、そのアクションはテーブルの [**Uncategorized actions (未分類アクション)**] セクションに含まれます。IAM によって認識されるアクションがポリシーに含まれる場合、そのアクションはテーブルのいずれかのアクセスレベル (**List**、**Read**、**Write**、**Permissions management**) のセクションに含まれます。サービス内の各アクションに割り当てられているアクセスレベルの分類を表示するには、「[AWS のサービスのアクション、リソース、および条件キー](reference_policies_actions-resources-contextkeys.html)」を参照してください。

## サービス概要の要素を理解する
<a name="understanding-elements-service-summary"></a>

以下の例は、ポリシー概要から許可されている Amazon S3 アクションのサービス概要です。このサービスのアクションは、アクセスレベルごとにグループ化されています。例えば、サービスで使用可能な合計 52 の**読み取り**アクションから 35 の**読み取り**アクションが定義されます。

![\[サービス概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-action-dialog.png)


管理ポリシーのサービス概要ページには、以下の情報が含まれます。

1. ポリシーのサービスに定義されているすべてのアクション、リソース、条件に対し、ポリシーでアクセス許可が付与されない場合、警告バナーがページの上部に表示されます。すると、問題に関する詳細がサービス概要に含まれます。ポリシーで付与されるアクセス許可について理解し、問題の解決にポリシー概要をどのように役立てるかについては、「[使用するポリシーが予期するアクセス許可を付与しない](troubleshoot_policies.md#policy-summary-not-grant-permissions)」を参照してください。

1. [**JSON**] を選択すると、ポリシーに関する追加の詳細が表示されます。この操作により、アクションに適用されるすべての条件を表示できます。(ユーザーに直接アタッチされているインラインポリシーのサービス概要を表示している場合は、サービス概要ダイアログボックスを閉じてポリシー概要に戻り、JSON ポリシードキュメントにアクセスする必要があります。)

1. 特定のアクションの概要を表示するには、キーワードを [**検索**] ボックスに入力して、使用可能なアクションのリストを減らします。

1. [**サービス**] 戻る矢印の隣に、サービスの名前が表示されます (この場合は **S3**)。このサービスのサービス概要には、ポリシーで定義されている許可または拒否されたアクションのリストが含まれています。サービスが [**アクセス許可**] タブの [**(Explicit deny)**] の下に表示されている場合、サービスの概要テーブルに記載されているアクションは明示的に拒否されます。サービスが [**アクセス許可**] タブの [**許可**] の下に表示されている場合、サービスの概要テーブルに記載されているアクションは許可されます。

1. **アクション** – この列には、ポリシー内で定義されたアクションが一覧表示され、各アクションのリソースと条件が示されます。ポリシーでアクションにアクセス許可が付与または拒否されると、アクション名が [[アクション概要](access_policies_understand-action-summary.md)] テーブルにリンクされます。このテーブルでは、 それらのアクションが、ポリシーによるアクセスレベル (許可または拒否) に応じて、1 ～ 5 のセクションに分類されます。それらのセクションは [**List**]、[**Read**]、[**Write**]、[**Permission Management**]、[**Tagging**] です。カウントは、それぞれのアクセスレベルでアクセス許可を付与する認識されたアクションの数を示します。合計は、サービスの既知のアクションの数です。この例では、合計 52 の既知の Amazon S3 **読み取り** アクションのうちの 35 のアクションがアクセス許可を付与します。サービス内の各アクションに割り当てられているアクセスレベルの分類を表示するには、「[AWS のサービスのアクション、リソース、および条件キー](reference_policies_actions-resources-contextkeys.html)」を参照してください。

1. [**残りのアクションを表示**] – このボタンをクリックするとテーブルが展開されるか非表示になり、このサービスで既知ではあるがアクセス許可を指定しないアクションが表示されます。ボタンを展開すると、アクセス許可を指定しないすべての要素の警告も表示されます。

1. [**Resource (リソース)**] – この列には、ポリシーによってサービスに対して定義されているリソースが表示されます。IAM では、リソースが各アクションに適用されるかどうかは確認されません。この例では、Amazon S3 サービスのアクションは `developer_bucket` Amazon S3 バケットリソース に対してのみ許可されます。サービスから IAM に渡される情報に応じて、`arn:aws:s3:::developer_bucket/*` などの ARN が表示されるか、`BucketName = developer_bucket` などの定義されたリソースタイプが表示される場合があります。
**注記**  
この列には、別のサービスのリソースが含まれることがあります。リソースを含むポリシーステートメントで、アクションとリソースの両方がサービスに一致しない場合、ポリシーには不一致のリソースが含まれます。IAM は、ポリシーを作成するときや、サービス概要でポリシーを表示するとき、リソースの不一致のリソースについて警告されません。IAM は、アクションがリソースに適用されるかどうかも示せず、サービスが一致するかどうかだけを示します。この列に不一致のリソースが含まれる場合は、ポリシーのエラーを確認する必要があります。ポリシーをより深く理解するために、必ず [Policy Simulator](access_policies_testing-policies.md) でテストしてください。

1. **Request condition (リクエストの状態)** – この列は、リソースに関連付けられたアクションが条件の対象かどうかを示します。これらの条件の詳細については、[**JSON**] を選択して JSON ポリシードキュメントを確認してください。

1. **No access (アクセスなし)**– このポリシーにはアクセス許可が指定されないアクションが含まれています。

1. **Resource warning (リソースの警告)** – フルアクセスが指定されないリソースに対するアクションについては、以下のいずれかの警告が表示されます。
   + **[This action does not support resource-level permissions.] (このアクションでは、リソースレベルのアクセス許可はサポートされません。) [This requires a wildcard (\$1) for the resource.]** (これにはリソース用のワイルドカード (\$1) が必要です。) – これは、ポリシーにはリソースレベルのアクセス許可が含まれているが、このアクションに対するアクセス許可を指定するには、`"Resource": ["*"]` を含める必要があることを意味しています。
   + **このアクションに該当するリソースがありません。**– これは、ポリシーに含まれているアクションにサポートされたリソースがないことを意味しています。
   + **このアクションには、該当するリソースと条件がありません。**– これは、ポリシーに含まれているアクションにサポートされたリソースおよび条件がないことを意味しています。この場合、このサービスのポリシーに条件は含まれていますが、このアクションに適用される条件はありません。

1. アクセス許可が指定されるアクションには、アクション概要へのリンクが含まれます。

# サービス概要の表示
<a name="access_policies_view-service-summary"></a>

アクセス許可を付与するポリシー概要に示されている各サービスの概要を表示できます。

## **[ポリシー]** ページからサービス概要を表示する
<a name="viewing-service-summaries-from-the-policies-page"></a>

[**ポリシー**] ページで、管理ポリシーのサービス概要を表示できます。

**管理ポリシーのサービス概要を表示するには**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーの一覧で、表示するポリシーの名前を選択します。

1. ポリシーの [**ポリシー詳細**] ページで [**アクセス許可**] タブを表示して、ポリシー概要を確認します。

1. サービスのポリシー概要のリストで、表示するサービス名を選択します。

## ユーザーにアタッチされたポリシーのサービス概要を表示する
<a name="viewing-service-summaries-for-policies-attached-to-users"></a>

IAM ユーザーにアタッチされたポリシーのサービス概要を表示できます。

**ユーザーにアタッチされたポリシー概要を表示するには**

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

1. ナビゲーションペインで [**Users (ユーザー)**] を選択します。

1. ユーザーのリストから、ポリシーを表示するユーザーを選択します。

1. ユーザーの [**Summary (概要)**] ページの [**Permissions (アクセス許可)**] タブから、ユーザーに直接、またはグループのユーザーにアタッチされているポリシーのリストを表示します。

1. ユーザーのポリシーのテーブルで、表示するポリシーの名前を選択します。

   [**ユーザー**] ページが表示された状態で、ユーザーにアタッチされているポリシーのサービス概要を選択すると、[**ポリシー**] ページにリダイレクトされます。サービスの概要は、[**ポリシー**] ページでのみ表示できます。

1. [**概要**] を選択します。サービスのポリシー概要のリストで、表示するサービス名を選択します。
**注記**  
選択したポリシーがユーザーに直接アタッチされているインラインポリシーの場合、サービス概要テーブルが表示されます。ポリシーがグループからアタッチされたインラインポリシーの場合、そのグループの JSON ポリシードキュメントに移動します。ポリシーが管理ポリシーの場合、そのポリシーのサービス概要が [**ポリシー**] ページに表示されます。

## ロールにアタッチされたポリシーのサービス概要を表示する
<a name="viewing-service-summaries-for-policies-attached-to-roles"></a>

ロールにアタッチされたポリシーのポリシー概要を表示できます。

**ロールにアタッチされたポリシーのサービス概要を表示するには**

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

1. ナビゲーションペインで、[**ロール**] を選択します。

1. ロールのリストから、表示するポリシーを含むロールの名前を選択します。

1. ロールの [**Summary (概要)**] ページの [**Permissions (アクセス許可)**] タブから、ロールにアタッチされているポリシーのリストを表示します。

1. ユーザーのポリシーのテーブルで、表示するポリシーの名前を選択します。

   [**ロール**] ページが表示された状態で、ユーザーにアタッチされているポリシーのサービス概要を選択すると、[**ポリシー**] ページにリダイレクトされます。サービスの概要は、[**ポリシー**] ページでのみ表示できます。

1. サービスのポリシー概要のリストで、表示するサービス名を選択します。

# アクション概要 (リソースのリスト)
<a name="access_policies_understand-action-summary"></a>

ポリシーは、ポリシー概要、[サービス概要](access_policies_understand-policy-summary.md)、[アクション概要](access_policies_understand-service-summary.md)の 3 つのテーブルにまとめられています。*アクション概要*テーブルには、選択したアクションに対して適用されているリソースとその関連する条件のリストが含まれます。

![\[3 つのテーブルとそれらの関係を示すポリシー概要の図\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policy_summaries-action-sum.png)


アクセス許可が付与されるアクションごとにアクション概要を表示するには、サービス概要のリンクをクリックしてください。アクション概要テーブルには [**Region (リージョン)**] や [**Account (アカウント)**] など、リソースに関する詳細が表示されます。各リソースに適用される条件を表示することもできます。これにより、一部のリソースに適用されて他のリソースには適用されない条件が表示されます。

## アクション概要の要素を理解する
<a name="understanding-elements-action-summary"></a>

以下の例は、Amazon S3 サービス概要 (「`PutObject`」を参照) からの [サービス概要 (アクションのリスト)](access_policies_understand-service-summary.md) (Write) アクションの概要です。このアクションについて、ポリシーでは 1 つのリソースに対して複数の条件を定義しています。



![\[アクション概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-resource-dialog.png)


アクション概要ページには、以下の情報が含まれます。

1. アクションに適用される複数の条件の表示など、ポリシーに関する追加の詳細を表示するには、[**JSON**] を選択します （ユーザーに直接アタッチされているインラインポリシーのアクション概要を表示している場合、手順は異なります。その場合、JSON ポリシードキュメントにアクセスするには、アクション概要ダイアログボックスを閉じて、ポリシー概要に戻る必要があります。）

1. 特定のリソースの概要を表示するには、キーワードを [**検索**] ボックスに入力して、使用可能なリソースのリストを減らします。

1. [**アクション**] リンクの横に、サービス名とアクションが `action name action in service` の形式で表示されます (この場合は **PutObject action in S3**)。このサービスのアクション概要には、ポリシーで定義されているリソースのリストが含まれます。

1. **Resource (リソース)** – この列には、選択したサービスに対してポリシーで定義したリソースが表示されます。この例では、すべてのオブジェクトパスで **PutObject** アクションが許可されていますが、Amazon S3 バケットリソース `developer_bucket` に対してのみ許可されます。サービスから `arn:aws:s3:::developer_bucket/*` に渡される情報に応じて、`BucketName = developer_bucket, ObjectPath = All` などの ARN が表示されるか、IAM などの定義されたリソースタイプが表示される場合があります。

1. **リージョン** – この列には、リソースが定義されているリージョンが表示されます。リソースは、すべてのリージョンまたは 1 つのリージョンに対して定義できます。特定の複数のリージョンに存在することはできません。
   + **すべてのリージョン** – リソースに関連付けられているアクションは、すべてのリージョンに適用されます。この例では、アクションはグローバルサービス Amazon S3 に属します。グローバルサービスに属するアクションは、すべてのリージョンに適用されます。
   + Region text – リソースに関連付けられているアクションは、1 つのリージョンに適用されます。たとえば、ポリシーではリソースに対して `us-east-2` リージョンを指定できます。

1. **アカウント** – この列には、リソースに関連付けられているサービスまたはアクションが特定のアカウントに適用されるかどうかが示されます。リソースはすべてのアカウントか 1 つのアカウントに存在できます。特定の複数のアカウントに存在することはできません。
   + **All accounts (すべてのアカウント)** – リソースに関連付けられているアクションは、すべてのアカウントに適用されます。この例では、アクションはグローバルサービス Amazon S3 に属します。グローバルサービスに属するアクションは、すべてのアカウントに適用されます。
   + **このアカウント** – リソースに関連付けられているアクションは、現在のアカウントにのみ適用されます。
   + Account number – リソースに関連付けられているアクションは、1 つのアカウント (現在ログインしていないアカウント) に適用されます。たとえば、ポリシーでリソースに対して `123456789012` アカウントが指定されている場合、そのアカウント番号がポリシー概要に表示されます。

1. **Request condition (リクエスト条件)** – この列には、リソースに関連付けられているアクションが条件の対象かどうかが示されます。この例には `s3:x-amz-acl = public-read` 条件が含まれています。これらの条件の詳細については、[**JSON**] を選択して JSON ポリシードキュメントを確認してください。

# アクション概要を表示する
<a name="access_policies_view-action-summary"></a>

アクセス許可を付与するポリシー概要に示されている各アクションのアクション概要を表示できます。

## **[ポリシー]** ページからアクションの概要を表示する
<a name="viewing-action-summaries-from-the-policies-page"></a>

管理ポリシーのアクション概要を表示できます。

**管理ポリシーのアクション概要を表示するには**

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

1. ナビゲーションペインで、**[ポリシー]** を選択します。

1. ポリシーの一覧で、表示するポリシーの名前を選択します。

1. ポリシーの [**ポリシー詳細**] ページで [**アクセス許可**] タブを表示して、ポリシー概要を確認します。

1. サービスのポリシー概要のリストで、表示するサービス名を選択します。

1. アクションのサービス概要リストで、表示するアクション名を選択します。

## ユーザーにアタッチされているポリシーのアクション概要を表示する
<a name="viewing-action-summaries-for-policies-attached-to-users"></a>

ユーザーにアタッチされているポリシーのアクション概要を表示できます。

**ユーザーにアタッチされたポリシーのアクション概要を表示するには**

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

1. ナビゲーションペインで **[ユーザー]** を選択します。

1. ユーザーのリストから、ポリシーを表示するユーザーを選択します。

1. ユーザーの [**Summary (概要)**] ページの [**Permissions (アクセス許可)**] タブから、ユーザーに直接、またはグループのユーザーにアタッチされているポリシーのリストを表示します。

1. ユーザーのポリシーのテーブルで、表示するポリシーの名前を選択します。

   [**ユーザー**] ページが表示された状態で、ユーザーにアタッチされているポリシーのサービス概要を選択すると、[**ポリシー**] ページにリダイレクトされます。サービスの概要は、[**ポリシー**] ページでのみ表示できます。

1. サービスのポリシー概要のリストで、表示するサービス名を選択します。
**注記**  
選択したポリシーがユーザーに直接アタッチされているインラインポリシーの場合、サービス概要テーブルが表示されます。ポリシーがグループからアタッチされたインラインポリシーの場合、そのグループの JSON ポリシードキュメントに移動します。ポリシーが管理ポリシーの場合、そのポリシーのサービス概要が [**ポリシー**] ページに表示されます。

1. アクションのサービス概要リストで、表示するアクション名を選択します。

## ロールにアタッチされているポリシーのアクション概要を表示する
<a name="viewing-action-summaries-for-policies-attached-to-roles"></a>

ロールにアタッチされているポリシーのアクション概要を表示できます。

**ロールにアタッチされたポリシーのアクション概要を表示するには**

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

1. ナビゲーションペインで **Roles (ロール)** を選択します。

1. ロールのリストから、表示するポリシーを含むロールの名前を選択します。

1. ロールの [**Summary (概要)**] ページの [**Permissions (アクセス許可)**] タブから、ロールにアタッチされているポリシーのリストを表示します。

1. ユーザーのポリシーのテーブルで、表示するポリシーの名前を選択します。

   [**ロール**] ページが表示された状態で、ユーザーにアタッチされているポリシーのサービス概要を選択すると、[**ポリシー**] ページにリダイレクトされます。サービスの概要は、[**ポリシー**] ページでのみ表示できます。

1. サービスのポリシー概要のリストで、表示するサービス名を選択します。

1. アクションのサービス概要リストで、表示するアクション名を選択します。

# ポリシー概要の例
<a name="access_policies_policy-summary-examples"></a>

以下の例には、JSON ポリシーと共に、関連する[ポリシー概要](access_policies_understand-policy-summary.md)、[サービス概要](access_policies_understand-service-summary.md)、[アクション概要](access_policies_understand-action-summary.md)が 含まれており、ポリシーを通じて付与されるアクセス許可を理解するのに役立ちます。

## ポリシー 1: DenyCustomerBucket
<a name="example1"></a>

このポリシーは、同じサービスに対する許可および拒否を示します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "FullAccess",
            "Effect": "Allow",
            "Action": ["s3:*"],
            "Resource": ["*"]
        },
        {
            "Sid": "DenyCustomerBucket",
            "Action": ["s3:*"],
            "Effect": "Deny",
            "Resource": ["arn:aws:s3:::customer", "arn:aws:s3:::customer/*" ]
        }
    ]
}
```

------

***DenyCustomerBucket** ポリシー概要:*

![\[ポリシー概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-example1-dialog.png)


***DenyCustomerBucket S3 (Explicit deny)** サービス概要:*

![\[サービス概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-action-example1-dialog.png)


***GetObject (Read) **アクション概要:*

![\[アクション概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-resource-example1-dialog.png)


## ポリシー 2: DynamoDbRowCognitoID
<a name="policy_example2"></a>

このポリシーでは、ユーザーの Amazon Cognito ID に基づいて、行レベルで Amazon DynamoDB にアクセスできます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "dynamodb:DeleteItem",
                "dynamodb:GetItem",
                "dynamodb:PutItem",
                "dynamodb:UpdateItem"
            ],
            "Resource": [
                "arn:aws:dynamodb:us-west-1:123456789012:table/myDynamoTable"
            ],
            "Condition": {
                "ForAllValues:StringEquals": {
                    "dynamodb:LeadingKeys": [
                        "${cognito-identity.amazonaws.com:sub}"
                    ]
                }
            }
        }
    ]
}
```

------

***DynamoDbRowCognitoID** ポリシー概要:*

![\[ポリシー概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-example2-dialog.png)


***DynamoDbRowCognitoID DynamoDB (Allow)** サービス概要:*

![\[サービス概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-action-example2-dialog.png)


***GetItem (List)** アクション概要:*

![\[アクション概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-resource-example2-dialog.png)


## ポリシー 3: MultipleResourceCondition
<a name="policy_example3"></a>

このポリシーには、複数のリソースと条件が含まれます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": ["arn:aws:s3:::Apple_bucket/*"],
            "Condition": {"StringEquals": {"s3:x-amz-acl": ["public-read"]}}
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": ["arn:aws:s3:::Orange_bucket/*"],
            "Condition": {"StringEquals": {
                "s3:x-amz-acl": ["custom"],
                "s3:x-amz-grant-full-control": ["1234"]
            }}
        }
    ]
}
```

------

***MultipleResourceCondition** ポリシー概要:*

![\[ポリシー概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-example3-dialog.png)


***MultipleResourceCondition S3 (Allow)** サービス概要:*

![\[サービス概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-action-example3-dialog.png)


***PutObject (Write)** アクション概要:*

![\[アクション概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-resource-example3-dialog.png)


## ポリシー 4: EC2\$1Troubleshoot
<a name="policy_example4"></a>

以下のポリシーでは、ユーザーは実行中の Amazon EC2 インスタンスのスクリーンショットを取得できます。このスクリーンショットは EC2 のトラブルシューティングに役立つ場合があります。このポリシーでは、Amazon S3 開発者バケット内のアイテムに関する情報の表示も許可されます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:GetConsoleScreenshot"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::developer"
            ]
        }
    ]
}
```

------

***EC2\$1Troubleshoot** ポリシー概要:*

![\[ポリシー概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-example4-dialog.png)


***EC2\$1Troubleshoot S3 (Allow)** サービス概要:*

![\[サービス概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-action-example4-dialog.png)


***ListBucket (List)** アクション概要:*

![\[アクション概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-resource-example4-dialog.png)


## ポリシー 5: CodeBuild\$1CodeCommit\$1CodeDeploy
<a name="example6"></a>

このポリシーでは、特定の CodeBuild、CodeCommit、および CodeDeploy リソースへのアクセスを許可します。これらのリソースは各サービスに固有であるため、一致するサービスでのみ表示されます。いずれのサービスとも一致しないリソースを `Action` 要素の含めた場合、そのリソースはすべてのアクション概要に表示されます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Stmt1487980617000",
            "Effect": "Allow",
            "Action": [
                "codebuild:*",
                "codecommit:*",
                "codedeploy:*"
            ],
            "Resource": [
                "arn:aws:codebuild:us-east-2:123456789012:project/my-demo-project",
                "arn:aws:codecommit:us-east-2:123456789012:MyDemoRepo",
                "arn:aws:codedeploy:us-east-2:123456789012:application:WordPress_App",
                "arn:aws:codedeploy:us-east-2:123456789012:instance/AssetTag*"
            ]
        }
    ]
}
```

------

***CodeBuild\$1CodeCommit\$1CodeDeploy** ポリシー概要:*

![\[ポリシー概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-example6-dialog.png)


***CodeBuild\$1CodeCommit\$1CodeDeploy CodeBuild (Allow)** サービス概要:*

![\[サービス概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-action-example6-dialog.png)


***CodeBuild\$1CodeCommit\$1CodeDeploy StartBuild (Write)** アクション概要:*

![\[アクション概要のダイアログイメージ\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/policies-summary-resource-example6-dialog.png)


# 他の IAM リソースにアクセスするのに必要なアクセス許可
<a name="access_permissions-required"></a>

* リソース* はサービス内のオブジェクトです。IAM リソースには、グループ、ユーザー、ロール、およびポリシーが含まれます｡ AWS アカウントのルートユーザー 認証情報を使用してサインインしている場合は、IAM 認証情報または IAM リソースの管理に制限はありません。ただし、IAM ユーザーには、認証情報または IAM リソースを管理する権限が明示的に与えられている必要があります。これは、ユーザーに ID ベースのポリシーをアタッチすることで実行できます。

**注記**  
AWS ドキュメント全体で、特定のカテゴリに言及せずに IAM ポリシーを参照する場合は、それはアイデンティティベースのカスタマー管理ポリシーを意味します。ポリシーカテゴリの詳細については、「[AWS Identity and Access Management でのポリシーとアクセス許可](access_policies.md)」を参照してください。

## IAM ID を管理するためのアクセス許可
<a name="access_permissions-required-identities"></a>

通常、IAM グループ、ユーザー、ロール､および認証情報を管理するために必要な権限は、タスクの API アクションに対応します。たとえば、IAM ユーザーを作成するには、対応する API コマンド: [https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateUser.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateUser.html)を持つ `CreateUser` アクセス許可を持っている必要があります。IAM ユーザーに他の IAM ユーザーを作成する権限を与えるには、そのユーザーに次のような IAM ポリシーをアタッチします。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": "iam:CreateUser",
    "Resource": "*"
  }
}
```

------

ポリシーの `Resource` 要素の値は、アクション、およびそのアクションの影響を受ける可能性のあるリソースによって決まります。前述の例のポリシーでは、ユーザーが任意のユーザーを作成することができます (`*` はすべての文字列に一致するワイルドカードです)。対照的に、ユーザーに自分のアクセスキー (API アクション [https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html) および [https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html)) のみの変更を許可するポリシーには、通常 `Resource` 要素が含まれます。この場合、ARN には次の例のように現在のユーザーの名前を解決する変数が含まれます (`${aws:username}`)。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ListUsersForConsole",
            "Effect": "Allow",
            "Action": "iam:ListUsers",
            "Resource": "arn:aws:iam::*:*"
        },
        {
            "Sid": "ViewAndUpdateAccessKeys",
            "Effect": "Allow",
            "Action": [
                "iam:UpdateAccessKey",
                "iam:CreateAccessKey",
                "iam:ListAccessKeys"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        }
    ]
}
```

------

前の例では、`${aws:username}` は現在のユーザーのユーザー名に解決される変数です。ポリシー変数の詳細については、「[IAM ポリシーの要素: 変数とタグ](reference_policies_variables.md)」を参照してください。

多くの場合、アクション名にワイルドカード文字 (`*`) を使用すると、特定のタスクに関連するすべてのアクションの権限を容易に付与できます。たとえば、ユーザーが任意の IAM アクションを実行することを許可するには、アクションに対して `iam:*` を使用できます。ユーザーがアクセスキーのみに関連する任意のアクションを実行することを許可するには、ポリシーステートメントの `iam:*AccessKey*` 要素で `Action` を使用できます。これにより、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteAccessKey.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteAccessKey.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetAccessKeyLastUsed.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetAccessKeyLastUsed.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAccessKeys.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAccessKeys.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html) の各アクションを実行するアクセス許可がユーザーに付与されます。 (将来、名前に「AccessKey」を含むアクションが IAM に追加された場合、`iam:*AccessKey*` 要素の `Action` を使用していれば、その新しいアクションに対する権限もユーザーに与えられます)。以下の例では、自分のアクセスキーに関連するすべてのアクションの実行をユーザーに許可するポリシーを示しています (`account-id` は AWS アカウント ID に置き換えてください)。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": "iam:*AccessKey*",
        "Resource": "arn:aws:iam::111122223333:user/${aws:username}"
    }
}
```

------

一部のタスクには複数のアクションが必要です。たとえば、グループの削除では、まずグループからユーザーを削除し、グループのポリシーをデタッチまたは削除してから、グループを実際に削除する必要があります。ユーザーがグループを削除できるようにする場合は、関連するすべてのアクションの実行権限をそのユーザーに与える必要があります。

## AWS マネジメントコンソールで作業するための許可
<a name="Credentials-Permissions-overview-console"></a>

前の例では、[AWS CLI](https://aws.amazon.com/cli/) または [AWS SDK](https://aws.amazon.com/tools/) の使用によるアクションの実行をユーザーに許可するポリシーの例を示しています。

ユーザーがコンソールを操作すると、コンソールは、グループ､ユーザー､ロール､ポリシーのリストの取得、およびグループ､ユーザー､またはロールに関連付けられたポリシーの取得を行うためのリクエストを IAM に対して発行します。また、コンソールは AWS アカウント 情報とプリンシパルに関する情報を取得するリクエストを発行します。プリンシパルは、コンソールでリクエストを行うユーザーです。

一般に、アクションを実行するには、ポリシーに一致するアクションのみを含める必要があります。ユーザーを作成するには、`CreateUser` アクションを呼び出すアクセス許可が必要です。多くの場合、コンソールを使用してアクションを実行するときは、コンソール内のリソースを表示、一覧表示、取得、またはその他の方法で表示するアクセス許可が必要です。これは、指定されたアクションを実行するためにコンソールをナビゲートできるようにするために必要です。たとえば、ジョージというユーザーがコンソールを使用して自分のアクセスキーを変更する場合、ジョージはまず IAM コンソールに移動し、[**Users**] を選択します。このアクションにより、コンソールで [https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html) リクエストが発行されます。ジョージに `iam:ListUsers` アクションの権限がない場合は、コンソールがユーザーのリストの取得を試みたときに、コンソールはアクセスを拒否されます。結果として、Jorge は自分の名前やアクセスキーにアクセスできません。Jorge に [https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html) アクションと [https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html) アクションに対するアクセス許可があっても関係ありません。

グループ、ユーザー、ロール､ポリシー､認証情報を管理するために AWS マネジメントコンソール で作業する権限をユーザーに与える場合は、ユーザーがコンソールで実行するアクションに対する権限を含める必要があります。これらのアクセス権限をユーザーに付与するために使用できるポリシーの例については、「[IAM リソースの管理に関するポリシーの例](id_credentials_delegate-permissions_examples.md)」を参照してください。

## AWS アカウント全体にわたるアクセス権限を付与する
<a name="UserPermissionsAcrossAccounts"></a>

お客様は自らのアカウント内の IAM ユーザーに対し、お客様のリソースへのアクセス権限を直接付与できます。他のアカウントのユーザーがお客様のリソースへのアクセスを必要としている場合は、IAM ロールを作成します。このロールは、特定の権限を含むエンティティであり、特定のユーザーに関連付けられることはありません。これにより他のアカウントのユーザーはロールを使用して、ロールに割り当てられた権限に応じてリソースにアクセスできます。詳細については、「[所有している別の AWS アカウント内の IAM ユーザーに対するアクセス](id_roles_common-scenarios_aws-accounts.md)」を参照してください。

**注記**  
一部のサービスは、[アイデンティティベースおよびリソースベースのポリシー](access_policies_identity-vs-resource.md) で説明されているリソースベースのポリシーをサポートしています (Amazon S3、Amazon SNS、Amazon SQS など)。これらのサービスでは、ロールを使用する代わりに、共有するリソース（バケット、トピック、またはキュー）にポリシーをアタッチします。リソースベースのポリシーでは、AWS アカウントで、リソースへのアクセス許可を持ちます。

## あるサービスから他のサービスへのアクセス権限
<a name="UserPermissionsAcrossAWS_ARCHIVE"></a>

多くの AWS サービスは、他の AWS サービスにアクセスします。たとえば、Amazon EMR、Elastic Load Balancing、Amazon EC2 Auto Scaling などのいくつかの AWS サービスは、Amazon EC2 インスタンスを管理します。その他の AWS サービスは、Amazon S3 バケット、Amazon SNS トピック、Amazon SQS キューなどを利用します。

こうした場合におけるアクセス権限の管理方法は、サービスによって異なります。ここでは、異なるサービスでアクセス権限がどのように扱われるかについての例をいくつか紹介します。
+ Amazon EC2 Auto Scaling では、ユーザーに Auto Scaling を使用する許可がある必要がありますが、Amazon EC2 インスタンスを管理する権限を明示的に付与されている必要はありません。
+ AWS Data Pipeline では、IAM ロールによってパイプラインで何ができるかが決定され、ユーザーはロールを引き受けるためのアクセス許可が必要です (詳細については、[&guide-edp-dev;](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-iam-roles.html) の「*AWS Data PipelineIAM を使用してパイプラインにアクセス権限を付与する*」を参照してください)。

アクセス権限を適切に設定して AWS サービスが意図するタスクを実行できるようにする方法の詳細については、呼び出すサービスのドキュメントを参照してください。サービスのロールを作成する方法については、「[AWS サービスにアクセス許可を委任するロールを作成する](id_roles_create_for-service.md)」を参照してください。

**ユーザーの代理操作を実行する IAM ロールでサービスを設定する**  
ユーザーの代理操作を行うように AWS サービスを設定する場合は、通常、サービスに許可する操作を定義する IAM ロールの ARN を指定します。AWS によって、サービスにロールを渡すアクセス許可があるかがチェックされます。詳細については、「[AWS サービスにロールを渡すアクセス許可をユーザーに付与する](id_roles_use_passrole.md)」を参照してください。

## 必須アクション
<a name="access_permissions-required-dependent-actions"></a>

アクションは、リソースの表示、作成、編集、削除など、リソースに対して実行できる処理です。アクションは各 AWS サービスによって定義されます。

ユーザーがアクションを実行できるようにするには、呼び出し ID または影響を受けるリソースに適用されるポリシーに必要なアクションを含める必要があります。一般的に、アクションの実行に必要なアクセス許可を提供するには、そのアクションをポリシーに含める必要があります。たとえば、ユーザーを作成するには、CreateUser アクションをポリシーに追加する必要があります。

場合によっては、ポリシーに追加の関連アクションを含めなければならない場合があります。たとえば、AWS Directory Service にディレクトリを作成するアクセス許可をユーザーに付与するには、`ds:CreateDirectory` オペレーションを使用して、以下のアクションをポリシーに含める必要があります。
+ `ds:CreateDirectory`
+ `ec2:DescribeSubnets`
+ `ec2:DescribeVpcs`
+ `ec2:CreateSecurityGroup`
+ `ec2:CreateNetworkInterface`
+ `ec2:DescribeNetworkInterfaces`
+ `ec2:AuthorizeSecurityGroupIngress`
+ `ec2:AuthorizeSecurityGroupEgress`

ビジュアルエディタを使用してポリシーを作成または編集すると、ポリシーに必要なすべてのアクションを選択するのに役立つ警告とプロンプトが表示されます。

AWS Directory Service にディレクトリを作成するために必要なアクセス許可の詳細については、「[例 2: ディレクトリを作成することをユーザーに許可する](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/IAM_Auth_Access_IdentityBased.html#IAMPolicyExamples_DS_create_directory)」を参照してください。

# IAM リソースの管理に関するポリシーの例
<a name="id_credentials_delegate-permissions_examples"></a>

以下に示すのは、IAM ユーザー、グループ、および認証情報の管理に関連するタスクをユーザーが実行可能にする IAM ポリシーの例です。これには、自分のパスワード、アクセスキー、多要素認証 (MFA) デバイスの管理をユーザーに許可するポリシーも含まれます。

Amazon S3、Amazon EC2、DynamoDB など、他の AWS サービスの使用によるタスクの実行をユーザーに許可するポリシーの例については、「[IAM アイデンティティベースのポリシーの例](access_policies_examples.md)」を参照してください。

**Topics**
+ [ユーザーがレポート作成の目的でアカウントのグループ、ユーザー、ポリシーなどを一覧表示することを許可する](#iampolicy-example-userlistall)
+ [ユーザーがグループのメンバーシップを管理することを許可する](#iampolicy-example-usermanagegroups)
+ [ユーザーが IAM ユーザーを管理することを許可する](#creds-policies-users)
+ [ユーザーがアカウントパスワードポリシーを設定することを許可する](#creds-policies-set-password-policy)
+ [ユーザーが IAM 認証情報レポートを生成、取得することを許可する](#iampolicy-generate-credential-report)
+ [すべての IAM アクション (管理アクセス) を許可する](#creds-policies-all-iam)

## ユーザーがレポート作成の目的でアカウントのグループ、ユーザー、ポリシーなどを一覧表示することを許可する
<a name="iampolicy-example-userlistall"></a>

次のポリシーでは、ユーザーは文字列 `Get` または `List` で始まる任意の IAM アクションを呼び出し、レポートを生成することができます。ポリシーの例を表示するには、「[IAM: IAM コンソールへの読み取り専用アクセスを許可する](reference_policies_examples_iam_read-only-console.md)」を参照してください。

## ユーザーがグループのメンバーシップを管理することを許可する
<a name="iampolicy-example-usermanagegroups"></a>

以下のポリシーでは、ユーザーは *MarketingGroup* というグループのメンバーシップを更新することができます。ポリシーの例を表示するには、「[IAM:: グループのメンバーシップをプログラムによりコンソールで管理することを許可する](reference_policies_examples_iam_manage-group-membership.md)」を参照してください。

## ユーザーが IAM ユーザーを管理することを許可する
<a name="creds-policies-users"></a>

次のポリシーでは、IAM ユーザーの管理に関連するすべてのタスクの実行がユーザーに許可されますが、グループやポリシーの作成など、他のエンティティに対するアクションの実行は許可されません。許可されるアクションは以下のとおりです。
+ ユーザーの作成 ([https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateUser.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateUser.html) アクション)。
+ ユーザーの削除。このタスクでは、アクション [https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteSigningCertificate.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteSigningCertificate.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteLoginProfile.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteLoginProfile.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_RemoveUserFromGroup.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_RemoveUserFromGroup.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUser.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUser.html) をすべて実行するアクセス許可が必要です。
+ アカウントおよびグループのユーザーのリストの取得 ([https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUser.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUser.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListGroupsForUser.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListGroupsForUser.html) アクション)。
+ ユーザーのポリシーのリスト取得と削除 ([https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUserPolicies.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUserPolicies.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedUserPolicies.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedUserPolicies.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachUserPolicy.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachUserPolicy.html)、[https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUserPolicy.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUserPolicy.html) アクション) 
+ ユーザーのパスの名前変更または変更 ([https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateUser.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateUser.html) アクション)。`Resource` 要素には、ソースパスとターゲットパスの両方に対応する ARN を含める必要があります。パスの詳細については、「[フレンドリ名とパス](reference_identifiers.md#identifiers-friendly-names)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowUsersToPerformUserActions",
            "Effect": "Allow",
            "Action": [
                "iam:ListPolicies",
                "iam:GetPolicy",
                "iam:UpdateUser",
                "iam:AttachUserPolicy",
                "iam:ListEntitiesForPolicy",
                "iam:DeleteUserPolicy",
                "iam:DeleteUser",
                "iam:ListUserPolicies",
                "iam:CreateUser",
                "iam:RemoveUserFromGroup",
                "iam:AddUserToGroup",
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:PutUserPolicy",
                "iam:ListAttachedUserPolicies",
                "iam:ListUsers",
                "iam:GetUser",
                "iam:DetachUserPolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowUsersToSeeStatsOnIAMConsoleDashboard",
            "Effect": "Allow",
            "Action": [
                "iam:GetAccount*",
                "iam:ListAccount*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

上のポリシーに含まれているアクセス許可のうちいくつかは、AWS マネジメントコンソールでタスクを実行することを許可します。[AWS CLI](https://aws.amazon.com/cli/)、[AWS SDK](https://aws.amazon.com/tools/)、または IAM HTTP クエリ API のみからユーザー関連のタスクを実行するユーザーには、一部のアクセス許可が不要になる可能性があります。たとえば、あるユーザーからデタッチするポリシーの ARN が既にわかっているユーザーに、`iam:ListAttachedUserPolicies` 権限は不要です。ユーザーが必要とする正確な権限リストは、ユーザーが他のユーザーを管理するときに実行する必要があるタスクによって決まります。

ポリシーの以下の権限では、ユーザーは AWS マネジメントコンソール を介してタスクにアクセスすることができます。
+ `iam:GetAccount*`
+ `iam:ListAccount*`

## ユーザーがアカウントパスワードポリシーを設定することを許可する
<a name="creds-policies-set-password-policy"></a>

AWS アカウント の[パスワードポリシー](id_credentials_passwords_account-policy.md)を取得および更新するアクセス許可を一部のユーザーに付与することもできます。ポリシーの例を表示するには、「[IAM: アカウントのパスワード要件の設定をプログラムによりコンソールで許可する](reference_policies_examples_iam_set-account-pass-policy.md)」を参照してください。

## ユーザーが IAM 認証情報レポートを生成、取得することを許可する
<a name="iampolicy-generate-credential-report"></a>

AWS アカウント のすべてのユーザーを一覧表示するレポートを生成してダウンロードするアクセス許可をユーザーに付与できます。このレポートには、パスワード、アクセスキー、MFA デバイス、署名証明書など、さまざまなユーザー認証情報のステータスも一覧表示されます。 認証情報レポートの詳細については、「[AWS アカウント の認証情報レポートを生成します。](id_credentials_getting-report.md)」を参照してください ポリシーの例を表示するには、「[IAM: 認証情報レポートを生成して取得する](reference_policies_examples_iam-credential-report.md)」を参照してください。

## すべての IAM アクション (管理アクセス) を許可する
<a name="creds-policies-all-iam"></a>

パスワード、アクセスキー、ユーザー証明書、MFA デバイス、ユーザー証明書の管理など、IAM 内のすべてのアクションを実行するための管理権限を一部のユーザーに与える場合があります。以下のポリシーの例は、次の権限を付与します。

**警告**  
ユーザーに IAM に対するフルアクセスを許可する場合、ユーザーが自分または他者に付与できるアクセス許可に制限がなくなります。ユーザーは新しい IAM エンティティ (ユーザーまたはロール) を作成することや、それらのエンティティに AWS アカウント のすべてのリソースに対するフルアクセスを許可することができます。ユーザーに IAM に対するフルアクセスを許可した場合、事実上、AWS アカウント のすべてのリソースに対するフルアクセスを許可したことになります。これには、すべてのリソースを削除するためのアクセス権限も含まれます。これらのアクセス権限は信頼されている管理者にのみ付与してください。また、これらの管理者には多要素認証（MFA）を適用してください。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": "iam:*",
    "Resource": "*"
  }
}
```

------

# IAM の一時委任
<a name="access_policies-temporary-delegation"></a>

## 概要:
<a name="temporary-delegation-overview"></a>

一時委任は、Amazon および AWS パートナーの製品のオンボーディングに要する時間を短縮し管理を簡素化する機能で、AWS アカウントに組み込んで使用します。ユーザーは、複数の AWS サービスを手動で設定する代わりに、製品のプロバイダーに一時的なアクセス許可を制限付きで付与することで、プロバイダーが自動化されたデプロイワークフローを通じてセットアップ作業を数分で完了できるようにします。ユーザーは承認要件とアクセス許可の境界を使用して引き続き許可を管理しますが、プロバイダーのアクセス許可は、承認された期間が過ぎると自動的に無効化するため、手動でのクリーンアップは必要ありません。操作を継続して行えるよう製品に永続的なアクセス許可が必要な場合は、プロバイダーは一時委任を使用してアクセス許可の境界を持つ IAM ロールを作成し、このロールのアクセス許可の上限を定義します。製品プロバイダーのすべてのアクティビティは、コンプライアンスおよびセキュリティ上のモニタリングのため AWS CloudTrail を使って追跡されます。

**注記**  
一時委任のリクエストを作成できるのは、この機能のオンボーディングプロセスを完了している Amazon 製品パートナーおよび認定 AWS パートナーのみです。顧客はリクエストの確認と承認を行いますが、リクエストを自ら作成することはできません。IAM 一時委任をお使いの製品に統合したいとお考えの AWS パートナーの方は、オンボーディングと統合の手順に関する「[Partner Integration Guide](access_policies-temporary-delegation-partner-guide.md)」を参照してください。

## 一時委任の仕組み
<a name="temporary-delegation-how-it-works"></a>

一時委任の機能を使用すると、Amazon および AWS のパートナーは、お使いのアカウントへの、制限付きの一時的なアクセス許可をリクエストできます。リクエストが承認されると、パートナーは、委任されたアクセス許可を使用してユーザーに代わってさまざまなアクションを実行できます。委任のリクエストでは、製品プロバイダーが AWS アカウントにリソースをデプロイするかアカウントでリソースを設定する際に必要な、AWS サービスおよびアクションへの特定のアクセス許可を定義します。これらのアクセス許可は期間限定で利用でき、リクエストで指定された期間が過ぎると自動的に無効になります。

**注記**  
委任されたアクセス許可の有効期間は最大 12 時間です。ただし、ルートユーザーが承認できるのは有効期間が 4 時間以内の委任リクエストのみです。リクエストで 4 時間以上の時間が指定されている場合、ルートユーザー以外の ID を使用してリクエストを承認する必要があります。詳細については、「[Permission simulation beta capability](temporary-delegation-initiate-request.md#temporary-delegation-permission-simulation)」を参照してください。

Amazon S3 バケットからの読み取りなど継続して行われるタスクの場合は、委任リクエストに IAM ロールの作成を含めることができ、一時的な許可の有効期間が過ぎた後もリソースとアクションに引き続きアクセスできます。製品のプロバイダーは、一時委任と同時に作成した IAM ロールには、アクセス許可の境界をアタッチする必要があります。アクセス許可の境界は、IAM ロールのアクセス許可の上限を規定しますが独自にアクセス許可を付与することはできません。アクセス許可の境界は、承認前のリクエストの段階で確認することが可能です。詳細については「[アクセス許可の境界](access_policies_boundaries.md)」を参照してください。

このプロセスは次のように機能します。

1. Amazon または AWS パートナーの製品にログインし、お使いの AWS 環境に組み込みます。

1. 製品のプロバイダーがユーザーに代わって委任リクエストを実行すると、ユーザーは AWS マネジメントコンソールにリダイレクトされます。

1. ユーザーはリクエストされたアクセス許可を確認し、このリクエストを承認または拒否するか、もしくは管理者に転送するか、いずれかを判断します。

1. ユーザーまたはユーザーの管理者がリクエストを承認すると、製品プロバイダーは承認者の一時的な認証情報を取得して必要な作業を実行できます。

1. 製品プロバイダーのアクセス許可は、指定した期間が過ぎると自動的に無効になります。ただし、一時委任のリクエスト時に作成された IAM ロールはこの期間を過ぎた後も有効であるため、製品プロバイダーは引き続きリソースやアクションにアクセスして管理タスクを継続することができます。

![\[alt text not found\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/delegation-flow.png)


**注記**  
製品プロバイダーにアクセス許可を委任できるのは、ユーザーが、一時委任リクエストに含まれるサービスとアクションにアクセスできる場合のみです。リクエストされたサービスとアクションにユーザーがアクセスできない場合は、リクエストを承認しても製品プロバイダーにはアクセス許可が届きません。

アクセス許可のチェックに、成功する可能性が高い、と示された場合は、一時委任リクエストを承認してワークフローを先に進めることができます。

アクセス許可のチェックに、必要なアクセス許可がない可能性がある、と示された場合は、自分の管理者にリクエストを転送して承認を依頼します。管理者にこのリクエストを通知するときは、E メールやチケットなどご自身にとって望ましい方法を使用することが推奨されます。

管理者がリクエストを承認した場合、次の手順は製品プロバイダー側の設定に応じて変わってきます。
+ 製品プロバイダーが即時アクセスをリクエストした場合、プロバイダーには一時的なアクセス許可が自動的に届いてアクセス期間が始まります。
+ 製品プロバイダーが、所有者 (最初の受信者) にリリースをリクエストした場合は、ユーザーはアクセス許可の有効期間が始まる前にリクエストに戻って一時的なアカウントアクセスを明示的に共有する必要があります。製品プロバイダーは通常、このオプションを、必要なタスクを実行するために追加の入力 (リソースの選択や設定の詳細など) を必要とする場合に使用します。

# 一時委任をリクエストする
<a name="temporary-delegation-initiate-request"></a>

一時委任のリクエストが行えるのは、サポートされている Amazon または AWS パートナーの製品からのみです。一時委任をサポートしているワークフローの最中に、ユーザーは、必要な AWS リソースをユーザーのアカウントで設定するための一時的な制限付きアクセス許可を製品プロバイダーに付与するよう求められます。このように自動化されたアプローチをとることで、ユーザーが手動でリソースを設定する手間を省きより簡素化されたエクスペリエンスを実現しています。

委任リクエストの詳細、例えば製品プロバイダーが必要とする特定の IAM ロール、ポリシー、AWS サービスなどは、アクセスを許可する前に確認できます。ユーザーは、必要なアクセス許可を持っている場合はリクエストを自分で承認することもできますし、アカウント管理者にリクエストを転送して承認をもらうこともできます。製品プロバイダーのアクセス許可には時間制限があり、必要に応じてモニタリングしたり取り消したりすることができます。

**一時委任をリクエストするには**

1. AWS アカウントとの統合を必要としている、Amazon または AWS パートナーのサポートされている製品のコンソールを開きます。

1. *[IAM 一時委任を使用してデプロイ]* を選択します。この選択肢の表記はサポートされている製品によって異なる場合があります。詳細は、製品プロバイダーのドキュメントを参照してください。
**注記**  
AWS マネジメントコンソールにまだサインインしていなかった場合、AWS サインインページに新しいウィンドウが開きます。AWS アカウントにサインインしてから、製品コンソールから一時委任のリクエストを行うとよいでしょう。ご自身のユーザータイプとアクセスしようとしている AWS リソースに基づいてサインインする方法の詳細については、「[AWS サインインユーザーガイド](docs---aws.amazon.com.rproxy.goskope.comsignin/latest/userguide/what-is-sign-in.html)」を参照してください。

1. リクエストの詳細を読み、製品プロバイダーの製品名と AWS アカウントを確認します。また、製品プロバイダーがユーザーに代わってアクションを実行する際に使用する AWS ID も確認します。

1. *[アクセスの詳細]* で、このリクエストを承認することにより一時的に委任されるアクセス許可の内容を確認します。
   + *[アクセス許可の概要]* には AI が生成した概要が記されており、アクセス可能な AWS サービスのカテゴリと、各サービスで実行できるアクションのタイプを理解するのに役立ちます。
   + *[JSON を表示]* を選択すると、製品プロバイダーが AWS アカウントにデプロイする必要のある特定のアクセス許可をアクセスの範囲やリソースの制限も含めて確認できます。
   + 製品プロバイダーが一時委任リクエストの一環として IAM ロールを作成する場合は、アクセス許可の境界をロールにアタッチする必要があります。この IAM ロールには、リクエストされたアクセス期間が過ぎた後もリソースとアクションにアクセスできる権限が含まれています。アクセス許可の境界を確認するには *[詳細を表示]* を選択します。アクセス許可の境界は、ロールに付与できるアクセス許可の上限を定義します。製品プロバイダーは、ロールの作成時に、実際のアクセス許可を定義する追加のポリシーをロールに適用します。これらのポリシーは、製品プロバイダーの定義方法に応じてアクセス許可の境界よりも焦点が狭く見えたり広く見えたりする場合があります。しかし、アクセス許可の境界を定義すれば、ロールの実際のアクセス許可は、ロールにアタッチされたポリシーに関係なく、リクエストの承認中に表示されるアクセス許可を超えることはありません。アクセス許可の境界の詳細については、「[アクセス許可の境界](access_policies_boundaries.md)」を参照してください

1. アクセス許可のシミュレーション結果を確認します。アクセス許可のシミュレーション機能では、自分の ID のアクセス許可が、リクエストに含まれるアクセス許可に対して自動評価されます。この分析に基づき、現在使用している ID でリクエストを承認するか、リクエストを管理者に転送するか、いずれかが推奨事項として表示されます。詳細については、「[アクセス許可のシミュレーション機能 – ベータ版](#temporary-delegation-permission-simulation)」を参照してください。

1. ダイアログで、次の手順を選択します。
   + 自分の ID に、製品プロバイダーに自分でオンボーディングを実行することを許可するための十分な権限がある場合は、*[アクセスを許可]* を選択します。これを選ぶと、アクセスを許可するとすぐに、製品プロバイダーのアクセス期間が開始します。
   + 自分の ID に、製品プロバイダーに自分でオンボーディングを実行することを許可するための十分な権限がない場合は、*[承認をリクエスト]* を選択します。次に、*[承認リクエストを作成]* を選択します。これを選ぶと、一時委任をリクエストするリンクが生成されてアカウント管理者に共有できます。管理者は AWS マネジメントコンソールにアクセスするか [一時委任リクエストを確認] のアクセスリンクを使用してリクエストを承認し、リクエストしたユーザーに一時的なアクセス許可を共有します。

**注記**  
製品プロバイダーにアクセスを許可するには、委任リクエスト (`AcceptDelegationRequest`) の受け付けと、交換トークン (`SendDelegatedToken`) の発行、という 2 つのアクションが必要になります。AWS マネジメントコンソールは、リクエストが承認されると両方のアクションを自動的に実行します。ユーザーが AWS CLI または API を使用している場合は、両方のアクションをユーザーが個別に実行する必要があります。

## アクセス許可のシミュレーション機能 – ベータ版
<a name="temporary-delegation-permission-simulation"></a>

一時委任のリクエストを受け取ったら、ユーザーは自分で承認するか、アカウント管理者に転送して承認を受けるかのいずれかを実行できます。製品プロバイダーにアクセス許可を委任できるのは、ユーザーが、一時委任リクエストに含まれるサービスとアクションにアクセスできる場合のみです。ユーザーがリクエストされたサービスとアクションにアクセスできない場合、製品プロバイダーは、たとえリクエストに含まれていたとしてもそれらのアクセス許可を付与されません。

例えば、一時委任のリクエストに Amazon S3 バケットの作成、Amazon EC2 でのインスタンスの起動と停止、IAM ロールの割り当ての許可が含まれていたとします。このリクエストを承認する ID は、Amazon EC2 でのインスタンスの起動と停止、および IAM ロールの割り当ては行えますが、Amazon S3 バケットを作成する権限は持っていません。この ID がリクエストを承認した場合、製品プロバイダーは、これらのアクセス許可が一時委任のリクエストに含まれていたとしても、Amazon S3 バケットを作成することはできません。

委任できるアクセス許可はユーザーが既に所有している許可のみであるため、リクエストされたアクセス許可を自分が持っているかどうかを承認前に確認することが非常に重要です。アクセス許可のシミュレーション機能 (ベータ版) を使うと、自分が現在持っているアクセス許可とリクエストに含まれる許可とを比較して確認できます。そこで、現在使用している ID でリクエストを承認できるか、それとも管理者に転送する必要があるかが示されます。この分析で、ユーザーに必要なアクセス許可があることを確認できない場合、リクエストは承認のため管理者に転送されます。この評価はシミュレーションされたアクセス許可の分析に基づくもので、実際の AWS 環境とは異なる可能性もあるため、リクエストされたアクセス許可を慎重に確認してから先に進みます。

## 次のステップ
<a name="temporary-delegation-next-steps"></a>

一時委任のリクエストを行ったら、リクエストのプロセス全体を管理およびモニタリングできます。一時的なアクセス許可の追跡、承認、管理には、次の手順が役立ちます。
+ [一時委任リクエストの確認](temporary-delegation-review-requests.md) – アクセス許可のリクエストのステータスを監視したり、リクエストの詳細情報を確認して一時委任リクエストを承認または拒否します。
+ [一時委任アクセス許可の取り消し](temporary-delegation-revoke-access.md) – 有効な一時委任セッションを、設定された有効期限前に終了する際に使用します。

# 一時委任リクエストの確認
<a name="temporary-delegation-review-requests"></a>

一時委任リクエストが発行されると、ユーザーは IAM コンソールからリクエストをモニタリング、承認、拒否することができます。一時委任リクエストのページには、承認待ち、完了、拒否のものを含め、すべてのリクエストが一元的に表示されます。ユーザーは、管理者としてこれらのリクエストを確認し、組織のセキュリティポリシー、ビジネス要件、コンプライアンス標準に基づいて、製品プロバイダーに AWS リソースへのアクセスを許可したり拒否したりできます。この画面は、製品プロバイダーのアクセス許可のライフサイクルを追跡したり、一時的なアクセス許可を継続的に監視したりするのに役立ちます。

**注記**  
一時委任リクエストを承認する人は、iam:AcceptDelegationRequest のアクセス許可を持っている必要があります。

**一時委任リクエストを承認するには**

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

1. 左側のナビゲーションペインで、*[一時委任リクエスト]* を選択します。

1. メインページに一時委任リクエストの一覧が以下の情報と共に表示されます。
   + *リクエスト ID:* – リクエストの一意の ID
   + *ステータス* – 最新のステータス (承認待ち、承認済み、拒否、共有済み、期限切れ)
   + *リクエストしたユーザー* – リクエストに関連付けられた製品プロバイダー
   + *によって開始されました* – 製品プロバイダーのリクエストを開始したアカウントの IAM プリンシパル
   + *リクエストが作成されました* – リクエストが送信された日時
   + *リクエストの有効期限* – リクエストの有効期限が切れた/切れる日時

1. (オプション) フィルターを使用してリクエストをステータス別に表示します。
   + *すべてのリクエスト* – ステータスに関係なくすべてのリクエストを表示します。
   + *承認待ち* – 管理者の承認を待っているリクエストが表示されます
   + *承認済み* – 承認済みのリクエストが表示されます
   + *共有済み* – アクセス許可が共有されたリクエストが表示されます
   + *拒否* – 拒否されたリクエストが拒否の理由とともに表示されます

1. 特定のリクエストに関する詳細情報を表示したり、承認待ちのリクエストを確認したりするときは、リクエスト ID を選択します。

1. リクエストの詳細を確認します。
   + 製品プロバイダーの情報
   + リクエストが行われた理由および根拠
   + リクエストされた期間
   + リクエストされた AWS のアクセス許可

1. 管理者として承認待ちのリクエストを確認する場合は、次のうちいずれか 1 つを選択します。
   + リクエストを承認するときは、*[承認]* を選択します。承認ダイアログで、アクセス許可のシミュレーションの結果を確認できます。詳細については、「[アクセス許可のシミュレーション機能 – ベータ版](temporary-delegation-initiate-request.md#temporary-delegation-permission-simulation)」を参照してください。アクセス期間と自分の AWS ID を確認したら、*[承認]* を選択してアクセスを許可します。製品プロバイダーが即時アクセスをリクエストした場合、プロバイダーには一時的なアクセス許可が自動的に届いてアクセス期間が始まります。それ以外の場合は、リクエストしたユーザーに、アクセス許可が製品プロバイダーにリリースされたことを知らせる通知が届きます。
   + リクエストを拒否するときは *[拒否]* を選択します。
     + 拒否のダイアログに、リクエストしたユーザーが拒否された理由を理解できるよう、明確に理由を入力します。
     + *[拒否]* を選択し、アクセスを拒否します。

1. リクエストの一覧は自動的に更新され、最新のステータス情報が表示されます。ページを手動で更新して、ステータスの最新情報を確認することもできます。

# 一時委任アクセスの取り消し
<a name="temporary-delegation-revoke-access"></a>

製品プロバイダーのアクセスセッションは、承認された期間を過ぎると自動的に期限が切れるように設計されていますが、場合によってはアクセスを直ちに終了しなければならないことがあります。セキュリティ上の懸念が生じたとき、製品プロバイダーの作業が早期に完了したとき、ビジネス要件が変化したときに、製品プロバイダーのアクティブなアクセス許可を取り消すと、緊急制御のメカニズムが発動します。アクセス許可は、セキュリティおよびオペレーション上の制御を維持するため、リクエストしたユーザーと管理者の双方が取り消せるようになっています。

**一時委任アクセスを取り消すには**

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

1. 左側のナビゲーションペインで、*[一時委任リクエスト]* を選択します。

1. 取り消すアクセスセッションのリクエスト ID を特定します。

1. *[アクション]* を選択し、*[アクセスを取り消す]* を選択します。

1. ダイアログで、*[アクセスを取り消す]* を選択し、アクセスセッションを直ちに終了することを確定します。

アクセスを取り消すと、製品プロバイダーはユーザーの AWS リソースにアクセスできなくなります。取り消しは、監査上の目的で AWS CloudTrail に記録されます。

**重要**  
アクセスを取り消すと、製品プロバイダーのアクセスセッションは直ちに終了します。そのアクセスを使用している進行中の作業またはプロセスは、中断されます。取り消しによって重要なオペレーションが中断されることのないようにしてください。

**注記**  
ルートユーザーを使用して承認されたリクエストは、アクセスを取り消すことができません。AWS では、委任リクエストの承認にルートユーザーを使用しないことを推奨しています。代わりに適切なアクセス許可を持つ IAM ロールを使用してください。

## 委任リクエストのアクセス許可の管理
<a name="temporary-delegation-managing-permissions"></a>

管理者は、IAM プリンシパルに、製品プロバイダーからの委任リクエストを管理するためのアクセス許可を付与できます。これは、組織内の特定のユーザーまたはチームに承認権限を委任する場合や、委任リクエストに対して特定のアクションを実行できる人を管理する必要がある場合に有用です。

委任リクエストの管理には、次の IAM アクセス許可を使用できます。


| アクセス許可 | 説明 | 
| --- | --- | 
| iam:AssociateDelegationRequest | 割り当てられていない委任リクエストを AWS アカウントに関連付ける | 
| iam:GetDelegationRequest | 委任リクエストの詳細を表示する | 
| iam:UpdateDelegationRequest | 委任リクエストを管理者に転送して承認をもらう | 
| iam:AcceptDelegationRequest | 委任リクエストを承認する | 
| iam:SendDelegationToken | 承認後に交換トークンを製品プロバイダーに発行する | 
| iam:RejectDelegationRequest | 委任リクエストを拒否する | 
| iam:ListDelegationRequests | アカウントの委任リクエストを一覧表示する | 

**注記**  
デフォルトでは、委任リクエストを作成した IAM プリンシパルには、そのリクエストを管理するためのアクセス許可が自動で付与されます。プリンシパルは、リクエストを自分のアカウントに関連付ける、リクエストの詳細を表示する、リクエストを拒否する、管理者に転送して承認をもらう、管理者の承認後に交換トークンを製品プロバイダーに発行する、所有する委任リクエストを一覧表示する、といったことが行えます。

# 通知
<a name="temporary-delegation-notifications"></a>

IAM の一時委任は AWS User Notifications に組み込まれた機能で、委任リクエストのステータス変更に関する最新情報を確認できます。通知は、委任リクエストを確認して承認する必要がある管理者にとってとりわけ有用です。

AWS User Notifications を使用すると、E メール、Amazon Simple Notification Service (SNS)、AWS Chatbot for Slack または Microsoft Teams、AWS コンソールモバイルアプリケーションなど複数のチャネルを介してアラートを配信するように設定できます。承認待ちにすばやく対応したりアクセス許可の変更に気づいたりすることが可能になり、適切なユーザーに適切なタイミングで通知できます。また、組織のニーズやセキュリティ要件に基づいて通知を行うイベントをカスタマイズすることもできます。

## 利用可能な通知イベント
<a name="temporary-delegation-notification-events"></a>

ユーザーが通知の受け取りをサブスクライブできる IAM 一時委任イベントは、以下のイベントです。
+ IAM 一時委任リクエストが作成されました
+ IAM 一時委任リクエストが割り当てられました
+ IAM 一時委任リクエストは承認待ちです
+ IAM 一時委任リクエストが拒否されました
+ IAM 一時委任リクエストが承諾されました
+ IAM 一時委任リクエストが完了しました
+ IAM 一時委任リクエストの有効期限が切れました

## 通知の設定
<a name="temporary-delegation-configuring-notifications"></a>

IAM 一時委任イベントの通知を設定するには

1. AWS User Notifications コンソールを開きます

1. 通知設定を作成または更新します

1. AWS IAM をサービスとして選択します

1. 通知を希望する委任リクエストイベントを選択します

1. 配信チャネル (E メール、AWSチャットボットなど) を設定します

AWS User Notifications の設定 (配信チャネルの設定、通知ルールの管理など) に関する詳しい手順は、AWS User Notifications のドキュメントを参照してください。

# CloudTrail
<a name="temporary-delegation-cloudtrail"></a>

製品プロバイダーが、一時的に委任されたアクセス許可を使って実行したアクションは、すべて AWS CloudTrail に自動記録されます。つまり、AWS アカウントにおける製品プロバイダーのアクティビティは、すべて可視化され監査できるようになっています。製品プロバイダーが実行したアクション、実行日時、実行したアカウントの特定が可能です。

ユーザーの IAM プリンシパルが実行したアクションと、委任されたアクセス許可を持つ製品プロバイダーが実行したアクションとを区別しやすくするため、CloudTrail イベントの `userIdentity` エレメントに、新たに `invokedByDelegate` というフィールドが追加されました。このフィールドに製品プロバイダーの AWS アカウント ID が表示されるため、委任されたアクセス許可によるアクションの、フィルタリングと監査が簡単に行えます。

## CloudTrail イベントの構造
<a name="temporary-delegation-cloudtrail-event-structure"></a>

製品プロバイダーが、一時的に委任されたアクセス許可を使用して実行したアクションの、CloudTrail イベントの例を以下に示します。

```
{
    "eventVersion": "1.09",		 	 	 
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AIDACKCEVSQ6C2EXAMPLE:Role-Session-Name",
        "arn": "arn:aws:sts::111122223333:assumed-role/Role-Name/Role-Session-Name",
        "accountId": "111122223333",
        "accessKeyId": "[REDACTED:AWS_ACCESS_KEY]",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                "arn": "arn:aws:iam::111122223333:role/Admin",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "attributes": {
                "creationDate": "2024-09-09T17:50:16Z",
                "mfaAuthenticated": "false"
            }
        },
        "invokedByDelegate": {
            "accountId": "444455556666"
        }
    },
    "eventTime": "2024-09-09T17:51:44Z",
    "eventSource": "iam.amazonaws.com",
    "eventName": "GetUserPolicy",
    "awsRegion": "us-east-1",
    "requestParameters": {
        "userName": "ExampleIAMUserName",
        "policyName": "ExamplePolicyName"
    },
    "eventType": "AwsApiCall",
    "recipientAccountId": "111122223333"
}
```

`invokedByDelegate` フィールドには、委任されたアクセス許可を使用してアクションを実行した製品プロバイダーの AWS アカウント ID が記されています。こちらの例では、アカウント 444455556666 (製品プロバイダー) が、アカウント 111122223333 (顧客アカウント) でアクションを実行しています。

# AWS パートナーの IAM 一時委任
<a name="access_policies-temporary-delegation-partner-guide"></a>

## 概要:
<a name="temporary-delegation-partner-overview"></a>

IAM の一時委任を使用すると、AWS の顧客は、インタラクティブなガイド付きワークフローを使って AWS パートナーの製品を自分の AWS 環境にシームレスにオンボードあるいは統合することができます。顧客は、必要とする AWS サービスを設定するときに、制限付きの一時的なアクセス権を AWS パートナーに付与することで、オンボーディングにまつわる問題を取り除き価値実現までに要する時間を短縮することができます。

IAM の一時委任を使えばパートナーは以下のようなことが行えます。
+ リソースのプロビジョニングを自動化して顧客のオンボーディングを簡素化する
+ 手動での設定手順をなくし統合における複雑な要素を取り除く
+ 顧客が承認した透過的なアクセス許可を使用して信頼性を高める
+ アクセス許可の境界を使用して長期的なアクセスパターンにより継続的なオペレーションを実現する

## 仕組み
<a name="temporary-delegation-how-it-works"></a>

1. *パートナーが委任リクエストを作成する* – パートナーが、必要なアクセス許可と必要とする期間とを指定したリクエストを作成します。

1. *顧客が AWS コンソールで確認する* – パートナーがリクエストしたアクセス許可とその理由を顧客が確認します。

1. *顧客が承認する* – 顧客がリクエストを承認し、交換トークンをリリースします。トークンはここで指定した SNS トピック上でパートナーに送信されます。

1. *パートナーが一時的な認証情報を受け取る* – パートナーがトークンを一時的な AWS 認証情報と交換します。

1. *パートナーがリソースを設定する* – パートナーが認証情報を使用して顧客のアカウントに必要なリソースを設定します。

## パートナーの要件
<a name="temporary-delegation-partner-qualification"></a>

一時委任を組み込むには、パートナーは次の要件を満たしている必要があります。
+ *ISV Accelerate に登録している* – パートナーは [ISV Accelerate (ISVA)](https://aws.amazon.com/partners/programs/isv-accelerate/) プログラムに登録している必要があります。
+ *AWS Marketplace に出品している* – パートナーは製品を AWS Marketplace に出品し「AWS にデプロイ済み」のバッジを付ける必要があります。

## オンボーディングプロセス
<a name="temporary-delegation-onboarding-process"></a>

製品に一時委任を組み込むには、次の手順を行います。

1. *ステップ 1: 要件を確認する*

   本ドキュメントを読んで要件を確認し、以下のパートナーアンケートに回答します。

1. *ステップ 2: オンボーディングリクエストを送信する*

   aws-iam-partner-onboarding@amazon.com に E メールを送信するか、または AWS の担当者に連絡します。その際、必須項目のすべてを記載した以下のパートナーアンケートの回答を作成し、添付します。

1. *ステップ 3: AWS が確認およびチェックを行う*

   AWS の動作:
   + パートナーが要件を満たしていることを確認します
   + ポリシーテンプレートとアクセス許可の境界をチェックします
   + パートナーから届いたアーティファクトにフィードバックを行います

1. *ステップ 4: ポリシーを改良する*

   AWS のフィードバックに対処し、必要に応じて最新のポリシーテンプレートまたはアクセス許可の境界を送信します。

1. *ステップ 5: 登録を完了する*

   承認されると、AWS が以下を行います。
   + 指定されたアカウントの API アクセスを有効にする
   + ポリシーテンプレートとアクセス許可の境界の ARN を共有する (該当する場合)

   オンボーディングが完了するとお手元に確認メッセージが届きます。届いたら、登録したアカウントから一時委任 API、CreateDelegationRequest と GetDelegatedAccessToken にアクセスすれば、委任リクエストのワークフローを製品に組み込めるようになります。

## パートナーアンケート
<a name="temporary-delegation-partner-questionnaire"></a>

以下の表は、パートナーのオンボーディングに必要な情報を一覧にしたものです。


| 情報 | 説明 | 必須 | 
| --- | --- | --- | 
| パートナーセントラルのアカウント ID | [AWS パートナーセントラル](https://partnercentral.awspartner.com/partnercentral2/s/login)に登録されている AWS アカウントのアカウント ID。 | はい | 
| PartnerId | [AWS パートナーセントラル](https://partnercentral.awspartner.com/partnercentral2/s/login)から提供されたパートナー ID。 | いいえ | 
| AWS Marketplace の製品 ID | [AWS パートナーセントラル](https://partnercentral.awspartner.com/partnercentral2/s/login)から提供されたパートナー製品の製品 ID。 | はい | 
| AWS アカウントの ID | 一時委任 API の呼び出しに使用する AWS アカウント ID の一覧。これには本番稼働用と非本番稼働/テスト用の両方のアカウントを含める必要があります。 | はい | 
| パートナー名 | この名前は、顧客が一時委任リクエストを確認する際に AWS マネジメントコンソールに表示されます。 | はい | 
| 連絡用メールアドレス | サービスの組み込みに関するご連絡に使用可能な 1 件以上の E メールアドレス。 | はい | 
| リクエストしたユーザーのドメイン | お使いのドメイン (www.example.com など) | はい | 
| 統合の説明 | この機能を使用するユースケースに関する短い説明。参考ドキュメントやその他公開資料へのリンクを含めていただいてもかまいません。 | はい | 
| アーキテクチャ図 | 組み込みの統合ユースケースの図解 (複数可)。 | いいえ | 
| ポリシーテンプレート | この機能ではポリシーテンプレートを 1 つ以上登録する必要があります。ポリシーテンプレートは、顧客の AWS アカウントでリクエストする一時的な許可を定義するものです。詳細については「ポリシーテンプレート」の項目を参照してください。 | はい | 
| ポリシーテンプレート名 | 登録するポリシーテンプレートの名前。 | はい | 
| アクセス許可の境界 | 一時的な許可を使用して顧客のアカウントに IAM ロールを作成する場合は、アクセス許可の境界を IAM に登録する必要があります。アクセス許可の境界は、ロールに対するアクセス許可の上限を規定するために作成する IAM ロールにアタッチされます。選択した AWS 管理ポリシーをアクセス許可の境界として使用するか、新しいカスタムのアクセス許可の境界 (JSON) を登録することができます。詳細については「アクセス許可の境界」の項目を参照してください。 | いいえ | 
| アクセス許可の境界名 | アクセス許可の境界の名前です。形式は以下のとおり。arn:aws:iam::partner:policy/permission\$1boundary/<partner\$1domain>/<policy\$1name>\$1<date>。ポリシー名には作成日をサフィックスとして含める必要があります。この名前は、アクセス許可の境界の作成後は更新できません。既存の AWS 管理ポリシーを使用している場合は、代わりに管理ポリシー ARN を指定します。 | いいえ | 
| アクセス許可の境界の説明 | アクセス許可の境界に関する説明です。この説明は、アクセス許可の境界の作成後は更新できません。 | 不可 | 

# 統合について
<a name="temporary-delegation-understanding-integration"></a>

オンボーディングプロセスが完了すると、IAM 一時委任との統合を構築することができます。完全な統合は、通常、次の 3 つの作業で構成されています。

## 1. ユーザーエクスペリエンスとワークフローの設計
<a name="temporary-delegation-user-experience"></a>

一時委任のワークフローを使って、顧客をガイドするフロントエンドのエクスペリエンスをパートナーアプリケーションに構築します。パートナーアプリケーションは以下を行う必要があります。
+ 顧客が一時的なアクセス許可を付与できる、オンボーディングまたは設定の明確なフローを提示します。このアクションに「IAM 一時委任を使ってデプロイする」といったわかりやすいラベルを付けます。
+ CreateDelegationRequest API が返すコンソールリンクを使用して、顧客を AWS マネジメントコンソールにリダイレクトし、委任リクエストを確認および承認します。
+ リクエストされたアクセス許可とその理由に関する適切なメッセージを提供します。顧客は、このメッセージを委任リクエストの詳細ページで確認できます。
+ AWS での承認が完了したら、アプリケーションへの顧客からの返信に対処します。

## 2. API の統合
<a name="temporary-delegation-api-integration"></a>

IAM 一時委任 API を使用して、委任リクエストを送信および管理します。AWS アカウントが登録されると、次の API にアクセスできます。
+ *IAM CreateDelegationRequest* – 顧客の AWS アカウントの委任リクエストを作成します。この API は、リクエストの確認および承認用に、顧客をリダイレクトするコンソールリンクを返します。
+ *AWS STS GetDelegatedAccessToken* – 顧客が委任リクエストを承認した後、一時的な AWS 認証情報を取得します。顧客のアカウントでアクションを実行するときはこれらの認証情報を使用します。

統合により、リクエストの作成、ステータスのモニタリング、承認時の一時的な認証情報の取得など、委任リクエストのすべてのライフサイクルに対処できる必要があります。

## 3. リソース設定とオーケストレーション
<a name="temporary-delegation-resource-configuration"></a>

一時的な認証情報を取得したら、顧客の AWS アカウントで必要なワークフローを組み立ててリソースを設定します。これには、次のようなものがあります。
+ AWS サービス API を直接呼び出してリソースを作成および設定する
+ AWS CloudFormation テンプレートを使用してインフラストラクチャをデプロイする
+ 継続的なアクセスのため IAM ロールを作成する (アクセス許可の境界を使用する必要あり)

顧客は、委任の承認を再試行または変更する必要がある場合があるため、オーケストレーションのロジックはべき等とし、障害を適切に処理する必要があります。

# アクセス許可について
<a name="temporary-delegation-understanding-permissions"></a>

機能のオンボーディングプロセスの一環として、ユーザーは、顧客の AWS アカウントでリクエストを行うためのアクセス許可を定義するポリシーを、IAM に登録する必要があります。この登録プロセスは、顧客向けにより一貫性のあるエクスペリエンスが用意されているため、ポリシー作成時のよくある落とし穴を回避できます。

登録中、AWS はユーザーのポリシーを一連の妥当性に照らして評価します。これらの妥当性は、ポリシーの形式と構造を標準化し、既知のアンチパターンに対して基本的な保護を行うことを目的としています。また、権限昇格、意図しないクロスアカウントアクセス、顧客アカウント内の高価値なリソースに対する広範なアクセス、に関連したリスクも軽減します。

## アクセス許可タイプ
<a name="temporary-delegation-permission-types"></a>

AWS は、アクセス許可には一時的な許可と長期的な許可の 2 種類があるとみなしています。

### 一時的なアクセス許可
<a name="temporary-delegation-temporary-permissions"></a>

一時的なアクセス許可は、一時的に委任されたアクセスセッションに割り当てられたアクセス許可を制限します。一時的なアクセス許可は、委任セッションに適用されるポリシーテンプレートで説明されています。このテンプレートは、委任リクエストの作成時にユーザーが指定するパラメータをサポートします。その後、これらのパラメータ値はセッションに結び付けられます。一時的なアクセス許可は、AWS STS 現在利用可能なセッションポリシーと同じ方法で機能します。セッションポリシーは、基盤となるユーザーの機能を制限しますが、追加のアクセス許可は付与しません。詳細については、セッションポリシーに関する AWS STS のドキュメントを参照してください。

### 有効期間の長いアクセス許可
<a name="temporary-delegation-long-term-permissions"></a>

有効期間の長いアクセス許可は、一時的なアクセス許可を通じて作成または管理されているロールのアクセス許可を制限します。有効期間の長いアクセス許可は、IAM アクセス許可の境界として実装されます。アクセス許可の境界は、オンボーディングの一環として 1 つ以上を AWS に送信することができます。承認されると、AWS はユーザーに、ユーザーのポリシーで参照できるポリシー ARN を共有します。

これらの境界ポリシーには注目すべき 2 つの機能があります。1 つめはイミュータブルであることです。アクセス許可を更新するときは、新しいアクセス許可の境界を登録できます。その後、新しい委任リクエストを送信することで新しいアクセス許可の境界を顧客のロールにアタッチできます。2 つめは、ポリシーがテンプレート化されないことです。同一の境界ポリシーがグローバルに共有されているため、ポリシーを顧客ごとに変えることはできません。

**重要**  
アクセス許可の境界の文字数の上限は 6,144 文字です。

**注記**  
アクセス許可の境界またはポリシーテンプレートを更新する場合は、IAM (aws-iam-partner-onboarding@amazon.com) までご連絡ください。新しいアクセス許可の境界が登録されたら、顧客に委任リクエストを送信して IAM ロールを更新し、新しく登録されたアクセス許可の境界をアタッチすることができます。詳細は、「例」の項目を参照してください。

## ユースケース例: データ処理のワークロード
<a name="temporary-delegation-example-use-case"></a>

製品プロバイダーがデータ処理のワークロードを顧客アカウントで実行するケースを考えてみましょう。このプロバイダーは、最初のオンボーディング中にインフラストラクチャをセットアップする必要がありますが、ワークロードを操作するには継続的なアクセス許可も必要です。

*一時的なアクセス許可 (初期設定用):*
+ Amazon EC2 インスタンス、VPC、セキュリティグループを作成する
+ 処理されたデータの Amazon S3 バケットを作成する
+ 継続的な操作用の IAM ロールを作成する
+ アクセス許可の境界を IAM ロールにアタッチする

*有効期間の長いアクセス許可 (継続的な操作向けの、アクセス許可の境界を持つ IAM ロール):*
+ 処理ジョブを実行するために Amazon EC2 インスタンスを起動/停止する
+ Amazon S3 バケットから入力データを読み取る
+ 処理の結果を Amazon S3 バケットに書き込む

一時的なアクセス許可は、インフラストラクチャを設定するオンボーディングの最中に 1 回使用します。この処理の最中に作成された IAM ロールには、継続的なワークロード管理に必要な操作のみにアクセス許可の上限を制限するアクセス許可の境界があります。これにより、ロールのポリシーが変更された場合でも、この境界で定義されたアクセス許可を超えることはできなくなります。

# ポリシー評価のガイドライン
<a name="temporary-delegation-policy-evaluation-guidelines"></a>

AWS は、送信されてきたポリシーを一連のガイドラインに照らして評価します。ポリシーテンプレートとアクセス許可の境界には同一の評価ガイドラインを適用し、必要に応じて両者の微妙な違いを指摘します。

当社は、評価のためサービスを複数のグループに分類しています。最も重要なグループは、アクセス許可、認証情報、キーを管理する機密性の高いサービスが対象です。こうしたサービスへのアクセスを付与するポリシーは、そこで行われる作業に的を絞る必要があります。機密性の高いサービスには、AWS Identity and Access Management (IAM)、AWS Key Management Service (KMS)、AWS Resource Access Manager (RAM)、AWS IAM Identity Center、AWS Organizations、AWS Secrets Manager などがあります。

もう 1 つのグループは、アカウントの境界を越えてデータにアクセスできるサービスです。このサービス向けのポリシーには、意図しないクロスアカウントアクセスを防ぐ保護を含める必要があります。

## すべてのポリシーに共通する確認事項
<a name="temporary-delegation-common-validations"></a>

すべてのポリシーステートメントは、次のガイドラインに従う必要があります。
+ すべてのステートメントには、Effect、Action (または NotAction)、Resource、Condition の各フィールドがこの順番で含まれている必要があります
+ 1 個のステートメントに含まれるすべてのアクションは、アルファベット順に並べる必要があります。
+ ポリシーに含まれるすべての ARN は、関連するサービスの公開ドキュメントで定義された構文に、従っている必要があります。
+ NotAction フィールドは、Deny ステートメントのみで使用できます。
+ Allow ステートメントのアクションには、サービスコードを含める必要があります。汎用のワイルドカード (「\$1」) は使用できません

## 機密性の高いサービスの制限事項
<a name="temporary-delegation-security-sensitive-restrictions"></a>

上記の機密性の高いサービスには、次の制限が適用されます。
+ Allow ステートメントのアクションは、[service]:\$1 よりも具体的に記す必要があります。
+ 一時的なアクセスポリシーのテンプレートの、Allow ステートメントのアクションには、ワイルドカードを含めることはできません
+ iam:PassRole や iam:CreateServiceLinkedRole のような機密性の高いアクションには、具体的なリソースや条件チェックなどによる追加の絞り込みが必要になります。アクションには以下が含まれます。
  + IAM ロールの通過
  + IAM ロールの変更アクション
  + IAM ポリシーの変更アクション
  + AWS KMS の書き込みまたは暗号化オペレーション
  + AWS RAM の書き込みまたは共有オペレーション
  + シークレットの取得または変更、もしくはリソースポリシーの変更など AWS Secrets Manager のオペレーション
+ その他のアクションでは iam:ListUsers や iam:GetPolicy などのワイルドカードリソースを使用する場合があります
+ iam:CreateAccessKey などの認証情報を管理するアクションはブロックされます

## IAM に固有の制限事項
<a name="temporary-delegation-iam-specific-restrictions"></a>

IAM の場合
+ IAM ロールとポリシーには、制限付きの書き込みオペレーションのみが許可されます。ユーザー、グループ、証明書など他の IAM リソースへのアクセス許可をリクエストすることはできません。
+ ポリシーのアタッチ、またはインラインポリシーの管理アクションは、アクセス許可の境界を持つロールに制限されます。アクセス許可の境界は、パートナーが定義するか、または、許可されている AWS 管理ポリシーのリストに含める必要があります。AWS 管理ポリシーは高度な権限または管理者権限を付与していない場合に許可される場合があります。例えば、特定のジョブ機能または SecurityAudit ポリシーの AWS 管理ポリシーは、許容される場合があります。AWS は、オンボーディングプロセス中に各 AWS 管理ポリシーを個別に確認します。
+ ポリシー管理は、次のパートナー固有のパスを持つポリシーのみで許可されます。arn:aws:iam::@\$1AccountId\$1:policy/partner\$1domain.com/[feature]\$1
+ タグは、リソースの作成時のみ、ロールとポリシーに対してのみ適用できます。
+ iam:PassRole チェックは、特定の名前またはパスプレフィックスと一致している必要があります

## AWS STS に固有の制限事項
<a name="temporary-delegation-sts-specific-restrictions"></a>

AWS STS の場合:
+ sts:AssumeRole は、特定のロール ARN、ロール ARN プレフィックスに範囲を絞るか、一連のアカウントまたは組織 ID/組織単位に限定する必要があります

## IAM アイデンティティセンターの制限事項
<a name="temporary-delegation-identity-center-restrictions"></a>

AWS IAM Identity Center では次のアクションはブロックされます。
+ アクセス許可の管理に対応するすべてのアクション (sso:AttachCustomerManagedPolicyReferenceToPermissionSet など)
+ AWS Identity Store のユーザー、グループ、メンバーシップの変更
+ タグの管理

## AWS Organizations の制限事項
<a name="temporary-delegation-organizations-restrictions"></a>

AWS Organizations では、読み取りアクションのみ許可されます。

## その他サービス固有の検証事項
<a name="temporary-delegation-additional-service-validations"></a>
+ シークレットまたは認証情報を取得するアクション (glue:GetConnection や redshift:GetClusterCredentials など) には、完全な ARN、ARN プレフィックス、タグのいずれかに一致する条件が必要です
+ Amazon Redshift の場合、redshift:GetClusterCredentials は、特定のデータベース名のみで許可され、redshift:GetClusterCredentialsWithIAM は、特定のワークグループ名のみで許可されます。

**注記**  
IAM リソースをアカウントで管理する場合は、自分の名前を示すパスを使用することが推奨されます。例: arn:aws:iam::111122223333:role/partner.com/rolename そうすれば、統合に関連するリソースを簡単に見分けられ、顧客は検索、監査、分析を容易に行えます。

## クロスアカウントアクセス要件
<a name="temporary-delegation-cross-account-requirements"></a>

クロスアカウントアクセスを許可する可能性のあるステートメントには、次のいずれか 1 つを含める必要があります。
+ リソースのアカウントまたは組織を指定する条件 (例: 1 つ以上の想定値に一致する aws:ResourceOrgId)
+ 特定のアカウントを含む Resource フィールド (例: arn:aws:sqs:\$1:111122223333:\$1)
+ ワイルドカード以外のアカウントと完全なリソース名を含む Resource フィールド (例: arn:aws:s3:::full–bucket–name)

**注記**  
クロスアカウントアクセスは、ビジネス上の正当化根拠を必要とする機密性の高い機能です。クロスアカウントアクセスの必要性は、AWS がオンボーディングプロセス中に慎重に確認作業を行います。

# ポリシーテンプレート
<a name="temporary-delegation-policy-templates"></a>

ポリシーテンプレートとは、顧客のアカウントでパートナーがリクエストする一時的なアクセス許可を定義するための、新しい IAM コンストラクトです。従来の IAM ポリシーと同様、Effect、Action、Resource、Condition の各要素を含むステートメントを使用してアクセス許可を定義します。従来のポリシーとの大きな違いは、ポリシーテンプレートに、委任リクエストを作成する際に実際の値に置き換えられるパラメータ (@\$1bucketName\$1 など) が含まれている点です。

## ポリシーテンプレートの仕組み
<a name="temporary-delegation-how-policy-templates-work"></a>

ユーザーは、オンボーディングプロセスの最中にポリシーテンプレートを AWS に登録します。AWS は、各テンプレートに、委任リクエストの作成時に参照する一意の ARN を割り当てます。

委任リクエストを作成するときは、以下を指定します。
+ ポリシーテンプレート ARN
+ テンプレートに代入するパラメータ値

AWS は、テンプレートをパラメータ値と組み合わせて、標準の IAM ポリシーを生成します。顧客は、委任リクエストを承認するときに生成されたこの最終版のポリシーを確認し、付与されるアクセス許可を完全な形で目にします。

**注記**  
生成された最終版のポリシーの、文字数の上限は 2048 文字です。

テンプレートの置換の仕組みを、以下の簡単な例でご紹介します。

ポリシーテンプレート

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::@{bucketName}/*"
        }
    ]
}
```

委任リクエストで指定されるパラメータ

```
{
    "Name": "bucketName",
    "Values": ["customer-data-bucket"],
    "Type": "String"
}
```

生成された最終版のポリシー (顧客が目にする内容)

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::customer-data-bucket/*"
        }
    ]
}
```

## テンプレートの構文
<a name="temporary-delegation-template-syntax"></a>

ポリシーテンプレートは、パラメータ置換と条件ステートメントという 2 つの主要な機能により柔軟性を高めています。パラメータ置換を使用すると、委任リクエストの作成時に実際の値に置き換えられるプレースホルダーをテンプレートで定義できます。条件ステートメントを使用すると、パラメータ値に基づいて、ポリシーステートメント全体を含めたり除外したりできます。

### パラメータ置換とタイプ
<a name="temporary-delegation-parameter-substitution"></a>

@\$1parameterName\$1 構文は、ポリシーテンプレートでパラメータを定義するときに使用します。委任リクエストを作成するときは、各パラメータのタイプを指定します。

#### String
<a name="temporary-delegation-string-type"></a>

テンプレートに直接代入される 1 個の値です。

テンプレート:

```
"Resource": "arn:aws:s3:::@{bucketName}/*"
```

パラメータ :

```
{
    "Name": "bucketName",
    "Values": ["my-bucket"],
    "Type": "String"
}
```

生成された結果

```
"Resource": "arn:aws:s3:::my-bucket/*"
```

#### StringList
<a name="temporary-delegation-stringlist-type"></a>

複数のリソースエントリを生成する複数の値です。StringList パラメータは、リソース ARN で使用すると、値ごとに個別のリソースエントリを作成するように拡張します。

テンプレート:

```
"Resource": "arn:aws:s3:::@{bucketNames}/*"
```

パラメータ :

```
{
    "Name": "bucketNames",
    "Values": ["bucket-1", "bucket-2"],
    "Type": "StringList"
}
```

生成された結果

```
"Resource": [
    "arn:aws:s3:::bucket-1/*",
    "arn:aws:s3:::bucket-2/*"
]
```

#### クロス積の動作
<a name="temporary-delegation-cross-product-behavior"></a>

複数のパラメータを同じリソース ARN で使用すると、StringList パラメータはすべての組み合わせのクロス積を作成します。

テンプレート:

```
"Resource": "arn:aws:s3:::@{bucketNames}/@{prefix}/*"
```

パラメータ :

```
[
    {
        "Name": "bucketNames",
        "Values": ["bucket-1", "bucket-2"],
        "Type": "StringList"
    },
    {
        "Name": "prefix",
        "Values": ["data"],
        "Type": "String"
    }
]
```

生成された結果

```
"Resource": [
    "arn:aws:s3:::bucket-1/data/*",
    "arn:aws:s3:::bucket-2/data/*"
]
```

### 条件ステートメント
<a name="temporary-delegation-conditional-statements"></a>

@Enabled ディレクティブは、パラメータ値に基づいてステートメント全体を条件付きで包含または除外するときに使用します。

構文:
+ @Enabled: "parameterName" – このステートメントは、パラメータ値が「True」のときに含めます
+ @Enabled: "\$1parameterName" – このステートメントは、パラメータ値が「True」ではない (否定) のときに含めます

テンプレート:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": ["s3:GetObject"],
            "Resource": "*"
        },
        {
            "@Enabled": "ENABLE_S3_WRITE",
            "Effect": "Allow",
            "Action": ["s3:PutObject"],
            "Resource": "arn:aws:s3:::@{bucketName}/*"
        }
    ]
}
```

パラメータ (ENABLE\$1S3\$1WRITE が「True」のとき)

```
[
    {
        "Name": "bucketName",
        "Values": ["my-bucket"],
        "Type": "String"
    },
    {
        "Name": "ENABLE_S3_WRITE",
        "Values": ["True"],
        "Type": "String"
    }
]
```

生成された結果

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": ["s3:GetObject"],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": ["s3:PutObject"],
            "Resource": "arn:aws:s3:::my-bucket/*"
        }
    ]
}
```

パラメータ (ENABLE\$1S3\$1WRITE が「False」のとき)

```
[
    {
        "Name": "bucketName",
        "Values": ["my-bucket"],
        "Type": "String"
    },
    {
        "Name": "ENABLE_S3_WRITE",
        "Values": ["False"],
        "Type": "String"
    }
]
```

生成された結果

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": ["s3:GetObject"],
            "Resource": "*"
        }
    ]
}
```

ENABLE\$1S3\$1WRITE を「True」に設定すると条件ステートメントが含まれます。「False」に設定すると、ステートメントは生成されたポリシーから除外されます。

## その他の例
<a name="temporary-delegation-additional-examples"></a>

一時委任でポリシーテンプレートを使用する際の、共通するパターンの例を以下にご紹介します。長期間有効なアクセス許可を提供するために、アクセス許可の境界を持つ IAM ロールを作成することに焦点をあて、特定のリソースに的を絞ったアクセス許可を設定するためのさまざまな戦略をご紹介します。こちらの例では、ARN プレフィックス、リソースのタグ付け、アクセス許可の境界の更新といった方法を使用することで、柔軟性とセキュリティの間のバランスを取っています。

### 例 1: 特定のリソースへのアクセスを長期間許可する
<a name="temporary-delegation-example-1"></a>

次のアクセス許可の境界は、「partner.com」の「SQSAccessorBoundary」として送信されます。

```
{
    "Effect": "Allow",
    "Action": [
        "sqs:DeleteMessage",
        "sqs:ReceiveMessage",
        "sqs:SendMessage"
    ],
    "Resource": "arn:aws:sqs:*:*:*",
    "Condition": {
        "StringEquals": {
            "aws:ResourceAccount": "${aws:PrincipalAccount}"
        }
    }
}
```

**注記**  
これには、オープンなリソースポリシーを持つ他のアカウントの、キューへのアクセスを許可しないための、同一アカウント条件が含まれます。この境界は全顧客間で共有されテンプレート化ができないため、顧客のアカウント ID への直接参照は、含めることができません。

こちらはこのポリシーの初版であるため、ARN は以下のようになります。arn:aws:iam::partner:policy/permissions-boundary/partner.com/SQSAccessorBoundary\$12025\$101\$115

一時的なアクセス許可については、次のポリシーテンプレートが送信されます。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sqs:ListQueues"
            ],
            "Resource": "arn:aws:sqs:*:*:*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:PutRolePermissionsBoundary",
                "iam:PutRolePolicy"
            ],
            "Resource": "arn:aws:iam::@{AccountId}:role/partner.com/SQSAccessor",
            "Condition": {
                "StringEquals": {
                    "iam:PermissionsBoundary": "arn:aws:iam::partner:policy/permissions-boundary/partner.com/SQSAccessorBoundary_2025_01_15"
                }
            }
        }
    ]
}
```

### 例 2: ARN プレフィックスを使用する
<a name="temporary-delegation-example-2"></a>

アクセス許可の境界を使用すると、リソース ARN プレフィックスを指定してアクセスを制限することができます。

```
"Resource": "arn:aws:sqs:*:@{AccountId}:PartnerPrefix*"
```

それにより、アクセスできるのはこのプレフィックスを持つリソースのみに限定され、アクセス可能なリソースの範囲が狭められます。

### 例 3: リソースアクセスコントロールにタグを使用する
<a name="temporary-delegation-example-3"></a>

一時委任によるアクセスの最中にリソースにタグを付け、それらのタグを使って長期間のアクセス制御が行えます。

タグ付けされたリソースへのアクセスを許可するアクセス許可の境界

```
{
    "Effect": "Allow",
    "Action": [
        "sqs:DeleteMessage",
        "sqs:ReceiveMessage",
        "sqs:SendMessage"
    ],
    "Resource": "arn:aws:sqs:*:*:*",
    "Condition": {
        "Null": {
            "aws:ResourceTag/ManagedByPartnerDotCom": "false"
        },
        "StringEquals": {
            "aws:ResourceAccount": "${aws:PrincipalAccount}"
        }
    }
}
```

作成時に新しいキューにタグを付けるポリシーテンプレート

```
{
    "Effect": "Allow",
    "Action": [
        "sqs:CreateQueue",
        "sqs:TagQueue"
    ],
    "Resource": "arn:aws:sqs:*:*:*",
    "Condition": {
        "Null": {
            "aws:RequestTag/ManagedByPartnerDotCom": "false"
        }
    }
}
```

既存のキューにタグ付けしてロールを作成するポリシーテンプレート

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sqs:TagQueue"
            ],
            "Resource": "arn:aws:sqs:*:@{AccountId}:@{QueueName}",
            "Condition": {
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": "ManagedByPartnerDotCom"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:PutRolePermissionsBoundary",
                "iam:PutRolePolicy"
            ],
            "Resource": "arn:aws:iam::@{AccountId}:role/partner.com/SQSAccessor",
            "Condition": {
                "StringEquals": {
                    "iam:PermissionsBoundary": "arn:aws:iam::partner:policy/permissions-boundary/partner.com/SQSAccessorBoundary_2025_01_15"
                }
            }
        }
    ]
}
```

この方法を使えば、顧客は自分がどのリソースに長期間アクセスできるのかを明示的に確認できます。

### 例 4: アクセス許可の境界を更新する
<a name="temporary-delegation-example-4"></a>

アクセス許可の境界を更新するには、新しいバージョンを新しい日付サフィックスに登録し、それを置き換えるアクセス許可をリクエストします。

追加のアクセス許可を使ってアクセス許可の境界を更新する

```
{
    "Effect": "Allow",
    "Action": [
        "sqs:DeleteMessage",
        "sqs:PurgeQueue",
        "sqs:ReceiveMessage",
        "sqs:SendMessage"
    ],
    "Resource": "arn:aws:sqs:*:*:*",
    "Condition": {
        "StringEquals": {
            "aws:ResourceAccount": "${aws:PrincipalAccount}"
        }
    }
}
```

第 2 版として、このポリシーには次の ARN が含まれます。arn:aws:iam::partner:policy/permissions-boundary/partner.com/SQSAccessorBoundary\$12025\$101\$120

既存のロールのアクセス許可の境界を更新するポリシーテンプレート

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iam:PutRolePermissionsBoundary"
            ],
            "Resource": "arn:aws:iam::@{AccountId}:role/partner.com/SQSAccessor",
            "Condition": {
                "StringEquals": {
                    "iam:PermissionsBoundary": "arn:aws:iam::partner:policy/permissions-boundary/partner.com/SQSAccessorBoundary_2025_01_20"
                }
            }
        }
    ]
}
```

顧客は、既存のロールのアクセス許可の境界を更新するには、この委任リクエストを承認する必要があります。

# 統合の構築
<a name="temporary-delegation-building-integration"></a>

## リクエストのライフサイクルについて
<a name="temporary-delegation-request-lifecycle"></a>

統合を構築するときは、まず、委任リクエストの作成から完了までのプロセスを理解する必要があります。

### リクエストのステータス
<a name="temporary-delegation-request-states"></a>

委任リクエストは以下のステータスを経て進行します。


| 状態 | 説明 | 
| --- | --- | 
| 未割り当て | リクエストは作成済みですが、まだ顧客アカウントや IAM プリンシパルに関連付けられていない状態です。リクエストは、ターゲットアカウントを指定せずに作成されたか、ターゲットアカウントの ID は指定されているものの、そのアカウントの所有者からまだ請求されていない可能性があります。 | 
| 割り当て済み | リクエストは顧客アカウントに関連付けられ、確認待ちの状態です | 
| 承認待ち | リクエストは承認のため顧客から管理者に転送されています | 
| 承諾 | リクエストは顧客によって承認済みですが、交換トークンはまだ発行されていない状態です | 
| 完了 | 交換トークンは製品プロバイダーに発行済みです。委任期間 (交換トークンが有効な期間) は、リクエストのステータスが「完了」になったときから始まります | 
| 拒否 | リクエストは顧客から拒否されています | 
| 失効 | リクエストは非アクティブまたはタイムアウトのため期限が切れています | 

### ステータスの移行
<a name="temporary-delegation-state-transitions"></a>

*通常のフロー (承認の流れ)*
+ 未割り当て → 割り当て済み: 顧客がリクエストを自分のアカウントに関連付ける
+ 割り当て済み → 承認済みまたは割り当て済み → 承認待ち: 顧客がリクエストを直接承認するまたは管理者に転送して承認を受ける
+ 承認待ち → 承諾済み: 管理者がリクエストを承認する
+ 承認済み → 完了: 顧客が交換トークンを発行する

*拒否の流れ*
+ 割り当て済み → 拒否: 顧客がリクエストを拒否する
+ 承認待ち → 拒否: 管理者がリクエストを拒否する
+ 承認済み → 拒否: 顧客がトークンの発行前に承認を取り消す

*期限切れの流れ*

指定した期間内にアクションが 1 つも実行されなかった場合、リクエストは自動的に期限切れになります。
+ 未割り当て → 期限切れ (1 日)
+ 割り当て済み → 期限切れ (7 日間)
+ 承認待ち → 期限切れ (7 日間)
+ 承認済み → 期限切れ (7 日間)
+ 拒否 → 期限切れ (7 日間)
+ 完了 → 期限切れ (7 日間)

*ターミナルステータス*

以下のステータスは「ターミナル」です (移行はここで終わりです)。
+ 完了: 交換トークンは送信済みです
+ 拒否: リクエストは拒否されました
+ 期限切れ: リクエストはタイムアウトしたか委任期間が終了しています

期限が切れたリクエストは、保持期間が過ぎるとシステムから削除されます。

### 委任リクエストのステータスをアプリケーションで管理する
<a name="temporary-delegation-managing-states"></a>

パートナーであるユーザーは、委任リクエストのステータスを自分のシステムで追跡し、顧客に見せる必要があります。ステータスの変更に関する SNS 通知がお手元に届いたら、その更新をバックエンドに保存して顧客向けの UI に反映させます。特に「承認待ち」のステータスには注意が必要です。顧客が承認を受けるためリクエストを管理者に転送した場合、ユーザーには AWS から「承認待ち」の通知が届きます。リクエストは、管理者のアクションを待つ間、最大で 7 日間このステータスに留まることができます。この間、顧客には、リクエストが管理者の承認待ちであることをアプリケーション内で知らせます。顧客がリクエストのステータスをチェックしたり管理者をフォローしたりできる AWS コンソールの、ディープリンクを提供することを検討しましょう。バックエンドでステートマシンを適切に処理し、各段階で顧客に正しいステータス情報を見せることは、優れた統合体験の提供に欠かせません。

![\[alt text not found\]](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/delegation-states.png)


## 通知の設定
<a name="temporary-delegation-configuring-notifications"></a>

IAM は、委任リクエストのステータス変更の通知に Amazon Simple Notification Service (SNS) を使用します。委任リクエストを作成するときは、登録済みの AWS アカウントから SNS トピック ARN を指定する必要があります。IAM は、顧客がリクエストを承認または拒否したときや交換トークンの準備が完了したときなど、重要なイベントの際にこのトピックにメッセージを発行します。

**注記**  
SNS トピックは、オプトインの AWS リージョンには配置できません。SNS トピックはデフォルトで有効になっている AWS リージョンに配置する必要があります。オプトインリージョンの一覧については「AWS アカウント管理ガイド」の「AWS リージョンの管理」を参照してください。

### SNS トピックの設定
<a name="temporary-delegation-sns-topic-configuration"></a>

委任リクエストの通知を受けとるには、IAM アクセス許可を付与してメッセージを発行するように、SNS トピックを設定する必要があります。以下のポリシーステートメントを SNS トピックのポリシーに追加します。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowIAMServiceToPublish",
            "Effect": "Allow",
            "Principal": {
                "Service": "iam.amazonaws.com"
            },
            "Action": "SNS:Publish",
            "Resource": "arn:aws:sns:REGION:ACCOUNT-ID:TOPIC-NAME"
        }
    ]
}
```

**重要**  
SNS トピックは、登録済み AWS アカウントのうちの 1 つに配置する必要があります。IAM は、他のアカウントの SNS トピックは受け入れません。トピックポリシーが正しく設定されていないと、ステータスの変更通知や交換トークンを受けとれません。

### 通知タイプ
<a name="temporary-delegation-notification-types"></a>

IAM は次の 2 種類の通知を送信します。

*StateChange 通知*

委任リクエストが新しいステータス (割り当て済み、承認待ち、承認済み、完了、拒否、期限切れ) に移行すると送信されます。

*ExchangeToken 通知*

顧客が委任トークンを発行すると送信されます (ステータスは「完了」)。この通知には、認証情報の取得に必要な交換トークンが含まれています。

### 通知のステータス
<a name="temporary-delegation-notification-states"></a>

ユーザーには、以下の委任リクエストのステータスに関する通知が届きます。


| State | 通知タイプ | 説明 | 
| --- | --- | --- | 
| 割り当て済み | StateChange | リクエストは顧客アカウントに関連付けられています | 
| 承認待ち | StateChange | リクエストは承認のため顧客から管理者に転送されています | 
| 承認済み | StateChange | リクエストは顧客によって承認済みですが、交換トークンはまだ発行されていません | 
| 完了 | StateChange | 交換トークンが顧客によって発行済みです | 
| 完了 | ExchangeToken | この通知には交換トークンが含まれています | 
| 拒否 | StateChange | リクエストは顧客によって拒否されました | 
| EXPIRED | StateChange | リクエストは完了前に期限が切れました | 

### 通知メッセージの書式
<a name="temporary-delegation-notification-message-format"></a>

IAM は標準の SNS 通知を発行します。委任リクエストの情報は、「Message」のフィールドに JSON 文字列で含まれています。

*共通のフィールド (すべての通知)*


| フィールド | タイプ | 説明 | 
| --- | --- | --- | 
| タイプ | String | 「StateChange」または「ExchangeToken」のいずれか | 
| RequestId | String | IAM 委任リクエストの ID | 
| RequestorWorkflowId | String | リクエストの作成時に指定したワークフローの ID | 
| State | String | リクエストの現在のステータス | 
| OwnerAccountId | String | 顧客の AWS アカウントの ID | 
| UpdatedAt | String | ステータスが変更された時点のタイムスタンプ (ISO 8601 形式) | 

*その他のフィールド (ExchangeToken 通知のみ)*


| フィールド | タイプ | 説明 | 
| --- | --- | --- | 
| ExchangeToken | String | AWS STS GetDelegatedAccessToken API を使用して認証情報と交換するトークン | 
| ExpiresAt | String | 委任されたアクセス許可の期限が切れたとき (ISO 8601 形式) | 

### 通知の例
<a name="temporary-delegation-example-notifications"></a>

*StateChange 通知*

```
{
  "Type": "Notification",
  "MessageId": "61ee8ad4-6eec-56b5-8f3d-eba57556aa13",
  "TopicArn": "arn:aws:sns:us-east-1:123456789012:partner-notifications",
  "Message": "{\"RequestorWorkflowId\":\"workflow-12345\",\"Type\":\"StateChange\",\"RequestId\":\"dr-abc123\",\"State\":\"ACCEPTED\",\"OwnerAccountId\":\"111122223333\",\"UpdatedAt\":\"2025-01-15T10:30:00.123Z\"}",
  "Timestamp": "2025-01-15T10:30:00.456Z",
  "SignatureVersion": "1",
  "Signature": "...",
  "SigningCertURL": "...",
  "UnsubscribeURL": "..."
}
```

*ExchangeToken 通知*

```
{
  "Type": "Notification",
  "MessageId": "e44e5435-c72c-5333-aba3-354406782f5b",
  "TopicArn": "arn:aws:sns:us-east-1:123456789012:partner-notifications",
  "Message": "{\"RequestId\":\"dr-abc123\",\"RequestorWorkflowId\":\"workflow-12345\",\"State\":\"FINALIZED\",\"OwnerAccountId\":\"111122223333\",\"ExchangeToken\":\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\",\"ExpiresAt\":\"2025-01-15T18:30:00.123Z\",\"UpdatedAt\":\"2025-01-15T10:30:00.456Z\",\"Type\":\"ExchangeToken\"}",
  "Timestamp": "2025-01-15T10:30:00.789Z",
  "SignatureVersion": "1",
  "Signature": "...",
  "SigningCertURL": "...",
  "UnsubscribeURL": "..."
}
```

## 交換トークン
<a name="temporary-delegation-exchange-tokens"></a>

交換トークンは、顧客が委任リクエストを承認して完了したときに IAM から発行されます。製品プロバイダーは、この交換トークンを使用して AWS AWS STS GetDelegatedAccessToken API を呼び出し、顧客が承認したアクセス許可を持つ一時的な AWS 認証情報を取得します。交換トークン自体は AWS リソースへのアクセスを許可するものではなく、AWS STS を介して実際の認証情報と交換する必要があります。

交換トークンは、委任リクエストを作成した製品プロバイダーアカウントからのみ、引き換えが可能です。リクエストを行ったアカウントはこのトークンに埋め込まれ、承認された製品プロバイダーのみが、顧客アカウントにアクセスするための認証情報を取得できるようになっています。

### アクセス許可の有効期間
<a name="temporary-delegation-access-duration"></a>

委任期間は顧客が交換トークンを発行した時点からはじまります。製品プロバイダーが交換トークンを引き替えた時点ではありません。顧客がトークンを発行すると、
+ 製品プロバイダーは SNS 通知を介してトークンを受けとります
+ トークンは直ちに認証情報と交換できます
+ 認証情報は、発行時間から承認済みの期間が経過すると期限が切れます。
+ 製品プロバイダーは、期限が切れる前にトークンを複数回交換し、必要に応じて新しい認証情報を取得することができます。

### 複数の引き換え
<a name="temporary-delegation-multiple-redemptions"></a>

製品プロバイダーは、有効期間中にトークンを複数回交換して、新しい認証情報を取得することができます。ただし、同じ交換トークンから取得した認証情報はすべて、トークンを発行した時刻に基づき同時に期限が切れます。

例: 2 時間の委任リクエストを承認し、午前 10 時にトークンを発行する場合


| トークンの発行時刻 | トークン交換時刻 | 認証情報の有効期限 | 使用可能な時間 | 
| --- | --- | --- | --- | 
| 10:00 am | 10:00 am | 12:00 pm | 2 時間 | 
| 10:00 am | 午前 10 時 20 分 | 12:00 pm | 1 時間 40 分 | 
| 10:00 am | 午前 11 時 40 分 | 12:00 pm | 20 分 | 
| 10:00 am | 12:10 pm | 失敗 (トークンの有効期限切れ) | 0 分 | 

表に示すように、有効期間の後半でトークンを交換すると、製品プロバイダーの使用可能時間は短くなります。