プライベートエンドポイントの管理 - AWS App Runner

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

プライベートエンドポイントの管理

次のいずれかの方法を使用して、受信トラフィックのプライベートエンドポイントを管理します。

注記

App Runner アプリケーションにソース IP/CIDR 受信トラフィックコントロールルールが必要な場合は、WAF ウェブ ACLs の代わりにプライベートエンドポイントのセキュリティグループルールを使用する必要があります。これは、現在、WAF に関連付けられた App Runner プライベートサービスへのリクエストソース IP データの転送をサポートしていないためです。その結果、WAF ウェブ ACLsベースのルールに準拠していません。

ベストプラクティスを含むインフラストラクチャのセキュリティおよびセキュリティグループの詳細については、「Amazon VPC ユーザーガイド」の「セキュリティグループ を使用してネットワークトラフィックを制御し、AWS リソースへのトラフィックを制御する」のトピックを参照してください。 https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html

App Runner コンソール

App Runner コンソールを使用してサービスを作成する場合、または後でその設定を更新する場合は、受信トラフィックの設定を選択できます。

受信トラフィックを設定するには、次のいずれかを選択します。

  • パブリックエンドポイント : インターネット経由ですべてのサービスがサービスにアクセスできるようにします。デフォルトでは、パブリックエンドポイントが選択されています。

  • プライベートエンドポイント : Amazon VPC 内からのみ App Runner サービスにアクセスできるようにします。

注記

現在、App Runner はパブリックエンドポイントでのみ IPv6 をサポートしています。IPv6 エンドポイントは、Amazon Virtual Private Cloud (Amazon VPC) でホストされる App Runner サービスではサポートされていません。デュアルスタックのパブリックエンドポイントを使用しているサービスをプライベートエンドポイント に更新すると、App Runner サービスはデフォルトで IPv4 エンドポイントからのトラフィックのみをサポートし、IPv6 エンドポイントからのトラフィックの受信に失敗します。

プライベートエンドポイントを有効にする

アクセスする Amazon VPC の VPC インターフェイスエンドポイントに関連付けることで、プライベートエンドポイントを有効にします。新しい VPC インターフェイスエンドポイントを作成するか、既存のエンドポイントを選択できます。

VPC インターフェイスエンドポイントを作成するには
  1. App Runner コンソール を開き、リージョンリストで を選択します AWS リージョン。

  2. 「サービスの設定」の「ネットワーク」セクションに移動します。

  3. 受信ネットワークトラフィック にプライベートエンドポイント を選択します。 VPC インターフェイスエンドポイントを使用して VCP に接続するオプションが開きます。

  4. 新しいエンドポイントの作成 を選択します。新しい VPC インターフェイスエンドポイントの作成ダイアログボックスが開きます。

  5. VPC インターフェイスエンドポイントの名前を入力します。

  6. 利用可能なドロップダウンリストから、必要な VPC インターフェイスエンドポイントを選択します。

  7. ドロップダウンリストからセキュリティグループを選択します。セキュリティグループを追加すると、VPC インターフェイスエンドポイントにセキュリティレイヤーが追加されます。2 つ以上のセキュリティグループを選択することをお勧めします。セキュリティグループを選択しない場合、App Runner はデフォルトのセキュリティグループを VPC インターフェイスエンドポイントに割り当てます。セキュリティグループルールが App Runner サービスと通信するリソースをブロックしていないことを確認します。セキュリティグループルールでは、App Runner サービスとやり取りするリソースを許可する必要があります。

    注記

    App Runner アプリケーションにソース IP/CIDR 受信トラフィックコントロールルールが必要な場合は、WAF ウェブ ACLs の代わりにプライベートエンドポイントのセキュリティグループルールを使用する必要があります。これは、現在、WAF に関連付けられた App Runner プライベートサービスへのリクエストソース IP データの転送をサポートしていないためです。その結果、WAF ウェブ ACLsベースのルールに準拠していません。

    ベストプラクティスを含むインフラストラクチャのセキュリティおよびセキュリティグループの詳細については、「Amazon VPC ユーザーガイド」の「セキュリティグループ を使用してネットワークトラフィックを制御し、AWS リソースへのトラフィックを制御する」のトピックを参照してください。 https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html

  8. ドロップダウンリストから必要なサブネットを選択します。App Runner サービスにアクセスするアベイラビリティーゾーンごとに少なくとも 2 つのサブネットを選択することをお勧めします。

  9. (オプション) 新しいタグを追加を選択し、タグキーとタグ値を入力します。

  10. [作成] を選択します。サービスの設定ページが開き、上部のバーに VPC インターフェイスエンドポイントが正常に作成されたことを示すメッセージが表示されます。

