

# AWS Security Incident Response で IAM を使用する方法
<a name="how-aws-security-incident-response-works-with-iam"></a>

 AWS Identity and Access Management IAMは、管理者が AWS リソースへのアクセスを安全にコントロールするために役立つ AWS のサービスです。IAM 管理者は、誰を*認証* サインインし、誰に AWS Security Incident Response リソースの使用を*許可する* アクセス許可を持たせるかを制御します。IAM では、AWS のサービスで追加料金は発生しません。


|  AWS Security Incident Response で使用できる IAM の機能  |   | 
| --- | --- | 
|  *IAM の機能*  |  *サービスの調整*  | 
|  アイデンティティベースのポリシー  |  あり  | 
|  リソースベースのポリシー  |  なし  | 
|  ポリシーアクション  |  あり  | 
|  ポリシーリソース  |  はい  | 
|  ポリシー条件キー  |  はい (グローバル)  | 
|  ACL  |  なし  | 
|  ABAC (ポリシー内のタグ)  |  あり  | 
|  一時的な認証情報  |  あり  | 
|  転送アクセスセッション (FAS)  |  あり  | 
|  サービスロール  |  いいえ  | 
|  サービスリンクロール  |  はい  | 

**Topics**
+ [AWS Security Incident Response のアイデンティティベースのポリシー](identity-based-policies.md)
+ [AWS Security Incident Response 向けのポリシー条件キー](policy-condition-keys-for-aws-security-incident-response.md)
+ [AWS Security Incident Response のアクセスコントロールリスト (ACL)](access-control-lists-acls-in-aws-security-incident-response.md)

# AWS Security Incident Response のアイデンティティベースのポリシー
<a name="identity-based-policies"></a>

 アイデンティティベースのポリシーは、IAM ユーザーグループ、ユーザーのグループ、ロールなど、アイデンティティにアタッチできる JSON 許可ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件をコントロールします。アイデンティティベースのポリシーを作成する方法については、*IAM ユーザーガイド* の [IAM ポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) を参照してください。

 IAM アイデンティティベースのポリシーでは、許可または拒否するアクションとリソース、およびアクションを許可または拒否する条件を指定できます。プリンシパルは、それが添付されているユーザーまたはロールに適用されるため、アイデンティティベースのポリシーでは指定できません。JSON ポリシーで使用できるすべての要素について学ぶには、「*IAM ユーザーガイド*」の「[IAM JSON ポリシーの要素のリファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)」を参照してください。

**Topics**
+ [アイデンティティベースのポリシーの例](iam-examples.md)
+ [ポリシーに関するベストプラクティス](policy-best-practices.md)
+ [AWS Security Incident Response コンソールを使用する](using-the-amazon-aws-security-incident-response-console.md)
+ [自分の権限の表示をユーザーに許可する](allow-users-to-view-their-own-permissions.md)
+ [リソースベースのポリシー](resource-based-policies.md)
+ [ポリシーアクション](policy-actions.md)

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

 デフォルトでは、 ユーザーおよびロールには、AWS Security Incident Response リソースを作成または変更する権限はありません。また、AWS マネジメントコンソール、AWS コマンドラインインターフェイス (AWS CLI)、または AWS API を使用してタスクを実行することもできません。IAM 管理者は、IAM ポリシーを作成して、リソースで必要なアクションを実行するためのアクセス許可をユーザーに付与できます。その後、管理者はロールに IAM ポリシーを追加し、ユーザーはロールを引き受けることができます。

 これらサンプルの JSON ポリシードキュメントを使用して、IAM アイデンティティベースのポリシーを作成する方法については、*IAM ユーザーガイド*の [IAM ポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) を参照してください。

 AWS Security Incident Response が定義するアクションとリソースタイプ (各リソースタイプの ARN の形式など) の詳細については、「*サービス認可リファレンス*」の「*Actions, resources, and condition keys for AWS Security Incident Response*」を参照してください。

