Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

API コンシューマー: VPC エンドポイントを共有プライベートカスタムドメイン名に関連付ける

フォーカスモード
API コンシューマー: VPC エンドポイントを共有プライベートカスタムドメイン名に関連付ける - Amazon API Gateway

次の手順は、別の AWS アカウント のプライベートドメイン名を使用する方法を示しています。API プロバイダーとの信頼関係によっては、AWS RAM がいくつかのタスクを代行する場合があります。

プライベートカスタムドメイン名とは異なる AWS アカウント に属している場合は、VPC エンドポイントをプライベートカスタムドメイン名に関連付けて呼び出すことのみが可能です。プライベートカスタムドメイン名に関する policy やその他のパラメータを表示することはできません。

前提条件

別の AWS アカウント のプライベートカスタムドメイン名を使用するには、次のような前提条件があります。

  • execute-api サービス用の VPC および VPC エンドポイント。VPC では、enableDnsHostnamesenableDnsSupporttrue に設定されている必要があります。

  • VPC エンドポイントごとに少なくとも 2 つのアベイラビリティーゾーンを設定することをお勧めします。

(オプション) プライベートカスタムドメインリソース共有を承認する

API プロバイダーが AWS RAM を使用してリソース共有を作成した場合、お客様は 12 時間以内に承認する必要があります。お客様が API プロバイダーと同じ組織に属しており、AWS Organizations を使用している場合、共有は自動的に承認されます。お客様が属している組織で自動共有リソースが有効になっている場合、リソースは自動的に共有されます。

AWS Management Console

AWS Management Console を使用するには、AWS RAM ユーザーガイドの「リソース共有の招待の承諾と拒否」を参照してください。

AWS CLI

お客様と共有されているすべてのリソースを見つけるには、次の get-resource-share-invitations コマンドを使用します。

aws ram get-resource-share-invitations \ --region us-west-2

表示されたリソース共有の ARN を使用して、リソース共有の招待を承認します。次の accept-resource-share-invitation コマンドは、リソース共有を承認します。

aws ram accept-resource-share-invitation \ --resource-share-invitation-arn arn:aws:ram:us-west-2:123456789012:resource-share-invitation/1e3477be-4a95-46b4-bbe0-c4001EXAMPLE \ --region us-west-2

AWS Management Console を使用するには、AWS RAM ユーザーガイドの「リソース共有の招待の承諾と拒否」を参照してください。

共有プライベートカスタムドメイン名に VPC エンドポイントを関連付ける

プライベートカスタムドメイン名は一意ではないため、VPC エンドポイントを一意のカスタムドメイン名 ARN に関連付けます。ドメイン名アクセスの関連付けを作成した後、VPC エンドポイントがプライベートカスタムドメイン名を正常に呼び出せるようになるまで最大 15 分かかる場合があります。パブリックカスタムドメイン名へのアクセスに使用している VPC エンドポイントがある場合、そのエンドポイントを使用してドメイン名アクセスの関連付けを作成しないでください。

