

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

# を通じてサービスを共有する AWS PrivateLink
<a name="privatelink-share-your-services"></a>

*エンドポイント*サービスと呼ばれる独自の AWS PrivateLink パワードサービスをホストし、他の AWS お客様と共有できます。

**Topics**
+ [概要:](#endpoint-service-overview)
+ [DNS ホスト名](#endpoint-service-dns-hostnames)
+ [プライベート DNS](#endpoint-service-private-dns)
+ [サブネットとアベイラビリティーゾーン](#endpoint-service-subnets-zones)
+ [クロスリージョンアクセス](#endpoint-service-cross-region)
+ [IP アドレスのタイプ](#endpoint-service-ip-address-type)
+ [エンドポイントサービスを作成する](create-endpoint-service.md)
+ [エンドポイントサービスを設定する](configure-endpoint-service.md)
+ [DNS 名を管理する](manage-dns-names.md)
+ [エンドポイントサービスイベントのアラートを受け取る](create-notification-endpoint-service.md)
+ [エンドポイントサービスを削除する](delete-endpoint-service.md)

## 概要:
<a name="endpoint-service-overview"></a>

次の図は、 でホストされているサービスを他の AWS 顧客 AWS と共有する方法と、それらの顧客がサービスに接続する方法を示しています。サービスプロバイダーとして、サービスのフロントエンドとして VPC で Network Load Balancer を作成します。その後、VPC エンドポイントサービスの設定を作成するときに、このロードバランサーを選択します。特定の AWS プリンシパルにアクセス許可を付与して、サービスに接続できるようにします。サービスコンシューマーとして、お客様はインターフェイス VPC エンドポイントを作成します。これにより、VPC から選択したサブネットとエンドポイントサービス間の接続が確立されます。ロードバランサーは、サービスコンシューマーからリクエストを受け取ってサービスをホスティングしているターゲットにルーティングします。

![\[サービスコンシューマーは、サービスプロバイダーがホストするエンドポイントサービスに接続します。\]](http://docs.aws.amazon.com/ja_jp/vpc/latest/privatelink/images/endpoint-services.png)


低レイテンシーと高可用性を得るために、少なくとも 2 つのアベイラビリティーゾーンでサービスを使用可能にすることをお勧めします。

## DNS ホスト名
<a name="endpoint-service-dns-hostnames"></a>

サービスプロバイダーが VPC エンドポイントサービスを作成すると、 はサービスのエンドポイント固有の DNS ホスト名 AWS を生成します。これらの名前の構文は次のとおりです。

```
endpoint_service_id.region.vpce.amazonaws.com
```

us-east-2 リージョンの VPC エンドポイントサービスの DNS ホスト名の例を次に示します。

```
vpce-svc-071afff70666e61e0.us-east-2.vpce.amazonaws.com
```

サービスコンシューマーがインターフェイス VPC エンドポイントを作成すると、サービスコンシューマーがエンドポイントサービスと通信するために使用できるリージョンレベルおよびゾーンレベルの DNS 名が作成されます。リージョンレベルの名前の構文は次のとおりです。

```
endpoint_id.endpoint_service_id.service_region.vpce.amazonaws.com
```

ゾーンレベルの名前の構文は次のとおりです。

```
endpoint_id-endpoint_zone.endpoint_service_id.service_region.vpce.amazonaws.com
```

## プライベート DNS
<a name="endpoint-service-private-dns"></a>

サービスプロバイダーは、エンドポイントサービスにプライベート DNS 名を関連付けることもできます。これにより、サービスコンシューマーは既存の DNS 名を使用して引き続きサービスにアクセスできます。サービスプロバイダーがプライベート DNS 名をエンドポイントサービスに関連付けた場合、サービスコンシューマーはインターフェイスエンドポイントのプライベート DNS 名を有効にできます。サービスプロバイダーがプライベート DNS を有効にしていない場合、サービスコンシューマーは VPC エンドポイントサービス用にパブリック DNS 名を使用するようにアプリケーションを更新する必要がある場合があります。詳細については、「[DNS 名を管理する](manage-dns-names.md)」を参照してください。

## サブネットとアベイラビリティーゾーン
<a name="endpoint-service-subnets-zones"></a>

エンドポイントサービスは、Network Load Balancer のために有効化するアベイラビリティーゾーンで利用可能です。高可用性とレジリエンシーを確保するため、少なくとも 2 つのアベイラビリティーゾーンでロードバランサーを有効にし、有効化されたゾーンそれぞれに EC2 インスタンスをデプロイして、これらのインスタンスをロードバランサーのターゲットグループに登録することをお勧めします。

複数のアベイラビリティーゾーンでエンドポイントサービスをホストする代わりに、クロスゾーン負荷分散を有効にできます。ただし、エンドポイントサービスをホストするゾーンに障害が発生した場合、コンシューマーは両方のゾーンでエンドポイントサービスにアクセスできなくなります。Network Load Balancer のクロスゾーン負荷分散を有効にするときは、EC2 データ転送料金が適用されることも考慮してください。

コンシューマーは、エンドポイントサービスが利用可能になっているアベイラビリティーゾーン内にインターフェイス VPC エンドポイントを作成できます。エンドポイントネットワークインターフェイスは、VPC エンドポイント用にコンシューマーが設定する各サブネット内に作成されます。VPC エンドポイントの IP アドレスタイプに基づいて、サブネットから各エンドポイントネットワークインターフェイスに IP アドレスを割り当てます。リクエストが VPC エンドポイントサービスのリージョンエンドポイントを使用する場合は、異なるアベイラビリティーゾーン内のネットワークインターフェイスを交互に使用するためのラウンドロビンアルゴリズムを使用して、正常なエンドポイントネットワークインターフェイスが選択されます。次に、選択したエンドポイントネットワークインターフェイスの IP アドレスへのトラフィックを解決します。

トラフィックを同じアベイラビリティーゾーンに維持することがユースケースに適している場合、コンシューマーは VPC エンドポイントにゾーンエンドポイントを使用できます。

## クロスリージョンアクセス
<a name="endpoint-service-cross-region"></a>

サービスプロバイダーは、1 つのリージョンでサービスをホストし、サポート対象リージョンのセット内でサービスを利用可能にすることができます。サービスコンシューマーは、エンドポイントの作成時にサービスリージョンを選択します。

**アクセス許可**
+ デフォルトで、IAM エンティティには、複数のリージョンでエンドポイントサービスを利用可能にしたり、リージョンを越えてエンドポイントサービスにアクセスしたりする許可がありません。クロスリージョンアクセスに必要な許可を付与するには、IAM 管理者が `vpce:AllowMultiRegion` 許可限定アクションを許容する IAM ポリシーを作成できます。
+ エンドポイントサービスの作成時に IAM エンティティがサポート対象リージョンとして指定できるリージョンを制御するには、`ec2:VpceSupportedRegion` 条件キーを使用します。
+ VPC エンドポイントの作成時に IAM エンティティがサービスリージョンとして指定できるリージョンを制御するには、`ec2:VpceServiceRegion` 条件キーを使用します。

**考慮事項**
+ サービスプロバイダーは、オプトインリージョンをエンドポイントサービスのサポート対象リージョンとして追加する前に、オプトインリージョンにオプトインする必要があります。
+ エンドポイントサービスは、そのホストリージョンからアクセスできる必要があります。サポート対象リージョンのセットからホストリージョンを削除することはできません。冗長性を確保するため、エンドポイントサービスを複数のリージョンにデプロイし、各エンドポイントサービスでクロスリージョンアクセスを有効にすることができます。
+ サービスコンシューマーは、オプトインリージョンをエンドポイントのサービスリージョンとして選択する前に、オプトインリージョンにオプトインする必要があります。可能な場合は常に、サービスコンシューマーがクロスリージョン接続ではなく、リージョン内接続を使用してサービスにアクセスすることが推奨されます。リージョン内接続は、レイテンシーとコストを低減します。
+ サービスプロバイダーがサポート対象リージョンのセットからリージョンを削除する場合、サービスコンシューマーは新しいエンドポイントの作成時にそのリージョンをサービスリージョンとして選択できません。これは、このリージョンをサービスリージョンとして使用する既存のエンドポイントからのエンドポイントサービスへのアクセスには影響しないことに留意してください。
+ 高可用性を確保するため、プロバイダーは少なくとも 2 つのアベイラビリティーゾーンを使用する必要があります。クロスリージョンアクセスでは、プロバイダーとコンシューマーが同じアベイラビリティーゾーンを使用する必要がありません。
+ クロスリージョンアクセスは、`use1-az3`、`usw1-az2`、`apne1-az3`、`apne2-az2`、および `apne2-az4` のアベイラビリティーゾーンではサポートされていません。
+ クロスリージョンアクセスでは、 はアベイラビリティーゾーン間のフェイルオーバー AWS PrivateLink を管理します。リージョン間のフェイルオーバーは管理しません。
+ クロスリージョンアクセスは、TCP アイドルタイムアウトにカスタム値が設定されている Network Load Balancer でサポートされていません。
+ クロスリージョンアクセスは UDP フラグメンテーションでサポートされていません。
+ クロスリージョンアクセスは、共有するサービスでのみサポートされます AWS PrivateLink。

## IP アドレスのタイプ
<a name="endpoint-service-ip-address-type"></a>

サービスプロバイダーは、バックエンドサーバーが IPv4 のみをサポートしている場合でも、IPv4、IPv6、または IPv4 と IPv6 の両方を介してサービスエンドポイントをサービスコンシューマーが使用できるようにすることができます。dualstack サポートを有効にすると、既存のコンシューマーは引き続き IPv4 を使用してサービスにアクセスでき、新しいコンシューマーは IPv6 を使用してサービスにアクセスできます。

インターフェイス VPC エンドポイントが IPv4 をサポートしている場合、エンドポイントのネットワークインターフェイスは IPv4 アドレスを持ちます。インターフェイス VPC エンドポイントが IPv6 をサポートしている場合、エンドポイントのネットワークインターフェイスは IPv6 アドレスを持ちます。エンドポイントのネットワークインターフェイスの IPv6 アドレスに、インターネットからアクセスすることはできません。エンドポイントのネットワークインターフェイスを IPv6 アドレスで記述する場合は、`denyAllIgwTraffic` が有効になっていることに注意してください。

**エンドポイントサービス用に IPv6 を有効にするための要件**
+ エンドポイントサービスの VPC とサブネットには、IPv6 CIDR ブロックが関連付けられている必要があります。
+ エンドポイントサービスのすべての Network Load Balancers は、dualstack IP アドレスのタイプを使用する必要があります。ターゲットは IPv6 トラフィックをサポートする必要はありません。サービスがプロキシプロトコルバージョン 2 ヘッダーのソース IP アドレスを処理する場合、IPv6 アドレスを処理する必要があります。

**インターフェイスエンドポイント用に IPv6 を有効にするための要件**
+ エンドポイントサービスは IPv6 リクエストをサポートする必要があります。
+ インターフェイスエンドポイントの IP アドレスのタイプは、次に説明するように、インターフェイスエンドポイントのサブネットと互換性がある必要があります。
  + **[IPv4]** — IPv4 アドレスをエンドポイントのネットワークインターフェイスに割り当てます。このオプションは、選択したすべてのサブネットに IPv4 アドレス範囲がある場合にのみサポートされます。
  + **[IPv6]** — IPv6 アドレスをエンドポイントのネットワークインターフェイスに割り当てます。このオプションは、選択したすべてのサブネットが IPv6 のみのサブネットである場合にのみサポートされます。
  + **[Dualstack]** — IPv4 と IPv6 の両方のアドレスをエンドポイントのネットワークインターフェイスに割り当てます。このオプションは、選択したすべてのサブネットに IPv4 と IPv6 の両方のアドレス範囲がある場合にのみサポートされます。

**インターフェイスエンドポイントの DNS レコード IP アドレスのタイプ**

インターフェイスエンドポイントがサポートする DNS レコードの IP アドレスのタイプによって、作成する DNS レコードが決まります。インターフェイスエンドポイントの DNS レコードの IP アドレスのタイプは、次に説明するように、インターフェイスエンドポイントの IP アドレスのタイプと互換性がある必要があります。
+ **[IPv4]** — プライベート、リージョンレベル、ゾーンレベルの DNS 名の A レコードを作成します。IP アドレスのタイプは **[IPv4]** または **[Dualstack]** である必要があります。
+ **[IPv6]** — プライベート、リージョンレベル、ゾーンレベルの DNS 名の AAAA レコードを作成します。IP アドレスのタイプは **[IPv6]** または **[Dualstack]** である必要があります。
+ **[Dualstack]** — プライベート、リージョンレベル、ゾーンレベルの DNS 名の A および AAAA レコードを作成します。IP アドレスのタイプは **[Dualstack]** である必要があります。

# を使用したサービスの作成 AWS PrivateLink
<a name="create-endpoint-service"></a>

エンドポイントサービスと呼ばれる AWS PrivateLink、 を利用した独自の*サービス*を作成できます。お客様はサービスプロバイダーであり、お客様のサービスへの接続を作成する AWS プリンシパルはサービスコンシューマーです。

エンドポイントサービスには、Network Load Balancer または Gateway Load Balancer のいずれかが必要です。ロードバランサーは、サービスコンシューマーからリクエストを受け取ってサービスにルーティングします。この場合、Network Load Balancer を使用してエンドポイントサービスを作成します。Gateway Load Balancer を使用してエンドポイントサービスを作成する方法の詳細については、「[仮想アプライアンスにアクセスする](vpce-gateway-load-balancer.md)」を参照してください。

**Topics**
+ [考慮事項](#considerations-endpoint-services)
+ [前提条件](#prerequisites-endpoint-services)
+ [エンドポイントサービスを作成する](#create-endpoint-service-nlb)
+ [サービスコンシューマーがエンドポイントサービスを使用できるようにする](#share-endpoint-service)
+ [サービスコンシューマーとしてエンドポイントサービスに接続する](#connect-to-endpoint-service)

## 考慮事項
<a name="considerations-endpoint-services"></a>
+ エンドポイントサービスは、そのサービスを作成したリージョンで使用できます。コンシューマーは、[クロスリージョンアクセス](privatelink-share-your-services.md#endpoint-service-cross-region)を有効にする場合、または VPC ピアリングもしくはトランジットゲートウェイを使用する場合に、他のリージョンからサービスにアクセスできます。
+ サービスコンシューマーがエンドポイントサービスに関する情報を取得すると、サービスプロバイダーと共通するアベイラビリティゾーンのみが表示されます。サービスプロバイダーとサービスコンシューマーが異なるアカウントにある場合、`us-east-1a` などのアベイラビリティゾーン名は、各 AWS アカウントの異なる物理アベイラビリティゾーンにマッピングされる可能性があります。AZ ID を使用して、サービスのアベイラビリティゾーンを一貫して識別できます。詳細については、「*Amazon EC2 ユーザーガイド*」の「[AZ ID](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#az-ids)」を参照してください。
+ サービスコンシューマーがインターフェイスエンドポイントを介してトラフィックをサービスに送信する場合、アプリケーションに提供されるソース IP アドレスは、サービスコンシューマーの IP アドレスではなく、ロードバランサーノードのプライベート IP アドレスです。ロードバランサーでプロキシプロトコルを有効にすると、プロキシプロトコルヘッダーからサービスコンシューマーのアドレスとインターフェイスエンドポイントの ID を取得できます。詳細については、*Network Load Balancer ユーザーガイド*の「[Proxy Protocol](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#proxy-protocol)」を参照してください。
+ Network Load Balancer は単一のエンドポイントサービスに関連付けることができますが、エンドポイントサービスは複数の Network Load Balancer に関連付けることができます。
+ エンドポイントサービスが複数の Network Load Balancer に関連付けられている場合、各エンドポイントネットワークインターフェイスは 1 つのロードバランサーに関連付けられます。エンドポイントネットワークインターフェイスからの最初の接続が開始されると、エンドポイントネットワークインターフェイスと同じアベイラビリティーゾーンにあるいずれかの Network Load Balancer がランダムに選択されます。このエンドポイントネットワークインターフェイスからの以降のすべての接続リクエストは、この選択されたロードバランサーを使用します。どのロードバランサーが選択されてもコンシューマーがエンドポイントサービスを正常に使用できるように、エンドポイントサービスのすべてのロードバランサーに同じリスナーとターゲットグループ設定を使用することをお勧めします。
+  AWS PrivateLink リソースにはクォータがあります。詳細については、「[AWS PrivateLink のクォータ](vpc-limits-endpoints.md)」を参照してください。

## 前提条件
<a name="prerequisites-endpoint-services"></a>
+ サービスを使用可能にする各アベイラビリティゾーンに少なくとも 1 つのサブネットを持つエンドポイントサービス用に VPC を作成します。
+ サービスコンシューマーがエンドポイントサービス用に IPv6 インターフェイス VPC エンドポイントを作成できるようにするには、VPC とサブネットに IPv6 CIDR ブロックが関連付けられている必要があります。
+ VPC でNetwork Load Balancer を作成します。サービスコンシューマー向けにサービスを使用可能にするアベイラビリティゾーンごとに 1 つのサブネットを選択します。低レイテンシーとフォールトトレランスのために、リージョン内の少なくとも 2 つのアベイラビリティーゾーンでサービスを使用可能にすることをお勧めします。
+ Network Load Balancer にセキュリティグループがある場合は、クライアントの IP アドレスからのインバウンドトラフィックを許可する必要があります。または、経由するトラフィックのインバウンドセキュリティグループルールの評価を無効にすることもできます AWS PrivateLink。詳細については、「*User Guide for Network Load Balancers*」の「[Security groups](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-security-groups.html)」を参照してください。
+ エンドポイントサービスが IPv6 リクエストを受け入れることができるようにするには、Network Load Balancers は dualstack IP アドレスのタイプを使用する必要があります。ターゲットは IPv6 トラフィックをサポートする必要はありません。詳細については、「*User Guide for Network Load Balancers*」の「[IP address type](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/network-load-balancers.html#ip-address-type)」を参照してください。

  プロキシプロトコルバージョン 2 ヘッダーから送信元 IP アドレスを処理する場合は、IPv6 アドレスを処理できることを確認してください。
+ サービスを使用可能にする各アベイラビリティゾーンでインスタンスを起動し、ロードバランサーのターゲットグループに登録します。すべての有効なアベイラビリティゾーンでインスタンスを起動しない場合、クロスゾーン負荷分散を有効にして、ゾーンレベルの DNS ホスト名を使用するサービスコンシューマーがサービスにアクセスするのをサポートできます。クロスゾーン負荷分散を有効にすると、リージョン内データ転送料金が適用されます。詳細については、「*User Guide for Network Load Balancers*」の「[Cross-zone load balancing](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/network-load-balancers.html#cross-zone-load-balancing)」を参照してください。

## エンドポイントサービスを作成する
<a name="create-endpoint-service-nlb"></a>

Network Load Balancer を使用してエンドポイントサービスを作成するには、次の手順を使用します。

**コンソールを使用してエンドポイントサービスを作成するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. **[Create endpoint service]**] (エンドポイントサービスの作成) を選択します。

1. **[Load balancer type]** (ロードバランサーのタイプ) で、**[Network]** を選択します。

1. [**使用可能なロードバランサー**] で、エンドポイントサービスに関連付ける Network Load Balancer を選択します。選択したロードバランサーで有効化されているアベイラビリティーゾーンを確認するには、**[選択されたロードバランサーの詳細]** で **[含まれるアベイラビリティーゾーン]** を参照してください。エンドポイントサービスは、これらのアベイラビリティーゾーンで利用できます。

1. (オプション) エンドポイントサービスがホストされているリージョン以外のリージョンからエンドポイントサービスを利用できるようにするには、**[サービスリージョン]** から目的のリージョンを選択します。詳細については、「[クロスリージョンアクセス](privatelink-share-your-services.md#endpoint-service-cross-region)」を参照してください。

1. エンドポイントサービスへの接続リクエストが手動で承諾されなければならないようにするために、**[Require acceptance for endpoint]** (エンドポイントの承諾を要求) で、**[Acceptance required]** (承諾が必要) を選択します。それ以外の場合、これらのリクエストは自動的に受け入れられます。

1. **[Enable private DNS name]** (プライベート DNS 名を有効にする) で、**[Associate a private DNS name with the service]** (プライベート DNS 名をサービスに関連付ける) を選択して、サービスコンシューマーがサービスにアクセスするために使用できるプライベート DNS 名を関連付け、プライベート DNS 名を入力します。それ以外の場合、サービスコンシューマーは が提供するエンドポイント固有の DNS 名を使用できます AWS。サービスコンシューマーがプライベート DNS 名を使用する前に、サービスプロバイダーはドメインを所有していることを確認する必要があります。詳細については、「[DNS 名を管理する](manage-dns-names.md)」を参照してください。

1. **[Supported IP address types]** (サポートされている IP アドレスのタイプ) で、次のいずれかを実行します。
   + **[IPv4]** を選択 – エンドポイントサービスが IPv4 リクエストを受け入れることができるようにします。
   + **[IPv6]** を選択 – エンドポイントサービスが IPv6 リクエストを受け入れることができるようにします。
   + **[IPv4]** と **[IPv6]** を選択 – エンドポイントサービスが IPv4 と IPv6 の両方のリクエストを受け入れることができるようにします。

1. (オプション) タグを追加するには、[**新しいタグを追加**] を選択し、そのタグのキーと値を入力します。

1. **[作成]** を選択します。

**コマンドラインを使用してエンドポイントサービスを作成するには**
+ [create-vpc-endpoint-service-configuration](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-endpoint-service-configuration.html) (AWS CLI)
+ [New-EC2VpcEndpointServiceConfiguration](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2VpcEndpointServiceConfiguration.html) (Tools for Windows PowerShell)

## サービスコンシューマーがエンドポイントサービスを使用できるようにする
<a name="share-endpoint-service"></a>

AWS プリンシパルは、インターフェイス VPC エンドポイントを作成することで、エンドポイントサービスにプライベートに接続できます。サービスプロバイダーは、自社のサービスをサービスコンシューマーが使用できるようにするために、次のことを行う必要があります。
+ 各サービスコンシューマーがエンドポイントサービスに接続できるようにする許可を追加します。詳細については、「[許可を管理する](configure-endpoint-service.md#add-remove-permissions)」を参照してください。
+ サービスの名前とサポートされているアベイラビリティゾーンをサービスコンシューマーに伝え、サービスに接続するためにインターフェイスエンドポイントを作成できるようにします。詳細については、「[サービスコンシューマーとしてエンドポイントサービスに接続する](#connect-to-endpoint-service)」を参照してください。
+ サービスコンシューマーからのエンドポイント接続リクエストを受け入れます。詳細については、「[接続リクエストを承諾または拒否する](configure-endpoint-service.md#accept-reject-connection-requests)」を参照してください。

## サービスコンシューマーとしてエンドポイントサービスに接続する
<a name="connect-to-endpoint-service"></a>

サービスコンシューマーは、次の手順を使用して、エンドポイントサービスに接続するためのインターフェイスエンドポイントを作成します。

**コンソールを使用してインターフェイスエンドポイントを作成するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoints]** (エンドポイント) を選択します。

1. **[エンドポイントの作成]** を選択します。

1. **[タイプ]** で **[NLB と GWLB を使用するエンドポイントサービス]** を選択します。

1. **[サービス名]** にサービスの名前 (`com.amazonaws.vpce.us-east-1.vpce-svc-0e123abc123198abc` など) を入力し、**[サービスの検証]** を選択します。

1. (オプション) エンドポイントリージョン以外のリージョンで利用可能なエンドポイントサービスに接続するには、**[サービスリージョン]**、**[クロスリージョンエンドポイントを有効にする]** の順に選択してから、目的のリージョンを選択します。詳細については、「[クロスリージョンアクセス](privatelink-share-your-services.md#endpoint-service-cross-region)」を参照してください。

1. **[サブネット]** でエンドポイントサービスへのアクセス元になるサブネットを選択します。

1. **[サブネット]** には、エンドポイントネットワークインターフェイスの作成先となるサブネットを選択します。

1. **[IP address type]** (IP アドレスのタイプ) で、次のオプションから選択します。
   + **[IPv4]** – エンドポイントネットワークインターフェイスに IPv4 アドレスを割り当てます。このオプションは、選択したすべてのサブネットに IPv4 のアドレス範囲があり、エンドポイントサービスが IPv4 リクエストを受け入れる場合にのみサポートされます。
   + **[IPv6]** – エンドポイントネットワークインターフェイスに IPv6 アドレスを割り当てます。このオプションは、選択したすべてのサブネットが IPv6 のみのサブネットで、エンドポイントサービスが IIPv6 リクエストを受け入れる場合にのみサポートされます。
   + **[デュアルスタック]** – エンドポイントネットワークインターフェイスに IPv4 と IPv6 両方のアドレスを割り当てます。このオプションは、選択したすべてのサブネットに IPv4 と IPv6 の両方のアドレス範囲があり、エンドポイントサービスが IPv4 リクエストと IPv6 リクエストの両方を受け入れる場合にのみサポートされます。

1. **[DNS record IP type]** (DNS レコードの IP のタイプ) で、次のオプションから選択します。
   + **[IPv4]** — プライベート、リージョンレベル、ゾーンレベルの DNS 名の A レコードを作成します。IP アドレスのタイプは **[IPv4]** または **[Dualstack]** である必要があります。
   + **[IPv6]** — プライベート、リージョンレベル、ゾーンレベルの DNS 名の AAAA レコードを作成します。IP アドレスのタイプは **[IPv6]** または **[Dualstack]** である必要があります。
   + **[Dualstack]** — プライベート、リージョンレベル、ゾーンレベルの DNS 名の A および AAAA レコードを作成します。IP アドレスのタイプは **[Dualstack]** である必要があります。
   + **[Service defined]** (定義されたサービス) — プライベート、リージョンレベル、ゾーンレベルの DNS 名に A レコードを作成し、リージョンレベルおよびゾーンレベルの DNS 名に AAAA レコードを作成します。IP アドレスのタイプは **[Dualstack]** である必要があります。

1. **[Security group]** (セキュリティグループ) で、エンドポイントネットワークインターフェイスに関連付けるセキュリティグループを選択します。

1. **エンドポイントの作成** を選択します。

**コマンドラインを使用してインターフェイスエンドポイントを作成するには**
+ [create-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-endpoint.html) (AWS CLI)
+ [New-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2VpcEndpoint.html) (Tools for Windows PowerShell)

# エンドポイントサービスを設定する
<a name="configure-endpoint-service"></a>

エンドポイントサービスを作成したら、その設定を更新できます。

**Topics**
+ [許可を管理する](#add-remove-permissions)
+ [接続リクエストを承諾または拒否する](#accept-reject-connection-requests)
+ [ロードバランサーを管理する](#associate-load-balancer)
+ [プライベート DNS 名を関連付ける](#associate-private-dns-name)
+ [サポート対象リージョンを変更する](#manage-supported-regions)
+ [サポートされている IP アドレスのタイプを変更する](#supported-ip-address-types)
+ [タグの管理](#add-remove-endpoint-service-tags)

## 許可を管理する
<a name="add-remove-permissions"></a>

アクセス許可と承認設定を組み合わせることで、エンドポイントサービスにアクセスできるサービスコンシューマー (AWS プリンシパル) を制御できます。例えば、信頼している特定のプリンシパルに許可を付与して自動的にすべての接続リクエストを承諾するか、プリンシパルのより広範なグループに許可を付与して、信頼している特定の接続リクエストを手動で承諾できます。

デフォルトでは、サービスコンシューマーはエンドポイントサービスを使用できません。特定の AWS プリンシパルがインターフェイス VPC エンドポイントを作成してエンドポイントサービスに接続できるようにするアクセス許可を追加する必要があります。 AWS プリンシパルのアクセス許可を追加するには、その Amazon リソースネーム (ARN) が必要です。次のリストには、サポートされている AWS プリンシパルの ARN 例が含まれています。AWS プリンシパルARNs

AWS アカウント (アカウント内のすべてのプリンシパルを含む)  
arn:aws:iam::*account\$1id*:root

ロール   
 arn:aws:iam::*account\$1id*:role/*role\$1name*

ユーザー  
arn:aws:iam::*account\$1id*:user/*user\$1name*

すべての のすべてのプリンシパル AWS アカウント  
\$1

**考慮事項**
+ すべてのユーザーにエンドポイントサービスにアクセスするための許可を付与し、すべてのリクエストを受け入れるようにエンドポイントサービスを設定すると、パブリック IP アドレスがなくてもロードバランサーはパブリックになります。
+ アクセス許可を削除しても、エンドポイントと以前に受け入れられたサービス間の既存の接続には影響しません。

**コンソールを使用してエンドポイントサービスの許可を管理するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択し、**[Allow principals]** (プリンシパルを許可) タブを選択します。

1. 許可を追加するには、**[Allow principals]** (プリンシパルを許可) を選択します。**[Principals to add]** (追加するプリンシパル) で、プリンシパルの ARN を入力します。さらにプリンシパルを追加するには、[**プリンシパルを追加**] を選択します。プリンシパルの追加が完了したら、**[Allow principals]** (プリンシパルを許可) を選択します。

1. 許可を削除するには、プリンシパルを選択し、**[Actions]** (アクション)、**[Delete]** (削除) を選択します。確認を求められたら、**delete**と入力し、[**削除**] を選択します。

**コマンドラインを使用してエンドポイントサービスの許可を追加するには**
+ [modify-vpc-endpoint-service-permissions](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint-service-permissions.html) (AWS CLI)
+ [Edit-EC2EndpointServicePermission](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2EndpointServicePermission.html) (Tools for Windows PowerShell)

## 接続リクエストを承諾または拒否する
<a name="accept-reject-connection-requests"></a>

アクセス許可と承認設定を組み合わせることで、エンドポイントサービスにアクセスできるサービスコンシューマー (AWS プリンシパル) を制御できます。例えば、信頼している特定のプリンシパルに許可を付与して自動的にすべての接続リクエストを承諾するか、プリンシパルのより広範なグループに許可を付与して、信頼している特定の接続リクエストを手動で承諾できます。

接続リクエストを自動的に受け入れるようにエンドポイントサービスを設定できます。それ以外の場合、手動で承諾または拒否する必要があります。接続リクエストを承諾しない場合、サービスコンシューマーはエンドポイントサービスにアクセスできません。

すべてのユーザーにエンドポイントサービスにアクセスするための許可を付与し、すべてのリクエストを受け入れるようにエンドポイントサービスを設定すると、パブリック IP アドレスがなくてもロードバランサーはパブリックになります。

接続リクエストが承認または拒否されたときに通知を受け取ることができます。詳細については、「[エンドポイントサービスイベントのアラートを受け取る](create-notification-endpoint-service.md)」を参照してください。

**コンソールを使用して承諾の設定を変更するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択します。

1. [**Actions**]、[**Modify endpoint acceptance setting**] の順に選択します。

1. **[Acceptance required]** (承認が必要) を選択または選択解除します。

1. **[Save changes]** (変更の保存) を選択します。

**コマンドラインを使用して承諾の設定を変更するには**
+ [modify-vpc-endpoint-service-configuration](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint-service-configuration.html) (AWS CLI)
+ [Edit-EC2VpcEndpointServiceConfiguration](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpointServiceConfiguration.html) (Tools for Windows PowerShell)

**コンソールを使用して接続リクエストを承諾または拒否するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択します。

1. **[Endpoint connections]** (エンドポイント接続) タブで、エンドポイント接続を選択します。

1. 接続リクエストを承諾するには、**[Actions]** (アクション)、**[Accept endpoint connection request]** (エンドポイント接続リクエストを承諾) の順に選択します。確認を求められたら、**accept** と入力し、**[Accept]** (承諾) を選択します。

1. 接続リクエストを拒否するには、**[アクション]**、**[エンドポイント接続リクエストを拒否]** の順に選択します。確認を求められたら、**reject** と入力し、**[Reject]** (拒否) を選択します。

**コマンドラインを使用して接続リクエストを承諾または拒否するには**
+ [accept-vpc-endpoint-connections](https://docs.aws.amazon.com/cli/latest/reference/ec2/accept-vpc-endpoint-connections.html) または [reject-vpc-endpoint-connections](https://docs.aws.amazon.com/cli/latest/reference/ec2/reject-vpc-endpoint-connections.html) (AWS CLI)
+ [Approve-EC2EndpointConnection](https://docs.aws.amazon.com/powershell/latest/reference/items/Approve-EC2EndpointConnection.html) または [Deny-EC2EndpointConnection](https://docs.aws.amazon.com/powershell/latest/reference/items/Deny-EC2EndpointConnection.html) (Tools for Windows PowerShell)

## ロードバランサーを管理する
<a name="associate-load-balancer"></a>

エンドポイントサービスに関連付けられているロードバランサーを管理できます。エンドポイントサービスにエンドポイントが接続されている場合、ロードバランサーの関連付けを解除することはできません。

ロードバランサーに別のアベイラビリティーゾーンを有効にする場合は、**[エンドポイントサービス]** ページの**[ロードバランサー]** タブにそのアベイラビリティーゾーンが表示されます。ただし、エンドポイントサービスに対して有効化されたり、 AWS マネジメントコンソールにあるエンドポイントサービスの **[詳細]** タブに表示されたりすることはありません。新しいアベイラビリティーゾーンのエンドポイントサービスを有効にする必要があります。

ロードバランサーのアベイラビリティーゾーンをエンドポイントサービス向けに準備するには、数分かかる場合があります。オートメーションを使用している場合は、オートメーションプロセスに待機時間を追加してから、新しいアベイラビリティーゾーンのエンドポイントサービスを有効にすることをお勧めします。

**コンソールを使用してエンドポイントサービスのロードバランサーを管理するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択します。

1. **[Actions]** (アクション)、**[Associate or disassociate load balancers]** (ロードバランサーの関連付け/関連付けの解除) の順に選択します。

1. 必要に応じてエンドポイントサービス設定を変更します。例えば、次のようになります。
   + ロードバランサーのチェックボックスをオンにすると、エンドポイントサービスに関連付けられます。
   + ロードバランサーのチェックボックスをオフにすると、エンドポイントサービスとの関連付けを解除します。少なくとも 1 つのロードバランサーを選択する必要があります。

1. **[変更を保存]** を選択します。

   エンドポイントサービスは、ロードバランサーに追加された新しいアベイラビリティーゾーンのすべてで有効になります。新しいアベイラビリティーゾーンは、エンドポイントサービスの **[ロードバランサー]** タブと **[詳細] **タブにリストされています。

 エンドポイントサービスのアベイラビリティーゾーンを有効にすると、サービスコンシューマーはそのアベイラビリティーゾーンからインターフェイス VPC エンドポイントにサブネットを追加できます。

**コマンドラインを使用してエンドポイントサービスのロードバランサーを管理するには**
+ [modify-vpc-endpoint-service-configuration](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint-service-configuration.html) (AWS CLI)
+ [Edit-EC2VpcEndpointServiceConfiguration](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpointServiceConfiguration.html) (Tools for Windows PowerShell)

ロードバランサーで最近有効になったアベイラビリティーゾーンでエンドポイントサービスを有効にするには、エンドポイントサービスの ID を使用してコマンドを呼び出します。

## プライベート DNS 名を関連付ける
<a name="associate-private-dns-name"></a>

プライベート DNS 名をエンドポイントサービスに関連付けることができます。プライベート DNS 名を関連付けたら、DNS サーバー上のドメインのエントリを更新する必要があります。サービスコンシューマーがプライベート DNS 名を使用する前に、サービスプロバイダーはドメインを所有していることを確認する必要があります。詳細については、「[DNS 名を管理する](manage-dns-names.md)」を参照してください。

**コンソールを使用してエンドポイントサービスのプライベート DNS 名を変更するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択します。

1. **[Actions]** (アクション)、**[Modify private DNS name]** (プライベート DNS 名の変更) の順に選択します。

1. **[Associate a private DNS name with the service]** (プライベート DNS 名をサービスに関連付ける) を選択して、プライベート DNS 名を入力します。
   + ドメイン名には小文字を使用する必要があります。
   + ドメイン名にはワイルドカードを使用できます (例: **\$1.myexampleservice.com**)。

1. **[Save changes]** (変更の保存) をクリックします。

1. プライベート DNS 名は、検証ステータスが **[verified]** (検証済み) になると、サービスコンシューマーによる使用が可能となります。検証ステータスが変更された場合、新しい接続リクエストは拒否されますが、既存の接続には影響しません。

**コマンドラインを使用してエンドポイントサービスのプライベート DNS 名を変更するには**
+ [modify-vpc-endpoint-service-configuration](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint-service-configuration.html) (AWS CLI)
+ [Edit-EC2VpcEndpointServiceConfiguration](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpointServiceConfiguration.html) (Tools for Windows PowerShell)

**コンソールを使用してドメイン検証プロセスを開始するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択します。

1. **[Actions]** (アクション) を選択し、**[Verify domain ownership for private DNS name]** (プライベート DNS 名のドメイン所有権を検証) を選択します。

1. 確認を求められたら、「**verify**」と入力し、[**検証**] を選択します。

**コマンドラインを使用してドメイン検証プロセスを開始するには**
+ [start-vpc-endpoint-service-private-dns-verification](https://docs.aws.amazon.com/cli/latest/reference/ec2/start-vpc-endpoint-service-private-dns-verification.html) (AWS CLI)
+ [Start-EC2VpcEndpointServicePrivateDnsVerification](https://docs.aws.amazon.com/powershell/latest/reference/items/Start-EC2VpcEndpointServicePrivateDnsVerification.html) (Tools for Windows PowerShell)

## サポート対象リージョンを変更する
<a name="manage-supported-regions"></a>

エンドポイントサービスのサポート対象リージョンのセットを変更できます。オプトインリージョンについては、追加する前にオプトインする必要があります。エンドポイントサービスをホストするリージョンを削除することはできません。

リージョンを削除すると、サービスコンシューマーはそのリージョンをサービスリージョンとして指定する新しいエンドポイントを作成できません。リージョンを削除しても、そのリージョンをサービスリージョンとして指定する既存のエンドポイントには影響しません。リージョンを削除するときは、そのリージョンからの既存のエンドポイント接続をすべて拒否することが推奨されます。

**エンドポイントサービスのサポート対象リージョンを変更する**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択します。

1. **[アクション]**、**[サポートされているリージョンを変更]** の順に選択します。

1. 必要に応じてリージョンの選択と選択解除を行います。

1. **[Save changes]** (変更の保存) をクリックします。

## サポートされている IP アドレスのタイプを変更する
<a name="supported-ip-address-types"></a>

エンドポイントサービスでサポートされている IP アドレスのタイプを変更できます。

**考慮事項**  
エンドポイントサービスが IPv6 リクエストを受け入れることができるようにするには、Network Load Balancers は dualstack IP アドレスのタイプを使用する必要があります。ターゲットは IPv6 トラフィックをサポートする必要はありません。詳細については、「*User Guide for Network Load Balancers*」の「[IP address type](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/network-load-balancers.html#ip-address-type)」を参照してください。

**コンソールを使用してサポートされている IP アドレスのタイプを変更するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. VPC エンドポイントサービスを選択します。

1. **[Actions]** (アクション)、**[Modify supported IP address types]** (サポートされる IP アドレスのタイプを変更) を選択します。

1. **[Supported IP address types]** (サポートされている IP アドレスのタイプ) で、次のいずれかを実行します。
   + **[IPv4]** を選択 – エンドポイントサービスが IPv4 リクエストを受け入れることができるようにします。
   + **[IPv6]** を選択 – エンドポイントサービスが IPv6 リクエストを受け入れることができるようにします。
   + **[IPv4]** と **[IPv6]** を選択 – エンドポイントサービスが IPv4 と IPv6 の両方のリクエストを受け入れることができるようにします。

1. **[Save changes]** (変更の保存) をクリックします。

**コマンドラインを使用してサポートされている IP アドレスのタイプを変更するには**
+ [modify-vpc-endpoint-service-configuration](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint-service-configuration.html) (AWS CLI)
+ [Edit-EC2VpcEndpointServiceConfiguration](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpointServiceConfiguration.html) (Tools for Windows PowerShell)

## タグの管理
<a name="add-remove-endpoint-service-tags"></a>

リソースにタグを付けて、識別しやすくしたり、組織のニーズに応じて分類したりできます。

**コンソールを使用してエンドポイントサービスのタグを管理するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. VPC エンドポイントサービスを選択します。

1. [**Actions**] (アクション)、[**Manage tags**] (タグの管理) を選択します。

1. 追加するタグごとに、**[Add new tag]** (新しいタグを追加) を選択し、タグキーとタグ値を入力します。

1. タグを削除するには、タグのキーと値の右側にある **[Remove]** (削除) を選択します。

1. **[保存]** を選択します。

**コンソールを使用してエンドポイント接続のタグを管理するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. VPC エンドポイントサービスを選択し、**[Endpoint connections]** (エンドポイント接続) タブを選択します。

1. エンドポイント接続を選択後、**[Actions]** (アクション)、**[Manage tags]** (タグを管理) の順に選択します。

1. 追加するタグごとに、**[Add new tag]** (新しいタグを追加) を選択し、タグキーとタグ値を入力します。

1. タグを削除するには、タグのキーと値の右側にある **[Remove]** (削除) を選択します。

1. **[保存]** を選択します。

**コンソールを使用してエンドポイントサービスの許可のタグを管理するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. VPC エンドポイントサービスを選択し、**[Allow principals]** (プリンシパルを許可) タブを選択します。

1. プリンシパルを選択し、**[Actions]** (アクション)、**[Manage tags]** (タグを管理) の順に選択します。

1. 追加するタグごとに、**[Add new tag]** (新しいタグを追加) を選択し、タグキーとタグ値を入力します。

1. タグを削除するには、タグのキーと値の右側にある **[Remove]** (削除) を選択します。

1. **[保存]** を選択します。

**コマンドラインを使用してタグを追加および削除するには**
+ [create-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-tags.html) および [delete-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-tags.html) (AWS CLI)
+ [New-EC2Tag](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Tag.html) および [Remove-EC2Tag](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2Tag.html) (Tools for Windows PowerShell)

# VPC エンドポイントサービスの DNS 名を管理する
<a name="manage-dns-names"></a>

サービスプロバイダーは、エンドポイントサービスのプライベート DNS 名を設定できます。サービスプロバイダーがそのサービスをエンドポイントサービスとしてパブリックエンドポイント経由で利用可能にするとしましょう。サービスプロバイダーがパブリックエンドポイントの DNS 名をエンドポイントサービスのプライベート DNS 名として使用する場合、サービスコンシューマーは同じクライアントアプリケーションを使用してパブリックエンドポイントまたはエンドポイントサービスにアクセスでき、変更は必要ありません。リクエスト元がサービスコンシューマー VPC である場合は、プライベート DNS サーバーが DNS 名をエンドポイントネットワークインターフェイスの IP アドレスに解決します。それ以外の場合は、パブリック DNS サーバーが DNS 名をパブリックエンドポイントに解決します。

エンドポイントサービスのプライベート DNS 名を設定する前に、ドメインの所有権の検証チェックを実行して、ドメインを所有していることを証明する必要があります。

**考慮事項**
+ エンドポイントサービスはプライベート DNS 名を 1 つだけ持つことができます。
+ コンシューマーがサービスに接続するためのインターフェイスエンドポイントを作成すると、プライベートホストゾーンが作成され、サービスコンシューマー VPC に関連付けられます。プライベートホストゾーンに、エンドポイントサービスのプライベート DNS 名を VPC エンドポイントのリージョン DNS 名にマップする CNAME レコードが作成されます。コンシューマーがサービスのパブリック DNS 名にリクエストを送信すると、プライベート DNS サーバーがそのリクエストをエンドポイントネットワークインターフェイスの IP アドレスに解決します。
+ ドメインを検証するには、パブリックホスト名、またはパブリック DNS プロバイダーが必要です。
+ サブドメインのドメインを検証できます。たとえば、*a.example.com* ではなく、 *example.com*を検証できます。各 DNS ラベルには最大で 63 文字を指定することができ、ドメイン名全体の合計文字数は 255 を超えることはできません。

  追加のサブドメインを追加する場合は、サブドメインまたはドメインを検証する必要があります。たとえば、*a.example.com* があり、*example.com* を検証したとします。次に、*b.example.com* をプライベート DNS 名として追加するとします。サービスコンシューマーがこの名前を使用できるようにするには、*example.com* または *b.example.com* を検証する必要があります。
+ プライベート DNS 名は、Gateway Load Balancer エンドポイントではサポートされません。

## ドメインの所有権の検証
<a name="verify-domain-ownership"></a>

お客様のドメインは、DNS プロバイダーを介して管理する一連のドメインネームサービス (DNS) レコードに関連付けられます。TXT レコードは、ドメインに関する追加情報を提供する一種の DNS レコードです。名前と値から構成されます。検証プロセスの一環として、パブリックドメインの DNS サーバーに TXT レコードを追加する必要があります。

その TXT レコードがドメインの DNS 設定内にあることが検出されると、ドメインの所有権の検証は完了です。

レコードを追加したら、Amazon VPC コンソールを使用してドメイン検証プロセスのステータスを確認できます。ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。エンドポイントサービスを選択し、**[Details]** (詳細) タブで **[Domain verification status]** (ドメイン検証ステータス) の値を確認します。ドメイン検証が保留中の場合は、数分待ってから画面を更新してください。必要に応じて、検証プロセスを手動で開始できます。**[Actions]** (アクション) を選択し、**[Verify domain ownership for private DNS name]** (プライベート DNS 名のドメイン所有権を検証) を選択します。

プライベート DNS 名は、検証ステータスが **[verified]** (検証済み) になると、サービスコンシューマーによる使用が可能となります。検証ステータスが変更された場合、新しい接続リクエストは拒否されますが、既存の接続には影響しません。

検証ステータスが **[failed]** (失敗) の場合は、「[ドメインの検証に関する問題をトラブルシューティングする](#troubleshoot-domain-verification)」を参照してください。

## 名前と値を取得する
<a name="get-name-and-value"></a>

TXT レコードで使用する名前と値が提供されます。例えば、情報は AWS マネジメントコンソールで入手できます。エンドポイントサービスを選択し、エンドポイントサービスの **[Details]** (詳細) タブで、**[Domain verification name]** (ドメイン検証名) と **[Domain verification value]** (ドメイン検証値) を確認します。次の [describe-vpc-endpoint-service-configurations](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoint-service-configurations.html) AWS CLI コマンドを使用して、指定されたエンドポイントサービスのプライベート DNS 名の設定に関する情報を取得することもできます。

```
aws ec2 describe-vpc-endpoint-service-configurations \
    --service-ids vpce-svc-071afff70666e61e0 \
    --query ServiceConfigurations[*].PrivateDnsNameConfiguration
```

以下は出力の例です。TXT レコードを作成するときに `Value` と `Name` を使用します。

```
[
    {
        "State": "pendingVerification",
        "Type": "TXT",
        "Value": "vpce:l6p0ERxlTt45jevFwOCp",
        "Name": "_6e86v84tqgqubxbwii1m"
    }
]
```

例えば、ドメイン名が *example.com* で、`Value` と `Name` が前述の出力例に示されているとします。次のテーブルは、TXT レコード設定の例です。


| 名前 | タイプ | 値 | 
| --- | --- | --- | 
|  \$16e86v84tqgqubxbwii1m.example.com  |  TXT  |  vpce:l6p0ERxlTt45jevFwOCp  | 

ベースドメイン名が既に使用されている可能性があるため、レコードサブドメインとして `Name` を使用することをお勧めします。ただし、DNS プロバイダーが DNS レコード名にアンダースコアを含めることを許可していない場合は、「\$16e86v84tqgqubxbwii1m」を省略し、単に「example.com」を TXT レコードで使用できます。

「\$16e86v84tqgqubxbwii1m.example.com」を検証したら、サービスコンシューマーは「example.com」またはサブドメイン (「service.example.com」や「my.service.example.com」など) を使用できます。

## ドメインの DNS サーバーに TXT レコードを追加する
<a name="add-txt-record-to-dns-server"></a>

ドメインの DNS サーバーに TXT レコードを追加する手順は DNS プロバイダーによって異なります。DNS プロバイダーは、Amazon Route 53 または別のドメイン名レジストラである可能性があります。

### Amazon Route 53
<a name="add-txt-record-route53"></a>

シンプルルーティングポリシーを使用してパブリックホストゾーンのレコードを作成します。以下の値を使用します。
+ **[Record name]** (レコード名) で、ドメインまたはサブドメインを入力します。
+ **レコードタイプ**で、[**TXT**] を選択します。
+ **[Value/Route traffic to]** (値/トラフィックのルーティング先) には、ドメイン検証の値を入力します。
+ **[TTL (seconds)]** (TTL (秒)) に **1800** と入力します。

詳細については、「*Amazon Route 53 Developer Guide*」の「[Create records using the console](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-creating.html)」を参照してください。

### 一般的な手順
<a name="add-txt-record-general"></a>

DNS プロバイダーのウェブサイトに移動し、アカウントにサインインします。ドメインの DNS レコードを更新するページを見つけます。指定された名前と値で TXT レコードを追加します。DNS レコードの更新が有効になるには、最大 48 時間かかることがありますが、多くの場合それよりも大幅に早く有効になります。

より具体的な方法については、DNS プロバイダーのドキュメントを参照してください。次のテーブルには、いくつかの主要なプロバイダーに関するドキュメントへのリンクが記載されています。このリストは、包括的であることを意図されたものではなく、これらの企業が提供する製品またはサービスの推奨を目的としたものでもありません。


| DNS/ホスティングプロバイダー | ドキュメントのリンク | 
| --- | --- | 
|  GoDaddy  |  [TXT レコードを追加する](https://www.godaddy.com/help/add-a-txt-record-19232)  | 
|  Dreamhost  |  [カスタム DNS レコードの追加](https://help.dreamhost.com/hc/en-us/articles/360035516812-Adding-custom-DNS-records)  | 
|  Cloudflare  |  [DNS レコードを管理する](https://developers.cloudflare.com/dns/manage-dns-records/how-to/create-dns-records/)  | 
|  HostGator  |  [Manage DNS Records with HostGator/eNom](https://www.hostgator.com/help/article/manage-dns-records-with-hostgatorenom)  | 
|  Namecheap  |  [ドメインの TXT/SPF/DKIM/DMARC レコードを追加する方法](https://www.namecheap.com/support/knowledgebase/article.aspx/317/2237/how-do-i-add-txtspfdkimdmarc-records-for-my-domain/)  | 
|  Names.co.uk  |  [ドメインの DNS 設定の変更](https://www.names.co.uk/support/articles/changing-your-domains-dns-settings/)  | 
|  Wix  |  [Wix アカウントの TXT レコードの追加または更新](https://support.wix.com/en/article/adding-or-updating-txt-records-in-your-wix-account)  | 

## TXT レコードが発行されているかを確認する
<a name="verify-txt-record-publication"></a>

次のステップを使用して、プライベート DNS 名ドメインの所有権の検証 TXT レコードが DNS サーバーに正しく発行されているかどうかを検証できます。Windows および Linux で使用できる **nslookup** コマンドを実行します。

ドメインにサービスを提供する DNS サーバーに対してクエリを実行する理由は、これらのサーバーにドメインの最新情報が格納されているためです。ドメイン情報が他の DNS サーバーに伝達されるまでには時間がかかります。

**TXT レコードが DNS サーバーに公開されていることを確認するには**

1. 次のコマンドを使用して、ドメインのネームサーバーを見つけます。

   ```
   nslookup -type=NS example.com
   ```

   出力に、ドメインにサービスを提供しているネームサーバーが示されます。次のステップで、これらのサーバーのいずれかをクエリします。

1. 次のコマンドを使用して、TXT レコードが正しく発行されていることを確認します。ここで、*name\$1server* は、前の手順で見つけたネームサーバーの 1 つです。

   ```
   nslookup -type=TXT  _6e86v84tqgqubxbwii1m.example.com name_server
   ```

1. 前のステップの出力で、`text =` に続く文字列が TXT 値と一致することを確認します。

   この例では、レコードが正しく発行されている場合、出力には次が含まれます。

   ```
   1. _6e86v84tqgqubxbwii1m.example.com text = "vpce:l6p0ERxlTt45jevFwOCp"
   ```

## ドメインの検証に関する問題をトラブルシューティングする
<a name="troubleshoot-domain-verification"></a>

ドメインの検証プロセスが失敗した場合、次の情報は問題をトラブルシューティングするのに役立ちます。
+ DNS プロバイダーが TXT レコード名でアンダースコアを許可しているかどうかを確認してください。DNS プロバイダーがアンダースコアを許可していない場合は、TXT レコードからドメイン検証名 (例：「\$16e86v84tqgqubxbwii1m」) を省略できます。
+ DNS プロバイダーが TXT レコードの末尾にドメイン名を追加したかどうかを確認します。一部の DNS プロバイダは、TXT レコードの属性名にドメイン名を自動的に追加します。ドメイン名のこの重複を避けるために、TXT レコードの作成時にドメイン名の末尾にピリオドを追加します。これは、ドメイン名を TXT レコードに追加する必要はないことを DNS プロバイダーに伝えます。
+ DNS プロバイダーが、小文字のみを使用するように DNS レコードの値を変更していないかどうかを確認します。提供された値と完全に一致する属性値を持つ検証レコードがある場合にのみ、ドメインを検証します。DNS プロバイダーが TXT レコードの値を小文字のみを使用するように変更した場合は、その DNS プロバイダーにお問い合わせください。
+ 複数のリージョンまたは複数の AWS アカウントをサポートしているため、ドメインを複数回確認する必要がある場合があります。DNS プロバイダーが同じ属性名の複数の TXT レコードを持つことを許可していない場合は、DNS プロバイダーが、同じ TXT レコードに複数の属性値を割り当てることを許可しているかどうかを確認してください。例えば、DNS が Amazon Route 53 によって管理されている場合、次の手順を使用できます。

  1. Route 53 コンソールで、最初のリージョンのドメインを検証したときに作成した TXT レコードを選択します。

  1. **[Value]** (値) で、既存の属性値の末尾に移動し、Enter キーを押します。

  1. 追加のリージョンの属性値を追加し、レコードセットを保存します。

  お客様の DNS プロバイダーで、同じ TXT レコードに複数の値を割り当てることが許可されていない場合は、TXT レコードの属性名の値で 1 回、属性名から削除された値で再度ドメインを検証することができます。ただし、同じドメインは 2 回まで検証できます。

# エンドポイントサービスイベントのアラートを受け取る
<a name="create-notification-endpoint-service"></a>

通知を作成して、エンドポイントサービスに関連する特定のイベントに関するアラートを受信できます。例えば、接続リクエストが承諾または拒否されたときに E メールを受信できます。

**Topics**
+ [SNS 通知を作成する](#create-sns-notification-endpoint-service)
+ [アクセスポリシーを追加する](#add-access-policy-endpoint-service)
+ [キーポリシーを追加](#add-key-policy-endpoint-service)

## SNS 通知を作成する
<a name="create-sns-notification-endpoint-service"></a>

次の手順を使用して、通知用の Amazon SNS トピックを作成し、トピックにサブスクライブします。

**コンソールを使用してエンドポイントサービスの通知を作成するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択します。

1. **[Notifications]** (通知) タブで、**[Create notification]** (通知の作成) を選択します。

1. **[Notification ARN]** (通知 ARN) で、作成した SNS トピックの ARN を選択します。

1. イベントをサブスクライブするには、**[Events]** (イベント) から選択します。
   + **[Connect]** (接続) – サービスコンシューマーがインターフェイスエンドポイントを作成しました。これは、接続リクエストをサービスプロバイダーに送信します。
   + **[Accept]** (承諾) – サービスプロバイダーが接続リクエストを受け入れました。
   + **[Reject]** (拒否) – サービスプロバイダーが接続リクエストを拒否しました。
   + **[Delete]** (削除) — サービスコンシューマーがインターフェイスエンドポイントを削除しました。

1. [**通知を作成**] を選択します。

**コマンドラインを使用してエンドポイントサービスの通知を作成するには**
+ [create-vpc-endpoint-connection-notification](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-endpoint-connection-notification.html) (AWS CLI)
+ [New-EC2VpcEndpointConnectionNotification](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2VpcEndpointConnectionNotification.html) (Tools for Windows PowerShell)

## アクセスポリシーを追加する
<a name="add-access-policy-endpoint-service"></a>

次のような通知をユーザーに代わって発行 AWS PrivateLink することを に許可するアクセスポリシーを SNS トピックに追加します。詳細については、「[Amazon SNS トピックのアクセスポリシーを編集するにはどうすればよいですか?](https://repost.aws/knowledge-center/sns-edit-topic-access-policy)」を参照してください。`aws:SourceArn` および `aws:SourceAccount` グローバル条件キーを使用して、[混乱した代理問題](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)に対して保護します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "vpce.amazonaws.com"
            },
            "Action": "SNS:Publish",
            "Resource": "arn:aws:sns:us-east-1:111111111111:topic-name",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:ec2:us-east-1:111111111111:vpc-endpoint-service/service-id"
                },
                "StringEquals": {
                    "aws:SourceAccount": "111111111111"
                }
            }
        }
    ]
}
```

------

## キーポリシーを追加
<a name="add-key-policy-endpoint-service"></a>

暗号化された SNS トピックを使用している場合、KMS キーのリソースポリシーは AWS KMS API オペレーションを呼び出す AWS PrivateLink ために を信頼する必要があります。以下は、キーポリシーの例です。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "vpce.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": "arn:aws:kms:us-east-1:111111111111:key/key-id",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:ec2:us-east-1:111111111111:vpc-endpoint-service/service-id"
                },
                "StringEquals": {
                    "aws:SourceAccount": "111111111111"
                }
            }
        }
    ]
}
```

------

# エンドポイントサービスを削除する
<a name="delete-endpoint-service"></a>

不要になったエンドポイントサービスは、削除することができます。`available` または `pending-acceptance` 状態のエンドポイントサービスに接続されているエンドポイントがある場合、エンドポイントサービスを削除することはできません。

エンドポイントサービスを削除しても、関連付けられているロードバランサーは削除されず、ロードバランサーのターゲットグループに登録されているアプリケーションサーバーには影響しません。

**コンソールを使用してエンドポイントサービスを削除するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Endpoint Services]** (エンドポイントサービス) を選択します。

1. エンドポイントサービスを選択します。

1. [**アクション**]、[**エンドポイントサービスを削除**] の順に選択します。

1. 確認を求められたら、**delete**と入力し、[**削除**] を選択します。

**コマンドラインを使用してエンドポイントサービスを削除するには**
+ [delete-vpc-endpoint-service-configurations](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-vpc-endpoint-service-configurations.html) (AWS CLI)
+ [Remove-EC2EndpointServiceConfiguration](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2EndpointServiceConfiguration.html) (Tools for Windows PowerShell)