# ポリシーに関するベストプラクティス
<a name="policy-best-practices"></a>

 ID ベースのポリシーは、ユーザーのアカウントで誰かが AWS Security Incident Response リソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションを実行すると、AWS アカウントに追加料金が発生する可能性があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください: 

 **AWS マネージドポリシーの使用を開始し、最小特権のアクセス許可に移行する** – ユーザーとワークロードへのアクセス許可の付与を開始するには、多くの一般的なユースケースのためにアクセス許可を付与する *AWS マネージドポリシー*を使用します。これらは AWS アカウントで使用できます。ユースケースに固有の AWS カスタマー管理ポリシーを定義して、アクセス許可を絞り込むことをお勧めします。詳細については、*IAM ユーザーガイド* の [AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) または [ジョブ機能の AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) を参照してください。

 **最小特権を適用する** – IAM ポリシーでアクセス許可を設定する場合は、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、*最小特権*アクセス許可とも呼ばれています。IAM を使用して許可を適用する方法の詳細については、*IAM ユーザーガイド* の [IAM でのポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) を参照してください。

**IAM ポリシーで条件を使用してアクセスをさらに制限する** - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。たとえば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。また、AWS CloudFormation などの特定の AWS サービスを介して使用する場合、条件を使用してサービスアクションへのアクセスを許可することもできます。詳細については、*IAM ユーザーガイド*」の「[IAM JSON ポリシー要素: 条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)」を参照してください。

**IAM アクセスアナライザー を使用して IAM ポリシーを検証し、安全で機能的な権限を確保する** - IAM アクセスアナライザー は、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、*IAM ユーザーガイド* の [IAM Access Analyzer ポリシーの検証](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) を参照してください。

**多要素認証 (MFA) を要求する** – AWS アカウントで IAM ユーザーまたはルートユーザーを要求するシナリオがある場合は、セキュリティを強化するために MFA をオンにします。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、*IAM ユーザーガイド* の [MFA 保護 API アクセスの設定](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) を参照してください。

 IAM でのベストプラクティスの詳細については、*IAM ユーザーガイド* の [IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) を参照してください。

# AWS Security Incident Response コンソールを使用する
<a name="using-the-amazon-aws-security-incident-response-console"></a>

 https://console.aws.amazon.com/security-ir/ にアクセスするには、アクセス許可の最小限のセットが必要です。これらの許可により、AWS アカウントの AWS Security Incident Response リソースに関する詳細を一覧表示および表示できるようにする必要があります。最小限必要なアクセス許可よりも制限が厳しいアイデンティティベースのポリシーを作成すると、そのポリシーを持つエンティティ (ユーザーまたはロール) ではコンソールが意図したとおりに機能しません。

 AWS CLI または AWS API のみを呼び出すユーザーには、コンソールの最小アクセス許可を付与する必要はありません。代わりに、実行しようとしている API オペレーションに一致するアクションのみへのアクセスを許可します。

 AWS Security Incident Response Access または ReadOnly AWS マネージドポリシーを添付して、ユーザーとロールがサービスコンソールを使用できるようにします。詳細については、「*IAM ユーザーガイド*」の「[ユーザーへのアクセス許可の追加](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)」を参照してください。

# 自分の権限の表示をユーザーに許可する
<a name="allow-users-to-view-their-own-permissions"></a>

 この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を IAM ユーザーに許可するポリシーの作成方法を示します。このポリシーには、コンソールで、または AWS CLI もしくは AWS API を使用してプログラム的に、このアクションを完了するための許可が含まれています。

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

 ***AWS Security Incident Response* 内のリソースベースのポリシー** 

 リソースベースのポリシーのサポート: なし 

 リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。リソースベースのポリシーには例として、IAM *ロールの信頼ポリシー* や Amazon S3 *バケットポリシー* があげられます。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスをコントロールできます。ポリシーがアタッチされているリソースの場合、指定されたプリンシパルがそのリソースに対して実行できるアクションと条件は、ポリシーによって定義されます。リソースベースのポリシーで、[[specify a principal]](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) (プリンシパルを指定する) 必要があります。プリンシパルには、アカウント、ユーザー、ロール、フェデレーティッドユーザー、または AWS のサービスを含めることができます。

 詳細については、「*IAM ユーザーガイド*」の「[IAM でのクロスアカウントのリソースへのアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)」を参照してください。