AWS Management Console
VPC エンドポイントを共有プライベートカスタムドメイン名に関連付けるには
  1. API Gateway コンソール (https://console.aws.amazon.com/apigateway) にサインインします。

  2. メインナビゲーションペインで、[ドメイン名アクセスの関連付け] を選択します。

  3. [ドメイン名アクセスの関連付けの作成] を選択します。

  4. [ドメイン名 ARN] で、API プロバイダーから共有されているドメイン名 ARN を選択します。

    ドメイン名 ARN がドロップダウンリストに表示されない場合があります。AWS RAM コンソールを使用して、共有されているドメイン名を表示し、ドメイン名 ARN をコピーして、このフィールドに入力できます。

  5. [VPC エンドポイント ID] で、ドメイン名アクセスの関連付けを作成する対象の VPC エンドポイント ID を選択します。

  6. [ドメイン名アクセスの関連付けの作成] を選択します。

AWS CLI

プライベートカスタムドメイン名は一意ではないため、VPC エンドポイントを一意のカスタムドメイン名 ARN に関連付けます。ドメイン名 ARN を見つけるには、次のいずれかのコマンドを使用します。

  1. AWS RAM

    次の list-resources コマンドは、共有されているリソースを一覧表示します。お客様がこのコマンドを使用するには、API プロバイダーが AWS RAM を使用してプライベートカスタムドメインをお客様と共有している必要があります。

    aws ram list-resources \ --resource-owner OTHER-ACCOUNTS \ --region us-west-2 --resource-type apigateway:Domainnames
    API Gateway

    次の get-domain-names コマンドは、他の AWS アカウント が所有するすべてのプライベートカスタムドメイン名のうち、ドメイン名アクセスの関連付けを作成する対象にできるドメイン名を一覧表示します。

    aws apigateway get-domain-names \ --resource-owner OTHER_ACCOUNTS \ --region us-west-2
  2. ARN を取得した後、API Gateway を使用して、VPC エンドポイントと共有プライベートカスタムドメイン名との間にドメイン名アクセスの関連付けを作成します。次のcreate-domain-name-access-associationコマンドを使用します。

    aws apigateway create-domain-name-access-association \ --access-association-source-type VPCE \ --access-association-source-id 'vpce-1a2b3c4d5e6f1a2b3' \ --domain-name-arn arn:aws:apigateway:us-west-2:111122223333:/domainnames/private.example.com+abcd1234"

    出力は次のようになります。

    { "domainNameAccessAssociationARN": "arn:aws:apigateway:us-west-2:444455556666:/domainnameaccessassociations/domainname/private.example.com+abcd1234/vpcesource/vpce-abcd1234efg", "accessAssociationSource": "vpce-1a2b3c4d5e6f1a2b3", "accessAssociationSourceType": "VPCE", "domainNameARN" : "arn:aws:apigateway:us-west-1:111122223333:/domainnames/private.example.com+a1b2c3" }
VPC エンドポイントを共有プライベートカスタムドメイン名に関連付けるには
  1. API Gateway コンソール (https://console.aws.amazon.com/apigateway) にサインインします。

  2. メインナビゲーションペインで、[ドメイン名アクセスの関連付け] を選択します。

  3. [ドメイン名アクセスの関連付けの作成] を選択します。

  4. [ドメイン名 ARN] で、API プロバイダーから共有されているドメイン名 ARN を選択します。

    ドメイン名 ARN がドロップダウンリストに表示されない場合があります。AWS RAM コンソールを使用して、共有されているドメイン名を表示し、ドメイン名 ARN をコピーして、このフィールドに入力できます。

  5. [VPC エンドポイント ID] で、ドメイン名アクセスの関連付けを作成する対象の VPC エンドポイント ID を選択します。

  6. [ドメイン名アクセスの関連付けの作成] を選択します。

VPC エンドポイントとプライベートカスタムドメイン名を関連付けた後、VPC エンドポイントにドメイン名の呼び出しを許可するように、API プロバイダーがプライベートカスタムドメイン名に関するポリシーを更新したことを確認します。詳細については、「他のアカウントにプライベートカスタムドメイン名の呼び出しを許可する」を参照してください。

Route 53 ホストゾーンを作成する

プライベートカスタムドメイン名を解決するには、Route 53 プライベートホストゾーンを作成する必要があります。ホストゾーンは、インターネットにリソースを公開することなく、1 つ以上の VPC 内のドメインのトラフィックをルーティングする方法に関する情報を保持するコンテナです。詳細については、「プライベートホストゾーンの使用」を参照してください。

AWS Management Console

AWS Management Console を使用するには、Amazon Route 53 開発者ガイドの「プライベートホストゾーンの作成」を参照してください。

[名前] には、プライベートカスタムドメイン名の名前を使用します。[VPC ID] には、ドメイン名アクセスの関連付けに使用した VPC エンドポイントを含む VPC を使用します。

AWS CLI

次の create-hosted-zone コマンドは、プライベートホストゾーンを作成します。

aws route53 create-hosted-zone --name private.example.com \ --caller-reference 2014-04-01-18:47 \ --hosted-zone-config Comment="command-line version", PrivateZone=true \ --vpc VPCRegion=us-west-2,VPCId=vpc-abcd1234

出力にはホストゾーン ID が含まれます。このホストゾーン ID は以降の手順で使用します。

AWS Management Console を使用するには、Amazon Route 53 開発者ガイドの「プライベートホストゾーンの作成」を参照してください。

[名前] には、プライベートカスタムドメイン名の名前を使用します。[VPC ID] には、ドメイン名アクセスの関連付けに使用した VPC エンドポイントを含む VPC を使用します。

Route 53 A レコードを作成する

ホストゾーンを作成した後、プライベートカスタムドメイン名を解決するためのレコードを作成します。この例では、A レコードタイプを作成します。VPC エンドポイントに IPv6 を使用している場合は、AAAA レコードタイプを作成します。VPC エンドポイントにデュアルスタックを使用している場合は、AAAA レコードタイプと A レコードタイプの両方を作成します。

AWS Management Console

AWS Management Console を使用するには、「ドメイン名を使用してトラフィックを Amazon API Gateway API にルーティングする」を参照してください。

[クイック作成] を使用し、[エイリアス] をオンにします。エンドポイントには、VPC エンドポイント DNS 名を使用します。

AWS CLI

プライベートカスタムドメイン名を特定のホストゾーン ID のホスト名にマッピングするように DNS レコードを設定するには、まず、プライベートドメイン名の DNS レコードを指定するための設定を含む JSON ファイルを作成します。

次の setup-dns-record.json は、プライベートカスタムドメイン名をプライベートホスト名にマッピングする DNS A レコードを作成する方法を示しています。VPC DNS ID の DNSName と、前のステップで作成したホストゾーン ID を指定します。

{ "Changes": [ { "Action": "UPSERT", "ResourceRecordSet": { "Name": "private.example.com", "Type": "A", "AliasTarget": { "DNSName": "vpce-abcd1234.execute-api.us-west-2.vpce.amazonaws.com", "HostedZoneId": "Z2OJLYMUO9EFXC", "EvaluateTargetHealth": false } } } ] }

次の change-resource-record-sets コマンドは、プライベートカスタムドメイン名の DNS レコードを作成します。

aws route53 change-resource-record-sets \ --hosted-zone-id ZABCDEFG1234 \ --change-batch file://path/to/your/setup-dns-record.json

hosted-zone-id は、アカウントに設定した DNS レコードの Route 53 ホストゾーン ID に置き換えます。change-batch パラメータの値は JSON ファイルを指定します。

AWS Management Console を使用するには、「ドメイン名を使用してトラフィックを Amazon API Gateway API にルーティングする」を参照してください。

[クイック作成] を使用し、[エイリアス] をオンにします。エンドポイントには、VPC エンドポイント DNS 名を使用します。

API コンシューマーの次のステップ

これで、お客様独自の AWS アカウント でプライベート API を呼び出せるようになりました。VPC で、次の curl コマンドを使用してプライベートカスタムドメイン名にアクセスできます。

curl https://private.example.com/v1

プライベート API を呼び出す他の方法の詳細については、「カスタムドメイン名を使用してプライベート API を呼び出す」を参照してください。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.