既存の VPC インターフェイスエンドポイントを選択するには
  1. App Runner コンソール を開き、リージョンリストで を選択します AWS リージョン。

  2. 「サービスの設定」の「ネットワーク」セクションに移動します。

  3. 受信ネットワークトラフィック にプライベートエンドポイント を選択します。 VPC インターフェイスエンドポイントを使用して VPC に接続するオプションが開きます。使用可能な VPC インターフェイスエンドポイントのリストが表示されます。

  4. VPC インターフェイスエンドポイント にリストされている必要な VPC インターフェイスエンドポイントを選択します

  5. 次へ を選択してサービスを作成します。App Runner はプライベートエンドポイントを有効にします。

    注記

    サービスを作成したら、必要に応じて VPC インターフェイスエンドポイントに関連付けられたセキュリティグループとサブネットを編集できます。

    プライベートエンドポイント の詳細を確認するには、サービスに移動し、設定タブのネットワークセクションを展開します。プライベートエンドポイント に関連付けられた VPC と VPC インターフェイスエンドポイントの詳細が表示されます。

VPC インターフェイスエンドポイントを更新する

App Runner サービスを作成したら、プライベートエンドポイントに関連付けられた VPC インターフェイスエンドポイントを編集できます。

注記

エンドポイント名VPC フィールドは更新できません。

VPC インターフェイスエンドポイントを更新するには
  1. App Runner コンソール を開き、リージョンリストで を選択します AWS リージョン。

  2. サービスに移動し、左側のパネルでネットワーク設定を選択します。

  3. 受信トラフィックを選択して、それぞれのサービスに関連付けられている VPC インターフェイスエンドポイントを表示します。

  4. 編集する VPC インターフェイスエンドポイントを選択します。

  5. [編集] を選択します。VPC インターフェイスエンドポイントを編集するダイアログボックスが開きます。

  6. 必要なセキュリティグループサブネットを選択し、更新 をクリックします。VPC インターフェイスエンドポイントの詳細を示すページが開き、上部のバーに VPC インターフェイスエンドポイントが正常に更新されたことを示すメッセージが表示されます。

    注記

    App Runner アプリケーションにソース IP/CIDR 受信トラフィックコントロールルールが必要な場合は、WAF ウェブ ACLs の代わりにプライベートエンドポイントのセキュリティグループルールを使用する必要があります。これは、現在、WAF に関連付けられた App Runner プライベートサービスへのリクエストソース IP データの転送をサポートしていないためです。その結果、WAF ウェブ ACLsベースのルールに準拠していません。

    ベストプラクティスを含むインフラストラクチャのセキュリティおよびセキュリティグループの詳細については、「Amazon VPC ユーザーガイド」の「セキュリティグループ を使用してネットワークトラフィックを制御し、AWS リソースへのトラフィックを制御する」のトピックを参照してください。 https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html

VPC インターフェイスエンドポイントを削除する

App Runner サービスをプライベートにアクセス可能にしたくない場合は、受信トラフィックをパブリック に設定できます。パブリックに変更すると、プライベートエンドポイントは削除されますが、VPC インターフェイスエンドポイントは削除されません。

VPC インターフェイスエンドポイントを削除するには
  1. App Runner コンソール を開き、リージョンリストで を選択します AWS リージョン。

  2. サービスに移動し、左側のパネルでネットワーク設定を選択します。

  3. 受信トラフィックを選択して、それぞれのサービスに関連付けられている VPC インターフェイスエンドポイントを表示します。

    注記

    VPC インターフェイスエンドポイントを削除する前に、サービスを更新して、接続されているすべてのサービスから削除します。

  4. [削除] を選択します。

    VPC インターフェイスエンドポイントに接続されているサービスがある場合、VPC インターフェイスエンドポイントを削除できないというメッセージが表示されます。VPC インターフェイスエンドポイントに接続されているサービスがない場合は、削除を確認するメッセージが表示されます。

  5. [削除] を選択します。着信トラフィックのネットワーク設定ページが開き、上部のバーに VPC インターフェイスエンドポイントが正常に削除されたというメッセージが表示されます。

App Runner API または AWS CLI

Amazon VPC 内からのみアクセス可能なアプリケーションを App Runner にデプロイできます。

サービスをプライベートにするために必要なアクセス許可については、「」を参照してくださいアクセス許可

注記

現在、App Runner はパブリックエンドポイントでのみ IPv6 をサポートしています。IPv6 エンドポイントは、Amazon Virtual Private Cloud (Amazon VPC) でホストされる App Runner サービスではサポートされていません。デュアルスタックのパブリックエンドポイントを使用しているサービスをプライベートエンドポイント に更新すると、App Runner サービスはデフォルトで IPv4 エンドポイントからのトラフィックのみをサポートし、IPv6 エンドポイントからのトラフィックの受信に失敗します。