# ポリシーアクション
<a name="policy-actions"></a>

 ***AWS Security Incident Response のポリシーアクション*** 

 ポリシーアクションのサポート: あり 

 管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どの **プリンシパル** がどの **リソース** に対してどのような **条件下で** **アクション** を実行できるかということです。

 JSON ポリシーの Action 要素には、ポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。ポリシーアクションの名前は通常、関連する AWS API オペレーションと同じです。一致する API オペレーションのない *許可のみのアクション* など、いくつかの例外があります。また、ポリシーに複数のアクションが必要なオペレーションもあります。これらの追加アクションは *依存アクション* と呼ばれます。

 このアクションは、関連付けられたオペレーションを実行するための権限を付与するポリシーで使用されます。

 AWS Security Incident Response アクションのリストを確認するには、「*Service Authorization Reference*」の「Actions defined by AWS Security Incident Response」を参照してください。

 AWS Security Incident Response のポリシーアクションは、アクションの前に以下のプレフィックス を使用します。

 AWS Security Incident Response -identity 

 単一のステートメントで複数のアクションを指定するには、アクションをカンマで区切ります。

"Action": [ "AWS Security Incident Response -identity:action1", "AWS Security Incident Response -identity:action2" ]

 ***Amazon AWS Security Incident Response* のポリシーリソース** 

**ポリシーリソースのサポート:** あり。管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件下で****アクション**を実行できるかということです。

 Resource JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ステートメントには、リソースまたは NotResource 要素のいずれかが含まれている必要があります。ベストプラクティスとして、[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) を使用してリソースを指定します。これは、*リソースレベルの許可* と呼ばれる特定のリソースタイプをサポートするアクションに対して実行できます。

 オペレーションのリスト化など、リソースレベルの権限をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (\$1) を使用します。

 "Resource": "\$1"

# AWS Security Incident Response 向けのポリシー条件キー
<a name="policy-condition-keys-for-aws-security-incident-response"></a>

 **サービス固有のポリシー条件キーへのサポート:** なし 

 管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どの **プリンシパル** がどの **リソース** に対してどのような **条件下で** **アクション** を実行できるかということです。

 Condition 要素 (または Condition *ブロック*) を使用すると、ステートメントが有効な条件を指定できます。Condition 要素はオプションです。イコールや未満などの [条件演算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html) を使用して条件式を作成して、ポリシーの条件とリクエスト内の値を一致させることができます。

 1 つのステートメントに複数の Condition 要素を指定する場合、または 1 つの Condition 要素に複数のキーを指定する場合、AWS は論理 AND 演算を使用してそれらを評価します。単一の条件キーに複数の値を指定する場合、AWS は論理 OR 演算を使用して条件を評価します。ステートメントの権限が付与される前にすべての条件が満たされる必要があります。

 条件を指定する際にプレースホルダー変数も使用できます。例えば IAM ユーザーに、IAM ユーザー名がタグ付けされている場合のみリソースにアクセスできる権限を付与することができます。詳細については、「*IAM ユーザーガイド*」の「[‬IAM ポリシーの要素: 変数およびタグ‭](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html)」‬を参照してください。

 AWS はグローバル条件キーとサービス固有の条件キーをサポートしています。すべての AWS グローバル条件キーを確認するには、*IAM ユーザーガイド* の [AWS グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) を参照してください。

