

AWS App Runner は、2026 年 4 月 30 日以降、新規のお客様に公開されなくなります。App Runner を使用する場合は、その日付より前にサインアップします。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[AWS App Runner  可用性の変更](https://docs.aws.amazon.com/apprunner/latest/dg/apprunner-availability-change.html)」を参照してください。

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

# App Runner のセキュリティ
<a name="security"></a>

でのクラウドセキュリティが最優先事項 AWS です。お客様は AWS 、セキュリティを最も重視する組織の要件を満たすように構築されたデータセンターとネットワークアーキテクチャからメリットを得られます。

セキュリティは、 AWS お客様とお客様の間の責任共有です。[責任共有モデル](https://aws.amazon.com/compliance/shared-responsibility-model/)ではこれをクラウド*の*セキュリティおよびクラウド*内*のセキュリティと説明しています。
+ **クラウドのセキュリティ** – AWS は、 で AWS サービスを実行するインフラストラクチャを保護する責任を担います AWS クラウド。 は、お客様が安全に使用できるサービス AWS も提供します。サードパーティーの監査者は、[AWS コンプライアンスプログラム](https://aws.amazon.com/compliance/programs/)コンプライアンスプログラムの一環として、当社のセキュリティの有効性を定期的にテストおよび検証。が適用されるコンプライアンスプログラムの詳細については AWS App Runner、「コンプライアンスプログラム[AWS による対象範囲内のサービスコンプライアンスプログラム](https://aws.amazon.com/compliance/services-in-scope/)」を参照してください。
+ **クラウドのセキュリティ** – お客様の責任は、使用する AWS サービスによって決まります。また、ユーザーは、データの機密性、会社の要件、適用される法律や規制など、その他の要因についても責任を負います。

このドキュメントは、App Runner を使用する際の責任共有モデルの適用方法を理解するのに役立ちます。以下のトピックでは、セキュリティとコンプライアンスの目的を達成するように App Runner を設定する方法について説明します。また、App Runner リソースのモニタリングや保護に役立つ他の AWS サービスの使用方法についても説明します。

**Topics**
+ [App Runner でのデータ保護](security-data-protection.md)
+ [App Runner の Identity and Access Management](security-iam.md)
+ [App Runner でのログ記録とモニタリング](security-monitoring.md)
+ [App Runner のコンプライアンス検証](security-compliance.md)
+ [App Runner の耐障害性](security-resilience.md)
+ [のインフラストラクチャセキュリティ AWS App Runner](security-infrastructure.md)
+ [VPC エンドポイントでの App Runner の使用](security-vpce.md)
+ [App Runner の設定と脆弱性の分析](security-shared-responsibility.md)
+ [App Runner のセキュリティのベストプラクティス](security-best-practices.md)

# App Runner でのデータ保護
<a name="security-data-protection"></a>

責任 AWS [共有モデル](https://aws.amazon.com/compliance/shared-responsibility-model/)、 でのデータ保護に適用されます AWS App Runner。このモデルで説明されているように、 AWS はすべての を実行するグローバルインフラストラクチャを保護する責任があります AWS クラウド。ユーザーは、このインフラストラクチャでホストされるコンテンツに対する管理を維持する責任があります。また、使用する「 AWS のサービス 」のセキュリティ設定と管理タスクもユーザーの責任となります。データプライバシーの詳細については、[データプライバシーに関するよくある質問](https://aws.amazon.com/compliance/data-privacy-faq/)を参照してください。欧州でのデータ保護の詳細については、*AWS セキュリティブログ*に投稿された「[AWS 責任共有モデルおよび GDPR](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/)」のブログ記事を参照してください。

データ保護の目的で、認証情報を保護し AWS アカウント 、 AWS IAM アイデンティティセンター または AWS Identity and Access Management (IAM) を使用して個々のユーザーを設定することをお勧めします。この方法により、それぞれのジョブを遂行するために必要な権限のみが各ユーザーに付与されます。また、次の方法でデータを保護することもお勧めします:
+ 各アカウントで多要素認証 (MFA) を使用します。
+ SSL/TLS を使用して AWS リソースと通信します。TLS 1.2 は必須ですが、TLS 1.3 を推奨します。
+ で API とユーザーアクティビティのログ記録を設定します AWS CloudTrail。CloudTrail 証跡を使用して AWS アクティビティをキャプチャする方法については、「 *AWS CloudTrail ユーザーガイド*」の[CloudTrail 証跡の使用](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-trails.html)」を参照してください。
+  AWS 暗号化ソリューションと、その中のすべてのデフォルトのセキュリティコントロールを使用します AWS のサービス。
+ Amazon Macie などの高度な管理されたセキュリティサービスを使用します。これらは、Amazon S3 に保存されている機密データの検出と保護を支援します。
+ コマンドラインインターフェイスまたは API AWS を介して にアクセスするときに FIPS 140-3 検証済み暗号化モジュールが必要な場合は、FIPS エンドポイントを使用します。利用可能な FIPS エンドポイントの詳細については、「[連邦情報処理規格 (FIPS) 140-3](https://aws.amazon.com/compliance/fips/)」を参照してください。

お客様の E メールアドレスなどの極秘または機密情報を、タグ、または **[名前]** フィールドなどの自由形式のテキストフィールドに含めないことを強くお勧めします。これは、コンソール、API、または SDK を使用して App Runner AWS CLIまたは他の AWS のサービス を使用する場合も同様です。 AWS SDKs タグ、または名前に使用される自由記述のテキストフィールドに入力したデータは、請求または診断ログに使用される場合があります。外部サーバーに URL を提供する場合、そのサーバーへのリクエストを検証できるように、認証情報を URL に含めないことを強くお勧めします。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

**Topics**
+ [暗号化を使用したデータの保護](security-data-protection-encryption.md)
+ [ネットワーク間のトラフィックのプライバシー](security-data-protection-internetwork.md)

# 暗号化を使用したデータの保護
<a name="security-data-protection-encryption"></a>

AWS App Runner は、指定したリポジトリからアプリケーションソース (ソースイメージまたはソースコード) を読み取り、サービスへのデプロイ用に保存します。詳細については、「[App Runner のアーキテクチャと概念](architecture.md)」を参照してください。

データ保護とは、*転送中* (App Runner との間で送受信されるデータ) と*保管中* ( AWS データセンターに格納されるデータ) のデータを保護することです。

データ保護の詳細については、「[App Runner でのデータ保護](security-data-protection.md)」を参照してください。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

## 転送中の暗号化
<a name="security-data-protection-encryption.in-transit"></a>

転送中のデータ保護は、Transport Layer Security (TLS) を使用して接続を暗号化するか、クライアント側の暗号化 (送信前にオブジェクトが暗号化される) を使用するという 2 つの方法で実現できます。どちらの方法も、アプリケーションデータを保護するために有効です。接続を保護するには、アプリケーション、その開発者と管理者、およびそのエンドユーザーがオブジェクトを送受信するたびに、TLS を使用して暗号化します。App Runner は、TLS 経由でトラフィックを受信するようにアプリケーションを設定します。

クライアント側の暗号化は、デプロイのために App Runner に提供するソースイメージまたはコードを保護する有効な方法ではありません。App Runner は暗号化できないように、アプリケーションソースにアクセスする必要があります。したがって、開発環境またはデプロイ環境と App Runner 間の接続は必ず保護してください。

## 保管時の暗号化とキー管理
<a name="security-data-protection-encryption.at-rest"></a>

アプリケーションの保管中のデータを保護するために、App Runner はアプリケーションソースイメージまたはソースバンドルのすべての保存済みコピーを暗号化します。App Runner サービスを作成するときに、 を指定できます AWS KMS key。指定した場合、App Runner は指定されたキーを使用してソースを暗号化します。指定しない場合、App Runner は AWS マネージドキー 代わりに を使用します。

App Runner サービス作成パラメータの詳細については、[CreateService](https://docs.aws.amazon.com/apprunner/latest/api/API_CreateService.html)」を参照してください。 AWS Key Management Service (AWS KMS) の詳細については、「 [AWS Key Management Service デベロッパーガイド](https://docs.aws.amazon.com/kms/latest/developerguide/)」を参照してください。

# ネットワーク間のトラフィックのプライバシー
<a name="security-data-protection-internetwork"></a>

App Runner は Amazon Virtual Private Cloud (Amazon VPC) を使用して、App Runner アプリケーション内のリソース間の境界を作成し、それらのリソース、オンプレミスネットワーク、インターネット間のトラフィックを制御します。Amazon VPC セキュリティの詳細については、[「Amazon VPC ユーザーガイド」の「Amazon VPC でのインターネットワークトラフィックのプライバシー](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Security.html)」を参照してください。 **

App Runner アプリケーションをカスタム Amazon VPC に関連付ける方法については、「」を参照してください[送信トラフィックの VPC アクセスの有効化](network-vpc.md)。

VPC エンドポイントを使用して App Runner へのリクエストを保護する方法については、「」を参照してください[VPC エンドポイントでの App Runner の使用](security-vpce.md)。

データ保護の詳細については、「[App Runner でのデータ保護](security-data-protection.md)」を参照してください。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

# App Runner の Identity and Access Management
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) は、管理者が AWS リソースへのアクセスを安全に制御 AWS のサービス するのに役立つ です。IAM 管理者は、誰を*認証* (サインイン) し、誰に App Runner リソースの使用*を許可する* (アクセス許可を付与する) かを制御します。IAM は、追加料金なしで使用できる AWS のサービス です。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

**Topics**
+ [オーディエンス](#security-iam.audience)
+ [アイデンティティを使用した認証](#security-iam.authentication)
+ [ポリシーを使用したアクセスの管理](#security-iam.access-manage)
+ [App Runner と IAM の連携方法](security_iam_service-with-iam.md)
+ [App Runner アイデンティティベースのポリシーの例](security_iam_id-based-policy-examples.md)
+ [App Runner のサービスにリンクされたロールの使用](security-iam-slr.md)
+ [AWS の マネージドポリシー AWS App Runner](security-iam-awsmanpol.md)
+ [App Runner の ID とアクセスのトラブルシューティング](security_iam_troubleshoot.md)

## オーディエンス
<a name="security-iam.audience"></a>

 AWS Identity and Access Management (IAM) の使用方法は、ロールによって異なります。
+ **サービスユーザー** - 機能にアクセスできない場合は、管理者にアクセス許可をリクエストします (「[App Runner の ID とアクセスのトラブルシューティング](security_iam_troubleshoot.md)」を参照)。
+ **サービス管理者** - ユーザーアクセスを決定し、アクセス許可リクエストを送信します (「[App Runner と IAM の連携方法](security_iam_service-with-iam.md)」を参照)
+ **IAM 管理者** - アクセスを管理するためのポリシーを作成します (「[App Runner アイデンティティベースのポリシーの例](security_iam_id-based-policy-examples.md)」を参照)

## アイデンティティを使用した認証
<a name="security-iam.authentication"></a>

認証とは、ID 認証情報 AWS を使用して にサインインする方法です。、IAM ユーザー AWS アカウントのルートユーザー、または IAM ロールを引き受けることで認証される必要があります。

 AWS IAM アイデンティティセンター (IAM Identity Center)、シングルサインオン認証、Google/Facebook 認証情報などの ID ソースからの認証情報を使用して、フェデレーティッド ID としてサインインできます。サインインの詳細については、「*AWS サインイン ユーザーガイド*」の「[AWS アカウントにサインインする方法](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html)」を参照してください。

プログラムによるアクセスの場合、 は SDK と CLI AWS を提供してリクエストを暗号化して署名します。詳細については、「*IAM ユーザーガイド*」の「[API リクエストに対するAWS 署名バージョン 4](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)」を参照してください。

### AWS アカウント ルートユーザー
<a name="security-iam.authentication.rootuser"></a>

 を作成するときは AWS アカウント、まず、すべての AWS のサービス および リソースへの完全なアクセス権を持つ AWS アカウント *root ユーザー*と呼ばれる 1 つのサインインアイデンティティから始めます。日常的なタスクには、ルートユーザーを使用しないことを強くお勧めします。ルートユーザー認証情報を必要とするタスクについては、「*IAM ユーザーガイド*」の「[ルートユーザー認証情報が必要なタスク](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)」を参照してください。

### IAM ユーザーとグループ
<a name="security-iam.authentication-iamuser"></a>

*[IAM ユーザー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)*は、特定の個人やアプリケーションに対する特定のアクセス許可を持つアイデンティティです。長期認証情報を持つ IAM ユーザーの代わりに一時的な認証情報を使用することをお勧めします。詳細については、*IAM ユーザーガイド*の[「ID プロバイダーとのフェデレーションを使用して にアクセスすることを人間 AWS のユーザーに要求する](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp)」を参照してください。

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html)は、IAM ユーザーの集合を指定し、大量のユーザーに対するアクセス許可の管理を容易にします。詳細については、「*IAM ユーザーガイド*」の「[IAM ユーザーに関するユースケース](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html)」を参照してください。

### IAM ロール
<a name="security-iam.authentication.iamrole"></a>

*[IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)*は、特定のアクセス許可を持つアイデンティであり、一時的な認証情報を提供します。ユーザー[から IAM ロール (コンソール) に切り替えるか、 または API オペレーションを呼び出すことで、ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)を引き受けることができます。 AWS CLI AWS 詳細については、「*IAM ユーザーガイド*」の「[ロールを引き受けるための各種方法](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html)」を参照してください。

IAM ロールは、フェデレーションユーザーアクセス、一時的な IAM ユーザーのアクセス許可、クロスアカウントアクセス、クロスサービスアクセス、および Amazon EC2 で実行するアプリケーションに役立ちます。詳細については、*IAM ユーザーガイド* の [IAM でのクロスアカウントリソースアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) を参照してください。

## ポリシーを使用したアクセスの管理
<a name="security-iam.access-manage"></a>

でアクセスを制御する AWS には、ポリシーを作成し、ID AWS またはリソースにアタッチします。ポリシーは、ID またはリソースに関連付けられたときにアクセス許可を定義します。 は、プリンシパルがリクエストを行うときにこれらのポリシー AWS を評価します。ほとんどのポリシーは JSON ドキュメント AWS として に保存されます。JSON ポリシードキュメントの詳細については、「*IAM ユーザーガイド*」の「[JSON ポリシー概要](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json)」を参照してください。

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

デフォルトでは、ユーザーやロールにアクセス許可はありません。IAM 管理者は IAM ポリシーを作成してロールに追加し、このロールをユーザーが引き受けられるようにします。IAM ポリシーは、オペレーションの実行方法を問わず、アクセス許可を定義します。

### アイデンティティベースのポリシー
<a name="security-iam.access-manage.id-based-policies"></a>

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

アイデンティティベースのポリシーは、*インラインポリシー* (単一の ID に直接埋め込む) または*管理ポリシー* (複数の ID にアタッチされたスタンドアロンポリシー) にすることができます。管理ポリシーとインラインポリシーのいずれかを選択する方法については、「*IAM ユーザーガイド*」の「[管理ポリシーとインラインポリシーのいずれかを選択する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html)」を参照してください。

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

リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。例としては、IAM *ロール信頼ポリシー*や Amazon S3 *バケットポリシー*などがあります。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスを制御できます。リソースベースのポリシーでは、[プリンシパルを指定する](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html)必要があります。

リソースベースのポリシーは、そのサービス内にあるインラインポリシーです。リソースベースのポリシーでは、IAM の AWS マネージドポリシーを使用できません。

### アクセスコントロールリスト (ACL)
<a name="security-iam.ccess-manage.acl"></a>

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

Amazon S3、および Amazon VPC は AWS WAF、ACLs。ACL の詳細については、*Amazon Simple Storage Service デベロッパーガイド* の [アクセスコントロールリスト (ACL) の概要](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) を参照してください。

### その他のポリシータイプ
<a name="security-iam.access-manage.other-policies"></a>

AWS は、より一般的なポリシータイプによって付与されるアクセス許可の上限を設定できる追加のポリシータイプをサポートしています。
+ **アクセス許可の境界** – アイデンティティベースのポリシーで IAM エンティティに付与することのできるアクセス許可の数の上限を設定します。詳細については、「*IAM ユーザーガイド*」の「[IAM エンティティのアクセス許可境界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)」を参照してください。
+ **サービスコントロールポリシー (SCP)** - AWS Organizations内の組織または組織単位の最大のアクセス許可を指定します。詳細については、「*AWS Organizations ユーザーガイド*」の「[サービスコントロールポリシー](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)」を参照してください。
+ **リソースコントロールポリシー (RCP)** – は、アカウント内のリソースで利用できる最大数のアクセス許可を定義します。詳細については、「*AWS Organizations ユーザーガイド*」の「[リソースコントロールポリシー (RCP)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html)」を参照してください。
+ **セッションポリシー** – ロールまたはフェデレーションユーザーの一時セッションを作成する際にパラメータとして渡される高度なポリシーです。詳細については、「*IAM ユーザーガイド*」の「[セッションポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)」を参照してください。

### 複数のポリシータイプ
<a name="security-iam.access-manage.multiple-policies"></a>

1 つのリクエストに複数のタイプのポリシーが適用されると、結果として作成されるアクセス許可を理解するのがさらに難しくなります。が複数のポリシータイプが関与する場合にリクエストを許可するかどうか AWS を決定する方法については、*「IAM ユーザーガイド*」の[「ポリシー評価ロジック](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html)」を参照してください。

# App Runner と IAM の連携方法
<a name="security_iam_service-with-iam"></a>

IAM を使用して へのアクセスを管理する前に AWS App Runner、App Runner で使用できる IAM 機能を理解しておく必要があります。App Runner およびその他の AWS のサービスが IAM と連携する方法の概要を把握するには、IAM *ユーザーガイド*の[AWS 「IAM と連携する のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

**Topics**
+ [App Runner アイデンティティベースのポリシー](#security_iam_service-with-iam-id-based-policies)
+ [App Runner リソースベースのポリシー](#security_iam_service-with-iam-resource-based-policies)
+ [App Runner タグに基づく認可](#security_iam_service-with-iam-tags)
+ [App Runner ユーザーアクセス許可](#security_iam_service-with-iam-users)
+ [App Runner IAM ロール](#security_iam_service-with-iam-roles)

## App Runner アイデンティティベースのポリシー
<a name="security_iam_service-with-iam-id-based-policies"></a>

IAM アイデンティティベースのポリシーでは許可または拒否するアクションとリソース、またアクションを許可または拒否する条件を指定できます。App Runner は、特定のアクション、リソース、および条件キーをサポートしています。JSON ポリシーで使用するすべての要素については、「IAM ユーザーガイド」の「[IAM JSON ポリシー要素のリファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)」を参照してください。

### アクション
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

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

JSON ポリシーの `Action` 要素にはポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。このアクションは関連付けられたオペレーションを実行するためのアクセス許可を付与するポリシーで使用されます。

App Runner のポリシーアクションは、アクションの前にプレフィックス を使用します`apprunner:`。たとえば、 Amazon EC2 `RunInstances` API オペレーションで Amazon EC2 インスタンスを実行するためのアクセス許可をユーザーに付与するには、ポリシーに `ec2:RunInstances` アクションを含めます。ポリシーステートメントには、`Action` または `NotAction` エレメントを含める必要があります。App Runner は、このサービスで実行できるタスクを記述する独自のアクションのセットを定義します。

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

```
"Action": [
   "apprunner:CreateService",
   "apprunner:CreateConnection"
]
```

ワイルドカード (\$1) を使用して複数アクションを指定できます。例えば、`Describe` という単語で始まるすべてのアクションを指定するには次のアクションを含めます。

```
"Action": "apprunner:Describe*"
```



App Runner アクションのリストを確認するには、*「サービス認可リファレンス*」の[「 で定義されるアクション AWS App Runner](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsapprunner.html#awsapprunner-actions-as-permissions)」を参照してください。

### リソース
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

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

`Resource` JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ベストプラクティスとして、[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) を使用してリソースを指定します。リソースレベルのアクセス許可をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (\$1) を使用します。

```
"Resource": "*"
```



App Runner リソースには、次の ARN 構造があります。

```
arn:aws:apprunner:region:account-id:resource-type/resource-name[/resource-id]
```

ARN の形式の詳細については、の[「Amazon リソースネーム (ARNs) と AWS サービス名前空間](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)」を参照してください*AWS 全般のリファレンス*。

たとえば、 ステートメントで `my-service`サービスを指定するには、次の ARN を使用します。

```
"Resource": "arn:aws:apprunner:us-east-1:123456789012:service/my-service"
```

特定のアカウントに属するすべてのサービスを指定するには、ワイルドカード (\$1) を使用します。

```
"Resource": "arn:aws:apprunner:us-east-1:123456789012:service/*"
```

リソースを作成するためのアクションなど、一部の App Runner アクションは、特定のリソースで実行できません。このような場合はワイルドカード \$1を使用する必要があります。

```
"Resource": "*"
```

App Runner リソースタイプとその ARNs「 [で定義されるリソース AWS App Runner](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsapprunner.html#awsapprunner-resources-for-iam-policies)」を参照してください。 **どのアクションで各リソースの ARN を指定できるかについては、「[AWS App Runnerで定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsapprunner.html#awsapprunner-actions-as-permissions)」を参照してください。

### 条件キー
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

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

`Condition` 要素は、定義された基準に基づいてステートメントが実行される時期を指定します。イコールや未満などの[条件演算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)を使用して条件式を作成して、ポリシーの条件とリクエスト内の値を一致させることができます。すべての AWS グローバル条件キーを確認するには、*「IAM ユーザーガイド*」の[AWS 「グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)」を参照してください。

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

App Runner は、サービス固有の条件キーのセットを定義します。さらに、App Runner は、条件キーを使用して実装されるタグベースのアクセスコントロールをサポートしています。詳細については、「[App Runner タグに基づく認可](#security_iam_service-with-iam-tags)」を参照してください。

App Runner 条件キーのリストを確認するには、*「サービス認可リファレンス*」の「 [の条件キー AWS App Runner](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsapprunner.html#awsapprunner-policy-keys)」を参照してください。条件キーを使用できるアクションとリソースについては、[「 で定義されるアクション AWS App Runner](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsapprunner.html#awsapprunner-actions-as-permissions)」を参照してください。

### 例
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>

App Runner アイデンティティベースのポリシーの例を表示するには、「」を参照してください[App Runner アイデンティティベースのポリシーの例](security_iam_id-based-policy-examples.md)。

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

App Runner はリソースベースのポリシーをサポートしていません。

## App Runner タグに基づく認可
<a name="security_iam_service-with-iam-tags"></a>

App Runner リソースにタグをアタッチするか、App Runner へのリクエストでタグを渡すことができます。タグに基づいてアクセスを管理するには、`apprunner:ResourceTag/key-name`、`aws:RequestTag/key-name`、または `aws:TagKeys` の条件キーを使用して、ポリシーの[条件要素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)でタグ情報を提供します。App Runner リソースのタグ付けの詳細については、「」を参照してください[App Runner サービスの設定](manage-configure.md)。

リソースのタグに基づいてリソースへのアクセスを制限するためのアイデンティティベースポリシーの例を表示するには、「[タグに基づく App Runner サービスへのアクセスの制御](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-view-widget-tags)」を参照してください。

## App Runner ユーザーアクセス許可
<a name="security_iam_service-with-iam-users"></a>

App Runner を使用するには、IAM ユーザーに App Runner アクションへのアクセス許可が必要です。ユーザーにアクセス許可を付与する一般的な方法は、IAM ユーザーまたはグループにポリシーをアタッチすることです。ユーザーアクセス許可の管理の詳細については、IAM [ユーザーガイドの「IAM ユーザーのアクセス許可の変更](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html)」を参照してください。 **

App Runner には、ユーザーにアタッチできる 2 つの管理ポリシーが用意されています。
+ [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSAppRunnerReadOnlyAccess.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSAppRunnerReadOnlyAccess.html) – App Runner リソースの詳細を一覧表示および表示するアクセス許可を付与します。
+ [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSAppRunnerFullAccess.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSAppRunnerFullAccess.html)– すべての App Runner アクションにアクセス許可を付与します。

ユーザーアクセス許可をより詳細に制御するには、カスタムポリシーを作成してユーザーにアタッチします。詳細については、[IAM ユーザーガイドの「IAM ポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)」を参照してください。 **

ユーザーポリシーの例については、「」を参照してください[ユーザーポリシー](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-users)。

## App Runner IAM ロール
<a name="security_iam_service-with-iam-roles"></a>

[IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)は、特定のアクセス許可 AWS アカウント を持つ 内のエンティティです。

### サービスリンクロール
<a name="security_iam_service-with-iam-roles-service-linked"></a>

[サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用すると、 AWS サービスは他の サービスのリソースにアクセスして、ユーザーに代わってアクションを実行できます。サービスリンクロールは IAM アカウント内に表示され、サービスによって所有されます。IAM 管理者は、サービスリンクロールの許可を表示できますが、編集することはできません。

App Runner は、サービスにリンクされたロールをサポートしています。App Runner サービスにリンクされたロールの作成または管理については、「」を参照してください[App Runner のサービスにリンクされたロールの使用](security-iam-slr.md)。

### サービス役割
<a name="security_iam_service-with-iam-roles-service"></a>

この機能により、ユーザーに代わってサービスが[サービスロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role)を引き受けることが許可されます。この役割により、サービスがお客様に代わって他のサービスのリソースにアクセスし、アクションを完了することが許可されます。サービスロールはIAM アカウントに表示され、アカウントによって所有されます。つまり、IAM ユーザーはこのロールのアクセス許可を変更できます。ただし、それにより、サービスの機能が損なわれる場合があります。

App Runner は、いくつかのサービスロールをサポートしています。

#### アクセスロール
<a name="security_iam_service-with-iam-roles-service.access"></a>

アクセスロールは、App Runner がアカウントの Amazon Elastic Container Registry (Amazon ECR) 内のイメージにアクセスするために使用するロールです。Amazon ECR 内のイメージにアクセスする必要があり、Amazon ECR Public では必須ではありません。

Amazon ECR のイメージに基づいてサービスを作成する前に、IAM を使用してサービスロールを作成します。サービスロール[https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSAppRunnerServicePolicyForECRAccess.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSAppRunnerServicePolicyForECRAccess.html)で 管理ポリシーを使用します。その後、[SourceConfiguration](https://docs.aws.amazon.com/apprunner/latest/api/API_SourceConfiguration.html)Configuration パラメータの [AuthenticationConfiguration](https://docs.aws.amazon.com/apprunner/latest/api/API_AuthenticationConfiguration.html) メンバーで [CreateService](https://docs.aws.amazon.com/apprunner/latest/api/API_CreateService.html) API を呼び出すとき、または App Runner コンソールを使用してサービスを作成するときに、このロールを App Runner に渡すことができます。

**注記**  
アクセスロールに独自のカスタムポリシーを作成する場合は、必ず `ecr:GetAuthorizationToken` アクション`"Resource": "*"`に を指定してください。トークンを使用して、アクセスできる任意の Amazon ECR レジストリにアクセスできます。

アクセスロールを作成するときは、App Runner サービスプリンシパルを信頼されたエンティティ`build.apprunner.amazonaws.com`として宣言する信頼ポリシーを必ず追加してください。

##### アクセスロールの信頼ポリシー
<a name="security_iam_service-with-iam-roles-service.access.trust"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "build.apprunner.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

App Runner コンソールを使用してサービスを作成する場合、コンソールは自動的にアクセスロールを作成し、新しいサービス用に選択することができます。コンソールには、アカウントの他のロールも一覧表示されます。必要に応じて別のロールを選択できます。

#### インスタンスロール
<a name="security_iam_service-with-iam-roles-service.instance"></a>

インスタンスロールは、App Runner がサービスのコンピューティングインスタンスに必要な AWS サービスアクションにアクセス許可を付与するために使用するオプションのロールです。アプリケーションコードが AWS アクション (APIs) を呼び出す場合は、App Runner にインスタンスロールを提供する必要があります。必要なアクセス許可をインスタンスロールに埋め込むか、独自のカスタムポリシーを作成してインスタンスロールで使用します。コードが使用する呼び出しを予測する方法はありません。したがって、この目的のために管理ポリシーは提供しません。

App Runner サービスを作成する前に、IAM を使用して、必要なカスタムポリシーまたは埋め込みポリシーでサービスロールを作成します。その後、InstanceConfiguration パラメータ`InstanceRoleArn`のメンバーで [CreateService](https://docs.aws.amazon.com/apprunner/latest/api/API_CreateService.html) API を呼び出すとき、または App Runner コンソールを使用してサービスを作成するときに、このロールをインスタンスロールとして App Runner に渡すことができます。 [InstanceConfiguration](https://docs.aws.amazon.com/apprunner/latest/api/API_InstanceConfiguration.html) 

インスタンスロールを作成するときは、App Runner サービスプリンシパルを信頼されたエンティティ`tasks.apprunner.amazonaws.com`として宣言する信頼ポリシーを必ず追加してください。

##### インスタンスロールの信頼ポリシー
<a name="security_iam_service-with-iam-roles-service.instance.trust"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "tasks.apprunner.aws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

App Runner コンソールを使用してサービスを作成する場合、コンソールにはアカウントのロールが一覧表示され、この目的のために作成したロールを選択できます。

サービスの作成の詳細については、「」を参照してください[App Runner サービスの作成](manage-create.md)。

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

デフォルトでは、IAM ユーザーとロールには AWS App Runner リソースを作成または変更するアクセス許可はありません。また、 AWS マネジメントコンソール、 AWS CLI、または AWS API を使用してタスクを実行することはできません。IAM 管理者は、ユーザーとロールに必要な、指定されたリソースで特定の API オペレーションを実行する権限をユーザーとロールに付与する IAM ポリシーを作成する必要があります。続いて、管理者はそれらの権限が必要な IAM ユーザーまたはグループにそのポリシーをアタッチする必要があります。

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

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

**Topics**
+ [ポリシーに関するベストプラクティス](#security_iam_service-with-iam-policy-best-practices)
+ [ユーザーポリシー](#security_iam_id-based-policy-examples-users)
+ [タグに基づく App Runner サービスへのアクセスの制御](#security_iam_id-based-policy-examples-view-widget-tags)

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

ID ベースのポリシーは、アカウント内で App Runner リソースを作成、アクセス、または削除できるかどうかを決定します。これらのアクションでは、 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。詳細については、*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) を要求する** – で IAM ユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、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) を参照してください。

## ユーザーポリシー
<a name="security_iam_id-based-policy-examples-users"></a>

App Runner コンソールにアクセスするには、IAM ユーザーに最小限のアクセス許可が必要です。これらのアクセス許可により、 の App Runner リソースの詳細を一覧表示および表示できます AWS アカウント。最低限必要なアクセス許可よりも制限の厳しいアイデンティティベースのポリシーを作成すると、そのポリシーを持つユーザーに対してコンソールは意図したとおりに機能しません。

App Runner には、ユーザーにアタッチできる 2 つの管理ポリシーが用意されています。
+ `AWSAppRunnerReadOnlyAccess` – App Runner リソースの詳細を一覧表示および表示するアクセス許可を付与します。
+ `AWSAppRunnerFullAccess` – すべての App Runner アクションにアクセス許可を付与します。

ユーザーが App Runner コンソールを使用できるようにするには、少なくとも `AWSAppRunnerReadOnlyAccess`管理ポリシーをユーザーにアタッチします。代わりに `AWSAppRunnerFullAccess`管理ポリシーをアタッチするか、特定のアクセス許可を追加して、ユーザーがリソースを作成、変更、削除できるようにします。詳細については、「**IAM ユーザーガイド」の「[ユーザーへのアクセス許可の追加](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)」を参照してください。

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

次の例は、カスタムユーザーポリシーを示しています。独自のカスタムユーザーポリシーを定義するための出発点として使用できます。この例をコピーし、アクションの削除、リソースのスコープダウン、条件の追加を行います。

### 例: コンソールと接続管理のユーザーポリシー
<a name="security_iam_id-based-policy-examples-users.connection-only"></a>

このポリシー例では、コンソールアクセスを有効にし、接続の作成と管理を許可します。App Runner サービスの作成と管理は許可されません。これは、ソースコードアセットへの App Runner サービスアクセスを管理するロールを持つユーザーにアタッチできます。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "apprunner:List*",
        "apprunner:Describe*",
        "apprunner:CreateConnection",
        "apprunner:DeleteConnection"
      ],
      "Resource": "*"
    }
  ]
}
```

------

### 例: 条件キーを使用するユーザーポリシー
<a name="security_iam_id-based-policy-examples-users.services-only"></a>

このセクションの例では、一部のリソースプロパティまたはアクションパラメータに依存する条件付きアクセス許可を示します。

このポリシー例では、App Runner サービスの作成を有効にしますが、 という名前の接続の使用を拒否します`prod`。

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

****  

```
  { "Version":"2012-10-17",		 	 	 
  "Statement": 
     [ { "Sid": "AllowCreateAppRunnerServiceWithNonProdConnections", 
         "Effect": "Allow",
         "Action": "apprunner:CreateService",
         "Resource": "*",
         "Condition": 
            { "ArnNotLike":
               {"apprunner:ConnectionArn":"arn:aws:apprunner:*:*:connection/prod/*"} 
            } 
       }
     ] 
   }
```

------

このポリシー例では、 という名前の自動スケーリング設定`preprod`でのみ という名前の App Runner サービスを更新できます`preprod`。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowUpdatePreProdAppRunnerServiceWithPreProdASConfig",
            "Effect": "Allow",
            "Action": "apprunner:UpdateService",
            "Resource": "arn:aws:apprunner:*:*:service/preprod/*",
            "Condition": {
                "ArnLike": {
                    "apprunner:AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:*:autoscalingconfiguration/preprod/*"
                 }
               }
         }
     ]
}
```

------

## タグに基づく App Runner サービスへのアクセスの制御
<a name="security_iam_id-based-policy-examples-view-widget-tags"></a>

アイデンティティベースのポリシーの条件を使用して、タグに基づいて App Runner リソースへのアクセスを制御できます。この例では、App Runner サービスの削除を許可するポリシーを作成する方法を示します。ただし、アクセス許可は、サービスタグ `Owner` にそのユーザーのユーザー名の値がある場合のみ、付与されます。このポリシーでは、このアクションをコンソールで実行するために必要なアクセス許可も付与します。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "ListServicesInConsole",
      "Effect": "Allow",
      "Action": "apprunner:ListServices",
      "Resource": "*"
    },
    {
      "Sid": "DeleteServiceIfOwner",
      "Effect": "Allow",
      "Action": "apprunner:DeleteService",
      "Resource": "arn:aws:apprunner:us-east-1:*:service/*",
      "Condition": {
        "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"}
      }
    }
  ]
}
```

------

このポリシーをアカウントの IAM ユーザーにアタッチできます。という名前のユーザーが App Runner サービスを削除`richard-roe`しようとする場合は、サービスに `Owner=richard-roe`または のタグを付ける必要があります`owner=richard-roe`。それ以外の場合、アクセスは拒否されます。条件キー名では大文字と小文字が区別されないため、条件タグキー `Owner` は `Owner` と `owner` の両方に一致します。詳細については、「*IAM ユーザーガイド*」の「[IAM JSON ポリシー要素：条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)」を参照してください。

# App Runner のサービスにリンクされたロールの使用
<a name="security-iam-slr"></a>

AWS App Runner は AWS Identity and Access Management (IAM)[ サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスにリンクされたロールは、App Runner に直接リンクされた一意のタイプの IAM ロールです。サービスにリンクされたロールは App Runner によって事前定義されており、サービスがユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

**Topics**
+ [管理にロールを使用する](using-service-linked-roles-management.md)
+ [ネットワークにロールを使用する](using-service-linked-roles-networking.md)

# 管理にロールを使用する
<a name="using-service-linked-roles-management"></a>

AWS App Runner は AWS Identity and Access Management (IAM)[ サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスにリンクされたロールは、App Runner に直接リンクされた一意のタイプの IAM ロールです。サービスにリンクされたロールは App Runner によって事前定義されており、サービスがユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

サービスにリンクされたロールを使用すると、必要なアクセス許可を手動で追加する必要がなくなるため、App Runner の設定が簡単になります。App Runner は、サービスにリンクされたロールのアクセス許可を定義します。特に定義されている場合を除き、App Runner のみがそのロールを引き受けることができます。定義される許可は信頼ポリシーと許可ポリシーに含まれており、その許可ポリシーを他の IAM エンティティにアタッチすることはできません。

サービスリンクロールを削除するには、最初に関連リソースを削除する必要があります。これにより、リソースへのアクセス許可が誤って削除されないため、App Runner リソースが保護されます。

サービスにリンクされたロールをサポートする他のサービスについては、「[IAM と連携するAWS サービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照して、**サービスにリンクされたロール**列が**はい**になっているサービスを見つけてください。サービスにリンクされた役割に関するドキュメントをサービスで表示するには[**はい**] リンクを選択してください。

## App Runner のサービスにリンクされたロールのアクセス許可
<a name="service-linked-role-permissions-management"></a>

App Runner は、**AWSServiceRoleForAppRunner** という名前のサービスにリンクされたロールを使用します。

このロールにより、App Runner は次のタスクを実行できます。
+ Amazon CloudWatch Logs Logs ロググループにログをプッシュします。
+ Amazon Elastic Container Registry (Amazon ECR) イメージプッシュをサブスクライブする Amazon CloudWatch Events ルールを作成します。
+ トレース情報を に送信します AWS X-Ray。

AWSServiceRoleForAppRunner サービスにリンクされたロールは、次のサービスを信頼してロールを引き受けます。
+ `apprunner.amazonaws.com`

AWSServiceRoleForAppRunner サービスにリンクされたロールのアクセス許可ポリシーには、App Runner がユーザーに代わってアクションを実行するために必要なすべてのアクセス許可が含まれています。
+ 管理ポリシー [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AppRunnerServiceRolePolicy.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AppRunnerServiceRolePolicy.html)
+ X-Ray トレースのポリシー – 次のポリシーの内容を参照してください。

### X-Ray トレースのポリシー
<a name="service-linked-role-permissions-management.policy2"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "xray:PutTraceSegments",
        "xray:PutTelemetryRecords",
        "xray:GetSamplingRules",
        "xray:GetSamplingTargets",
        "xray:GetSamplingStatisticSummaries"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

------

サービスリンクロールの作成、編集、削除を IAM エンティティ (ユーザー、グループ、ロールなど) に許可するにはアクセス許可を設定する必要があります。詳細については、「*IAM ユーザーガイド*」の「[サービスリンクロールの許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)」を参照してください。

## App Runner のサービスにリンクされたロールの作成
<a name="create-service-linked-role-management"></a>

サービスリンクロールを手動で作成する必要はありません。 AWS マネジメントコンソール、、 AWS CLIまたは AWS API で App Runner サービスを作成すると、App Runner によってサービスにリンクされたロールが作成されます。

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は同じ方法でアカウントにロールを再作成できます。App Runner サービスを作成すると、App Runner によってサービスにリンクされたロールが再度作成されます。

## App Runner のサービスにリンクされたロールの編集
<a name="edit-service-linked-role-management"></a>

App Runner では、AWSServiceRoleForAppRunner サービスにリンクされたロールを編集することはできません。サービスリンクロールの作成後は、さまざまなエンティティがロールを参照する可能性があるため、ロール名を変更することはできません。ただし、IAM を使用してロールの説明を編集することはできます。詳細については、「*IAM ユーザーガイド*」の「[サービスリンクロールの編集](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## App Runner のサービスにリンクされたロールの削除
<a name="delete-service-linked-role-management"></a>

サービスリンクロールを必要とする機能やサービスが不要になった場合は、ロールを削除することをお勧めします。そうすることで、モニタリングや保守が積極的に行われていない未使用のエンティティを排除できます。ただし、手動で削除する前に、サービスリンク役割をクリーンアップする必要があります。

### サービスリンク役割のクリーンアップ
<a name="service-linked-role-review-before-delete-management"></a>

IAM を使用してサービスにリンクされた役割を削除するには最初に、その役割で使用されているリソースをすべて削除する必要があります。

App Runner では、これはアカウント内のすべての App Runner サービスを削除することを意味します。App Runner サービスの削除については、「」を参照してください[App Runner サービスの削除](manage-delete.md)。

**注記**  
リソースを削除しようとしたときに App Runner サービスがロールを使用している場合、削除が失敗する可能性があります。失敗した場合は数分待ってから操作を再試行してください。

### サービスにリンクされたロールを手動で削除する
<a name="slr-manual-delete-management"></a>

IAM コンソール、 AWS CLI、または AWS API を使用して、AWSServiceRoleForAppRunner サービスにリンクされたロールを削除します。詳細については、「[IAM ユーザーガイド](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)」の「*サービスリンクロールの削除*」を参照してください。

## App Runner サービスにリンクされたロールでサポートされているリージョン
<a name="slr-regions-management"></a>

App Runner は、サービスが利用可能なすべてのリージョンでサービスにリンクされたロールの使用をサポートしています。詳細については、*AWS 全般のリファレンス*の「[AWS App Runner エンドポイントとクォータ](https://docs.aws.amazon.com/general/latest/gr/apprunner.html)」を参照してください。

# ネットワークにロールを使用する
<a name="using-service-linked-roles-networking"></a>

AWS App Runner は AWS Identity and Access Management (IAM)[ サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスにリンクされたロールは、App Runner に直接リンクされた一意のタイプの IAM ロールです。サービスにリンクされたロールは App Runner によって事前定義されており、サービスがユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

サービスにリンクされたロールを使用すると、必要なアクセス許可を手動で追加する必要がなくなるため、App Runner の設定が簡単になります。App Runner は、サービスにリンクされたロールのアクセス許可を定義します。特に定義されている場合を除き、App Runner のみがそのロールを引き受けることができます。定義される許可は信頼ポリシーと許可ポリシーに含まれており、その許可ポリシーを他の IAM エンティティにアタッチすることはできません。

サービスリンクロールを削除するには、最初に関連リソースを削除する必要があります。これにより、リソースへのアクセス許可が誤って削除されないため、App Runner リソースが保護されます。

サービスにリンクされたロールをサポートする他のサービスについては、「[IAM と連携するAWS サービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照して、**サービスにリンクされたロール**列が**はい**になっているサービスを見つけてください。サービスにリンクされた役割に関するドキュメントをサービスで表示するには[**はい**] リンクを選択してください。

## App Runner のサービスにリンクされたロールのアクセス許可
<a name="service-linked-role-permissions-networking"></a>

App Runner は、**AWSServiceRoleForAppRunnerNetworking** という名前のサービスにリンクされたロールを使用します。

このロールにより、App Runner は次のタスクを実行できます。
+ VPC を App Runner サービスにアタッチし、ネットワークインターフェイスを管理します。

AWSServiceRoleForAppRunnerNetworking サービスにリンクされたロールは、次のサービスを信頼してロールを引き受けます。
+ `networking.apprunner.amazonaws.com`

という名前のロールアクセス許可ポリシー[https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AppRunnerNetworkingServiceRolePolicy.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AppRunnerNetworkingServiceRolePolicy.html)には、App Runner がユーザーに代わってアクションを実行するために必要なすべてのアクセス許可が含まれています。

サービスリンクロールの作成、編集、削除を IAM エンティティ (ユーザー、グループ、ロールなど) に許可するにはアクセス許可を設定する必要があります。詳細については、「*IAM ユーザーガイド*」の「[サービスリンクロールの許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)」を参照してください。

## App Runner のサービスにリンクされたロールの作成
<a name="create-service-linked-role-networking"></a>

サービスリンクロールを手動で作成する必要はありません。 AWS マネジメントコンソール、、 AWS CLIまたは AWS API で VPC コネクタを作成すると、App Runner によってサービスにリンクされたロールが作成されます。

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は同じ方法でアカウントにロールを再作成できます。VPC コネクタを作成すると、App Runner によってサービスにリンクされたロールが再度作成されます。

## App Runner のサービスにリンクされたロールの編集
<a name="edit-service-linked-role-networking"></a>

App Runner では、AWSServiceRoleForAppRunnerNetworking サービスにリンクされたロールを編集することはできません。サービスリンクロールの作成後は、さまざまなエンティティがロールを参照する可能性があるため、ロール名を変更することはできません。ただし、IAM を使用してロールの説明を編集することはできます。詳細については、「*IAM ユーザーガイド*」の「[サービスリンクロールの編集](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## App Runner のサービスにリンクされたロールの削除
<a name="delete-service-linked-role-networking"></a>

サービスリンクロールを必要とする機能やサービスが不要になった場合は、ロールを削除することをお勧めします。そうすることで、モニタリングや保守が積極的に行われていない未使用のエンティティを排除できます。ただし、手動で削除する前に、サービスリンク役割をクリーンアップする必要があります。

### サービスにリンクされたロールのクリーンアップ
<a name="service-linked-role-review-before-delete-networking"></a>

IAM を使用してサービスにリンクされた役割を削除するには最初に、その役割で使用されているリソースをすべて削除する必要があります。

App Runner では、これは、アカウント内のすべての App Runner サービスから VPC コネクタの関連付けを解除し、VPC コネクタを削除することを意味します。詳細については、「[送信トラフィックの VPC アクセスの有効化](network-vpc.md)」を参照してください。

**注記**  
リソースを削除しようとしたときに App Runner サービスがロールを使用している場合、削除が失敗する可能性があります。失敗した場合は数分待ってから操作を再試行してください。

### サービスリンクロールを手動で削除する
<a name="slr-manual-delete-networking"></a>

IAM コンソール、 AWS CLI、または AWS API を使用して、AWSServiceRoleForAppRunnerNetworking サービスにリンクされたロールを削除します。詳細については、「[IAM ユーザーガイド](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)」の「*サービスリンクロールの削除*」を参照してください。

## App Runner サービスにリンクされたロールでサポートされているリージョン
<a name="slr-regions-networking"></a>

App Runner は、サービスが利用可能なすべてのリージョンでサービスにリンクされたロールの使用をサポートしています。詳細については、*AWS 全般のリファレンス*の「[AWS App Runner エンドポイントとクォータ](https://docs.aws.amazon.com/general/latest/gr/apprunner.html)」を参照してください。

# AWS の マネージドポリシー AWS App Runner
<a name="security-iam-awsmanpol"></a>







 AWS 管理ポリシーは、 によって作成および管理されるスタンドアロンポリシーです AWS。 AWS 管理ポリシーは、多くの一般的なユースケースにアクセス許可を付与するように設計されているため、ユーザー、グループ、ロールにアクセス許可の割り当てを開始できます。

 AWS 管理ポリシーは、すべての AWS お客様が使用できるため、特定のユースケースに対して最小特権のアクセス許可を付与しない場合があることに注意してください。ユースケースに固有の[カスタマー管理ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)を定義して、アクセス許可を絞り込むことをお勧めします。

 AWS 管理ポリシーで定義されているアクセス許可は変更できません。が AWS 管理ポリシーで定義されたアクセス許可 AWS を更新すると、ポリシーがアタッチされているすべてのプリンシパル ID (ユーザー、グループ、ロール) に影響します。 AWS は、新しい AWS のサービス が起動されたとき、または既存のサービスで新しい API オペレーションが利用可能になったときに、 AWS 管理ポリシーを更新する可能性が最も高くなります。

詳細については「*IAM ユーザーガイド*」の「[AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)」を参照してください。













## AWS マネージドポリシーに対する App Runner の更新
<a name="security-iam-awsmanpol-updates"></a>



App Runner の AWS マネージドポリシーの更新に関する詳細を、このサービスがこれらの変更の追跡を開始した以降の分について表示します。このページの変更に関する自動通知については、App Runner ドキュメント履歴ページの RSS フィードにサブスクライブしてください。




| 変更 | 説明 | 日付 | 
| --- | --- | --- | 
|  [AWSAppRunnerReadOnlyAccess](security_iam_service-with-iam.md#security_iam_service-with-iam-users) – 新しいポリシー  |  App Runner は、ユーザーが App Runner リソースの詳細を一覧表示および表示できるようにする新しいポリシーを追加しました。  | 2022 年 2 月 24 日 | 
|  [AWSAppRunnerFullAccess](security_iam_service-with-iam.md#security_iam_service-with-iam-users) – 既存のポリシーの更新  |  App Runner は、 `iam:CreateServiceLinkedRole`アクションのリソースリストを更新して、`AWSServiceRoleForAppRunnerNetworking`サービスにリンクされたロールを作成できるようにしました。  | 2022 年 2 月 8 日 | 
|  [AppRunnerNetworkingServiceRolePolicy](using-service-linked-roles-networking.md) – 新しいポリシー  |  App Runner は、App Runner が Amazon Virtual Private Cloud を呼び出して VPC を App Runner サービスにアタッチし、App Runner サービスに代わってネットワークインターフェイスを管理できるようにする新しいポリシーを追加しました。ポリシーは、`AWSServiceRoleForAppRunnerNetworking`サービスにリンクされたロールで使用されます。  | 2022 年 2 月 8 日 | 
|  [AWSAppRunnerFullAccess](security_iam_service-with-iam.md#security_iam_service-with-iam-users) – 新しいポリシー  |  App Runner は、ユーザーがすべての App Runner アクションを実行できるようにする新しいポリシーを追加しました。  | 2022 年 1 月 10 日 | 
|  [AppRunnerServiceRolePolicy](using-service-linked-roles-management.md) – 新しいポリシー  |  App Runner は、App Runner が App Runner サービスに代わって Amazon CloudWatch Logs と Amazon CloudWatch Events を呼び出すことを許可する新しいポリシーを追加しました。ポリシーは、`AWSServiceRoleForAppRunner`サービスにリンクされたロールで使用されます。  | 2021 年 3 月 1 日 | 
|  [AWSAppRunnerServicePolicyForECRAccess](security_iam_service-with-iam.md#security_iam_service-with-iam-roles-service.access) – 新しいポリシー  |  App Runner は、App Runner がアカウントの Amazon Elastic Container Registry (Amazon ECR) イメージにアクセスできるようにする新しいポリシーを追加しました。  | 2021 年 3 月 1 日 | 
|  App Runner が変更の追跡を開始しました  |  App Runner が AWS マネージドポリシーの変更の追跡を開始しました。  | 2021 年 3 月 1 日 | 

# App Runner の ID とアクセスのトラブルシューティング
<a name="security_iam_troubleshoot"></a>

次の情報は、 および IAM の使用時に発生する可能性がある一般的な問題の診断 AWS App Runner と修正に役立ちます。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

**Topics**
+ [App Runner でアクションを実行する権限がありません](#security_iam_troubleshoot-no-permissions)
+ [自分の 以外のユーザーに App Runner リソース AWS アカウント へのアクセスを許可したい](#security_iam_troubleshoot-cross-account-access)

## App Runner でアクションを実行する権限がありません
<a name="security_iam_troubleshoot-no-permissions"></a>

がアクションを実行する権限がないと AWS マネジメントコンソール 通知した場合は、管理者に連絡してサポートを依頼してください。管理者は、 AWS サインイン認証情報を提供したユーザーです。

次の例のエラーは、 という IAM ユーザーがコンソールを使用して App Runner `marymajor` サービスの詳細を表示しようとしているが、 アクセス`apprunner:DescribeService`許可がない場合に発生します。

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: apprunner:DescribeService on resource: my-example-service
```

この場合、Mary は管理者にポリシーを更新して、 `apprunner:DescribeService`アクションを使用して`my-example-service`リソースにアクセスすることを許可するよう依頼します。

## 自分の 以外のユーザーに App Runner リソース AWS アカウント へのアクセスを許可したい
<a name="security_iam_troubleshoot-cross-account-access"></a>

他のアカウントのユーザーや組織外の人が、リソースにアクセスするために使用できるロールを作成できます。ロールの引き受けを委託するユーザーを指定できます。リソースベースのポリシーまたはアクセスコントロールリスト (ACL) をサポートするサービスの場合、それらのポリシーを使用して、リソースへのアクセスを付与できます。

詳細については、以下を参照してください:
+ App Runner がこれらの機能をサポートしているかどうかを確認するには、「」を参照してください[App Runner と IAM の連携方法](security_iam_service-with-iam.md)。
+ 所有 AWS アカウント している のリソースへのアクセスを提供する方法については、[「IAM ユーザーガイド」の「所有 AWS アカウント している別の の IAM ユーザーへのアクセスを提供する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html)」を参照してください。 **
+ リソースへのアクセスをサードパーティーに提供する方法については AWS アカウント、*IAM ユーザーガイド*の[「サードパーティー AWS アカウント が所有する へのアクセスを提供する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)」を参照してください。
+ ID フェデレーションを介してアクセスを提供する方法については、*IAM ユーザーガイド* の [外部で認証されたユーザー (ID フェデレーション) へのアクセスの許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) を参照してください。
+ クロスアカウントアクセスにおけるロールとリソースベースのポリシーの使用方法の違いについては、「*IAM ユーザーガイド*」の「[IAM でのクロスアカウントのリソースへのアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)」を参照してください。

# App Runner でのログ記録とモニタリング
<a name="security-monitoring"></a>

モニタリングは、 AWS App Runner サービスの信頼性、可用性、パフォーマンスを維持する上で重要な部分です。 AWS ソリューションのすべての部分からモニタリングデータを収集することで、障害が発生した場合に障害をより簡単にデバッグできます。App Runner は、App Runner サービスをモニタリングし、潜在的なインシデントに対応するためのいくつかの AWS ツールと統合されています。

**Amazon CloudWatch アラーム**  
Amazon CloudWatch アラームを使用すると、指定した期間にわたってサービスメトリクスを監視できます。メトリクスが特定の期間に特定のしきい値を超えた場合は、通知を受け取ります。  
App Runner は、サービス全体と、ウェブサービスを実行するインスタンス (スケーリングユニット) に関するさまざまなメトリクスを収集します。詳細については、「[メトリクス (CloudWatch)](monitor-cw.md)」を参照してください。

**アプリケーションログ**  
App Runner はアプリケーションコードの出力を収集し、Amazon CloudWatch Logs にストリーミングします。この出力の内容はユーザー次第です。たとえば、ウェブサービスに対して行われたリクエストの詳細なレコードを含めることができます。これらのログレコードは、セキュリティとアクセスの監査に役立つ場合があります。詳細については、「[ログ (CloudWatch Logs)](monitor-cwl.md)」を参照してください。

**AWS CloudTrail アクションログ**  
App Runner は AWS CloudTrail、App Runner のユーザー、ロール、または のサービスによって実行されたアクションを記録する AWS サービスである と統合されています。CloudTrail は、App Runner のすべての API コールをイベントとしてキャプチャします。CloudTrail コンソールで最新のイベントを表示でき、証跡を作成して、Amazon Simple Storage Service (Amazon S3) バケットへの CloudTrail イベントの継続的な配信を有効にすることができます。詳細については、「[API アクション (CloudTrail)](monitor-ct.md)」を参照してください。

# App Runner のコンプライアンス検証
<a name="security-compliance"></a>

サードパーティーの監査者は、複数のコンプライアンスプログラムの一環として AWS App Runner のセキュリティと AWS コンプライアンスを評価します。これらのプログラムには、SOC、PCI、FedRAMP、HIPAA などがあります。

 AWS のサービス が特定のコンプライアンスプログラムの範囲内にあるかどうかを確認するには、「コンプライアンス[AWS のサービス プログラムによるスコープ](https://aws.amazon.com/compliance/services-in-scope/)」の「コンプライアンス」を参照して、関心のあるコンプライアンスプログラムを選択します。一般的な情報については、[AWS 「コンプライアンスプログラム](https://aws.amazon.com/compliance/programs/)」を参照してください。

を使用して、サードパーティーの監査レポートをダウンロードできます AWS Artifact。詳細については、[「Downloading Reports in AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html)」を参照してください。

を使用する際のお客様のコンプライアンス責任 AWS のサービス は、お客様のデータの機密性、貴社のコンプライアンス目的、適用される法律および規制によって決まります。を使用する際のコンプライアンス責任の詳細については AWS のサービス、[AWS 「 セキュリティドキュメント](https://docs.aws.amazon.com/security/)」を参照してください。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

# App Runner の耐障害性
<a name="security-resilience"></a>

 AWS グローバルインフラストラクチャは、 AWS リージョン およびアベイラビリティーゾーンを中心に構築されています。 は、低レイテンシー、高スループット、高度に冗長なネットワークで接続された、物理的に分離および分離された複数のアベイラビリティーゾーン AWS リージョン を提供します。アベイラビリティーゾーンでは、アベイラビリティーゾーン間で中断せずに、自動的にフェイルオーバーするアプリケーションとデータベースを設計および運用することができます。アベイラビリティーゾーンは、従来の単一または複数のデータセンターインフラストラクチャよりも可用性、耐障害性、およびスケーラビリティが優れています。

 AWS リージョン およびアベイラビリティーゾーンの詳細については、[AWS 「 グローバルインフラストラクチャ](https://aws.amazon.com/about-aws/global-infrastructure/)」を参照してください。

AWS App Runner は、ユーザーに代わって AWS グローバルインフラストラクチャの使用を管理および自動化します。App Runner を使用すると、 AWS が提供する可用性と耐障害性メカニズムを活用できます。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

# のインフラストラクチャセキュリティ AWS App Runner
<a name="security-infrastructure"></a>

マネージドサービスである AWS App Runner は、ホワイトペーパー[「Amazon Web Services: セキュリティプロセスの概要](https://d0.awsstatic.com/whitepapers/Security/AWS_Security_Whitepaper.pdf)」に記載されている AWS グローバルネットワークセキュリティ手順で保護されています。

 AWS 公開された API コールを使用して、ネットワーク経由で App Runner を管理および運用します。App Runner APIs を呼び出すクライアントは、Transport Layer Security (TLS) 1.2 以降をサポートする必要があります。また、一時的ディフィー・ヘルマン Ephemeral Diffie-Hellman (DHE) や Elliptic Curve Ephemeral Diffie-Hellman (ECDHE) などの Perfect Forward Secrecy (PFS) を使用した暗号スイートもクライアントでサポートされている必要があります。これらのモードは Java 7 以降など、ほとんどの最新システムでサポートされています。これらの要件は、App Runner アプリケーションのエンドポイントには適用されません。

また、リクエストにはアクセスキー ID と、IAM プリンシパルに関連付けられているシークレットアクセスキーを使用して署名する必要があります。または、[AWS Security Token Service](https://docs.aws.amazon.com/STS/latest/APIReference/Welcome.html) (AWS STS) を使用して、一時的なセキュリティ認証情報を生成し、リクエストに署名することもできます。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

# VPC エンドポイントでの App Runner の使用
<a name="security-vpce"></a>

 AWS アプリケーションは、Amazon [Amazon Virtual Private Cloud](https://docs.aws.amazon.com/vpc/latest/userguide/) VPC) の VPC で AWS のサービス 実行される他の AWS App Runner サービスとサービスを統合する場合があります。アプリケーションの一部は、VPC 内から App Runner にリクエストを行う場合があります。たとえば、 AWS CodePipeline を使用して App Runner サービスに継続的にデプロイできます。アプリケーションのセキュリティを向上させる 1 つの方法は、VPC エンドポイント経由でこれらの App Runner リクエスト (および他の へのリクエスト AWS のサービス) を送信することです。

*VPC エンドポイント*を使用すると、 を使用するサポートされている AWS のサービス および VPC エンドポイントサービスに VPC をプライベートに接続できます AWS PrivateLink。インターネットゲートウェイ、NAT デバイス、VPN 接続、または Direct Connect 接続は必要ありません。

VPC 内のリソースは、パブリック IP アドレスを使用して App Runner リソースとやり取りしません。VPC と App Runner 間のトラフィックは Amazon ネットワークを離れません。VPC エンドポイントの詳細については、「 *AWS PrivateLink ガイド*」の[「VPC エンドポイント](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints.html)」を参照してください。

**注記**  
デフォルトでは、App Runner サービスのウェブアプリケーションは、App Runner が提供および設定する VPC で実行されます。この VPC はパブリックです。つまり、インターネットに接続されています。オプションで、アプリケーションをカスタム VPC に関連付けることができます。詳細については、「[送信トラフィックの VPC アクセスの有効化](network-vpc.md)」を参照してください。  
サービスが VPC に接続されている場合でも、APIsを含む AWS インターネットにアクセスするようにサービスを設定できます。VPC アウトバウンドトラフィックのパブリックインターネットアクセスを有効にする方法については、「」を参照してください[サブネットを選択する際の考慮事項](network-vpc.md#network-vpc.considerations-subnet)。  
App Runner は、アプリケーションの VPC エンドポイントの作成をサポートしていません。

## App Runner の VPC エンドポイントの設定
<a name="security-vpce.setup"></a>

VPC で App Runner サービスのインターフェイス VPC エンドポイントを作成するには、「 *AWS PrivateLink ガイド*」の[「インターフェイスエンドポイントの作成](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html#create-interface-endpoint)」の手順に従います。**[Service Name]** (サービス名)には `com.amazonaws.region.apprunner` を選択します。

## VPC ネットワークプライバシーに関する考慮事項
<a name="security-vpce.private"></a>

**重要**  
App Runner に VPC エンドポイントを使用しても、VPC からのすべてのトラフィックがインターネット外に留まるとは限りません。VPC はパブリックである可能性があります。さらに、ソリューションの一部では、VPC エンドポイントを使用して AWS API コールを実行しない場合があります。たとえば、パブリックエンドポイントを使用して他の サービスを呼び出す AWS のサービス ことができます。VPC のソリューションにトラフィックプライバシーが必要な場合は、このセクションをお読みください。

VPC 内のネットワークトラフィックのプライバシーを確保するには、次の点を考慮してください。
+ *DNS 名を有効にする* – アプリケーションの一部は、`apprunner.region.amazonaws.com`パブリックエンドポイントを使用してインターネット経由で App Runner にリクエストを送信する場合があります。VPC がインターネットアクセスで設定されている場合、これらのリクエストはユーザーには通知されずに成功します。これを防ぐには、エンドポイントの作成時に **DNS 名**を有効にするを有効にします。デフォルトでは、true に設定されます。これにより、パブリックサービスエンドポイントをインターフェイス VPC エンドポイントにマップする DNS エントリが VPC に追加されます。
+ *追加サービス用に VPC エンドポイントを設定する* – ソリューションは他の にリクエストを送信する場合があります AWS のサービス。例えば、 は にリクエストを送信する AWS CodePipeline 場合があります AWS CodeBuild。これらのサービスの VPC エンドポイントを設定し、これらのエンドポイントで DNS 名を有効にします。
+ *プライベート VPC を設定する* – 可能な場合 (ソリューションがインターネットアクセスをまったく必要としない場合）、VPC をプライベートとして設定します。これは、インターネット接続がないことを意味します。これにより、VPC エンドポイントが欠落しているとエラーが表示されるため、欠落しているエンドポイントを追加できます。

## エンドポイントポリシーを使用して VPC エンドポイントでアクセスを制御する
<a name="security-vpce.policy"></a>

 VPC エンドポイントポリシーは App Runner でサポートされています。デフォルトでは、インターフェイスエンドポイントを介して App Runner へのフルアクセスが許可されます。VPC エンドポイントポリシーを使用して、App Runner エンドポイントにアクセスできる AWS プリンシパルを制御できます。または、セキュリティグループをエンドポイントネットワークインターフェイスに関連付けて、インターフェイスエンドポイントを介して App Runner へのトラフィックを制御することもできます。

## インターフェイスエンドポイントとの統合
<a name="security-vpce.pl-integration"></a>

App Runner は、App Runner へのプライベート接続を提供し AWS PrivateLink、インターネットへのトラフィックの露出を排除する、 をサポートしています。を使用してアプリケーションが App Runner にリクエストを送信できるようにするには AWS PrivateLink、*インターフェイス*エンドポイントと呼ばれる VPC エンドポイントのタイプを設定します。詳細については、「AWS PrivateLink ガイド」の「[インターフェイス VPC エンドポイント (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-interface.html)」を参照してください。

# App Runner の設定と脆弱性の分析
<a name="security-shared-responsibility"></a>

AWS と のお客様は、高いレベルのソフトウェアコンポーネントのセキュリティとコンプライアンスを達成する責任を共有します。詳細については、 AWS [「 責任共有モデル](https://aws.amazon.com/compliance/shared-responsibility-model/)」を参照してください。

## パッチコンテナイメージ
<a name="security-shared-responsibility.patch-images"></a>

コンテナイメージにパッチを適用することは、共有セキュリティモデルにおけるお客様の責任の一部です。イメージ所有者は、コンテナイメージを更新して定期的にパッチを適用する責任があります。コンテナイメージの更新を確認して適用するための定期的なスケジュールを確立することをお勧めします。イメージの脆弱性をスキャンする方法の詳細については、[AWS App Runner ドキュメント](security-best-practices.md#security-best-practices.preventive.scan)を参照してください。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

# App Runner のセキュリティのベストプラクティス
<a name="security-best-practices"></a>

AWS App Runner には、独自のセキュリティポリシーを開発および実装する際に考慮すべきいくつかのセキュリティ機能が用意されています。以下のベストプラクティスは一般的なガイドラインであり、完全なセキュリティソリューションに相当するものではありません。これらのベストプラクティスはお客様の環境に適切ではないか、十分ではない場合があるため、絶対的な解決策ではなく、役に立つ情報としてお考えください。

その他の App Runner セキュリティトピックについては、「」を参照してください[App Runner のセキュリティ](security.md)。

## 予防的セキュリティのベストプラクティス
<a name="security-best-practices.preventive"></a>

予防的セキュリティ管理では、インシデントが発生する前に防ぐことを試みます。

### 最小特権アクセスの実装
<a name="security-best-practices.preventive.least-priv"></a>

App Runner は、IAM ユーザーと[アクセスロール](security_iam_service-with-iam.md#security_iam_service-with-iam-roles-service.access)に AWS Identity and Access Management (IAM) 管理ポリシーを提供します。 [ユーザーポリシー](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-users)これらの管理ポリシーは、App Runner サービスの正しいオペレーションに必要なすべてのアクセス許可を指定します。

アプリケーションで、管理ポリシーのすべてのアクセス権限が必要とは限りません。カスタマイズして、ユーザーと App Runner サービスがタスクを実行するために必要なアクセス許可のみを付与できます。これは特に、ユーザーロールごとに異なるアクセス権限のニーズを持つユーザーポリシーに関連します。最小特権アクセスの実装は、セキュリティリスクと、エラーや悪意によってもたらされる可能性のある影響の低減における基本です。

### イメージをスキャンして脆弱性がないか調べる
<a name="security-best-practices.preventive.scan"></a>

Amazon ECR の APIs を使用して、コンテナイメージ内のソフトウェアの脆弱性を特定できます。詳細については、[Amazon ECR ドキュメント](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html)を参照してください。

## セキュリティ問題の検出ベストプラクティス
<a name="security-best-practices.detective"></a>

セキュリティコントロールの検出により、セキュリティ違反が発生した後に識別されます。セキュリティ上の脅威やインシデントの検出に役立ちます。

### モニタリングを実装する
<a name="security-best-practices.detective.monitor"></a>

モニタリングは、App Runner ソリューションの信頼性、セキュリティ、可用性、パフォーマンスを維持する上で重要な部分です。 は、 AWS サービスのモニタリングに役立ついくつかのツールとサービス AWS を提供します。

以下は、モニタリングする項目のいくつかの例です。
+ *App Runner の Amazon CloudWatch メトリクス* – 主要な App Runner メトリクスとアプリケーションのカスタムメトリクスのアラームを設定します。詳細については、「[メトリクス (CloudWatch)](monitor-cw.md)」を参照してください。
+ *AWS CloudTrail エントリ* – `PauseService`や など、可用性に影響を与える可能性のあるアクションを追跡します`DeleteConnection`。詳細については、[API アクション (CloudTrail)](monitor-ct.md) を参照してください