Amazon VPC へのプライベートサービス接続を作成するには
  1. App Runner に接続する VPC インターフェイスエンドポイント、 AWS PrivateLink リソースを作成します。これを行うには、アプリケーションに関連付けるサブネットとセキュリティグループを指定します。VPC インターフェイスエンドポイントを作成する例を次に示します。

    注記

    App Runner アプリケーションにソース IP/CIDR 受信トラフィックコントロールルールが必要な場合は、WAF ウェブ ACLs の代わりにプライベートエンドポイントのセキュリティグループルールを使用する必要があります。これは、現在、WAF に関連付けられた App Runner プライベートサービスへのリクエストソース IP データの転送をサポートしていないためです。その結果、WAF ウェブ ACLsベースのルールに準拠していません。

    ベストプラクティスを含むインフラストラクチャのセキュリティおよびセキュリティグループの詳細については、「Amazon VPC ユーザーガイド」の次のトピックを参照してください。セキュリティグループ を使用してネットワークトラフィックを制御し、AWS リソースへのトラフィックを制御します。 https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html

    aws ec2 create-vpc-endpoint --vpc-endpoint-type: Interface --service-name: com.amazonaws.us-east-1.apprunner.requests --subnets: subnet1, subnet2 --security-groups: sg1
  2. CLI から CreateServiceまたは UpdateService App Runner API アクションを使用して VPC インターフェイスエンドポイントを参照します。パブリックにアクセスできないようにサービスを設定します。NetworkConfiguration パラメータIngressConfigurationのメンバーFalseで を IsPubliclyAccessibleに設定します。VPC インターフェイスエンドポイントを参照する例を次に示します。

    aws apprunner create-service --network-configuration: ingress-configuration=<ingress_configuration> --service-name: com.amazonaws.us-east-1.apprunner.requests --source-configuration: <source_configuration> # Ingress Configuration { "IsPubliclyAccessible": False }
  3. create-vpc-ingress-connection API アクションを呼び出して App Runner の VPC Ingress Connection リソースを作成し、前のステップで作成した VPC インターフェイスエンドポイントに関連付けます。指定された VPC 内のサービスへのアクセスに使用されるドメイン名を返します。VPC Ingress Connection リソースを作成する例を次に示します。

    例 リクエスト
    aws apprunner create-vpc-ingress-connection --service-arn: <apprunner_service_arn> --ingress-vpc-configuration: {"VpcId":<vpc_id>, "VpceId": <vpce_id>} --vpc-ingress-connection-name: <vic_connection_name>
    例 レスポンス
    { "VpcIngressConnectionArn": <vpc_ingress_connection_arn>, "VpcIngressConnectionName": <vic_connection_name>, "ServiceArn": <apprunner_service_arn>, "Status": "PENDING_CREATION", "AccountId": <connection_owner_id>, "DomainName": <domain_name_associated_with_vpce>, "IngressVpcConfiguration": {"VpcId":<vpc_id>, "VpceId":<vpce_id>}, "CreatedAt": <date_created> }

VPC イングレス接続を更新する

VPC Ingress Connection リソースを更新できます。更新するには、VPC イングレス接続が次のいずれかの状態である必要があります。

  • AVAILABLE

  • FAILED_CREATION

  • FAILED_UPDATE

VPC Ingress Connection リソースを更新する例を次に示します。

例 リクエスト
aws apprunner update-vpc-ingress-connection --vpc-ingress-connection-arn: <vpc_ingress_connection_arn>
例 レスポンス
{ "VpcIngressConnectionArn": <vpc_ingress_connection_arn>, "VpcIngressConnectionName": <vic_connection_name>, "ServiceArn": <apprunner_service_arn>, "Status": "FAILED_UPDATE", "AccountId": <connection_owner_id>, "DomainName": <domain_name_associated_with_vpce>, "IngressVpcConfiguration": {"VpcId":<vpc_id>, "VpceId":<vpce_id>}, "CreatedAt": <date_created> }

VPC イングレス接続の削除

Amazon VPC へのプライベート接続が不要になった場合は、VPC Ingress Connection リソースを削除できます。

VPC イングレス接続を削除するには、次のいずれかの状態である必要があります。

  • AVAILABLE

  • 失敗した作成

  • 更新に失敗

  • 削除に失敗

VPC イングレス接続を削除する例を次に示します。

例 リクエスト
aws apprunner delete-vpc-ingress-connection --vpc-ingress-connection-arn: <vpc_ingress_connection_arn>
例 レスポンス
{ "VpcIngressConnectionArn": <vpc_ingress_connection_arn>, "VpcIngressConnectionName": <vic_connection_name>, "ServiceArn": <apprunner_service_arn>, "Status": "PENDING_DELETION", "AccountId": <connection_owner_id>, "DomainName": <domain_name_associated_with_vpce>, "IngressVpcConfiguration": {"VpcId":<vpc_id>, "VpceId":<vpce_id>}, "CreatedAt": <date_created>, "DeletedAt": <date_deleted> }

次の App Runner API アクションを使用して、サービスのプライベートインバウンドトラフィックを管理します。

  • CreateVpcIngressConnection – 新しい VPC Ingress Connection リソースを作成します。App Runner サービスを Amazon VPC エンドポイントに関連付ける場合、App Runner にはこのリソースが必要です。

  • ListVpcIngressConnections – AWS アカウントに関連付けられている AWS App Runner VPC Ingress Connection エンドポイントのリストを返します。

  • DescribeVpcIngressConnection – VPC Ingress Connection リソースの完全な AWS App Runner 説明を返します。

  • UpdateVpcIngressConnection – AWS App Runner VPC Ingress Connection リソースを更新します。

  • DeleteVpcIngressConnection – App Runner サービスに関連付けられている App Runner VPC Ingress Connection リソースを削除します。

App Runner API の使用の詳細については、「App Runner API リファレンスガイド」を参照してください。