# AWS Security Incident Response のアクセスコントロールリスト (ACL)
<a name="access-control-lists-acls-in-aws-security-incident-response"></a>

 **ACL のサポート:** なし 

 アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするためのアクセス許可を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。

 ***AWS Security Incident Response での属性ベースのアクセス制御 (ABAC)*** 

 **ABAC (ポリシー内のタグ) のサポート:** あり 

 属性ベースのアクセス制御 (ABAC) は、属性に基づいてアクセス許可を定義する認可戦略です。AWS では、属性は *タグ* と呼ばれます。タグは、IAM エンティティ (ユーザーまたはロール)、および多数の AWS リソースにアタッチできます。エンティティとリソースのタグ付けは、ABAC の最初の手順です。その後、プリンシパルのタグがアクセスしようとしているリソースのタグと一致した場合にオペレーションを許可するように ABAC ポリシーをします。ABAC は、急成長する環境やポリシー管理が煩雑になる状況で役立ちます。

 タグに基づいてアクセスを制御するには、AWS:ResourceTag/key-name、AWS:RequestTag/key-name、または AWS:TagKeys の条件キーを使用して、ポリシーの[条件要素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)でタグ情報を提供します。サービスがすべてのリソースタイプに対して 3 つの条件キーすべてをサポートする場合、そのサービスの値は**あり**です。サービスが一部のリソースタイプに対してのみ 3 つの条件キーのすべてをサポートする場合、値は「**部分的**」になります。ABAC の詳細については、*IAM ユーザーガイド*の[ABAC とは?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) を参照してください。ABAC をセットアップするステップを説明するチュートリアルについては、*IAM ユーザーガイド* の [属性に基づくアクセスコントロール (ABAC) を使用する](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html) を参照してください。

 ***AWS Security Incident Response で一時的な認証情報を使用する*** 

**一時的な認証情報のサポート:** あり

AWS サービスは、一時的な認証情報を使用してサインインしても機能しません。一時的な認証情報を利用できる AWS のサービスを含めた詳細情報については、「*IAM ユーザーガイド*」の「[IAM と連携する AWS サービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。ユーザー名とパスワード以外の方法で AWS マネジメントコンソールにサインインする場合は、一時認証情報を使用していることになります。例えば、会社のシングルサインオン (SSO) リンクを使用して AWS にアクセスすると、そのプロセスは自動的に一時認証情報を作成します。また、ユーザーとしてコンソールにサインインしてからロールを切り替える場合も、一時的な認証情報が自動的に作成されます。ロールの切り替えに関する詳細については、「*IAM ユーザーガイド*」の「[ロールへの切り替え (コンソール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)」を参照してください。

 一時的な認証情報は、AWS CLI または AWS API を使用して手動で作成できます。作成後、一時認証情報を使用して AWS にアクセスできるようになります。AWS は、長期的なアクセスキーを使用する代わりに、一時認証情報を動的に生成することをお勧めします。詳細については、「[IAM の一時的セキュリティ認証情報](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)」を参照してください。

 ***AWS Security Incident Response の転送アクセスセッション*** 

 **転送アクセスセッション (FAS) のサポート:** あり 

 IAM ユーザーまたはロールを使用して AWS でアクションを実行するユーザーは、プリンシパルとみなされます。一部のサービスを使用する際に、アクションを実行することで、別のサービスの別のアクションがトリガーされることがあります。FAS は、AWS サービスを呼び出すプリンシパルの権限を、AWS サービスのリクエストと合わせて使用し、ダウンストリームのサービスに対してリクエストを行います。FAS リクエストは、サービスが、完了するために他の AWS サービスまたはリソースとのやりとりを必要とするリクエストを受け取ったときにのみ行われます。この場合、両方のアクションを実行するためのアクセス許可が必要です。FAS リクエストを行う際のポリシーの詳細については、「[転送アクセスセッション](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html)」を参照してください。