インターフェイスエンドポイント (AWS PrivateLink) を使用して Amazon OpenSearch Serverless にアクセスする - Amazon OpenSearch サービス

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

インターフェイスエンドポイント (AWS PrivateLink) を使用して Amazon OpenSearch Serverless にアクセスする

を使用して AWS PrivateLink 、VPC と Amazon OpenSearch Serverless の間にプライベート接続を作成できます。インターネットゲートウェイ、NAT デバイス、VPN 接続、または AWS Direct Connect 接続を使用せずに、VPC 内にあるかのように OpenSearch Serverless にアクセスできます。VPC 内のインスタンスは、 OpenSearch サーバーレスにアクセスするためにパブリック IP アドレスを必要としません。

このプライベート接続を確立するには、 AWS PrivateLinkを利用したインターフェイスエンドポイントを作成します。インターフェイスエンドポイントに指定した各サブネットに、エンドポイントネットワークインターフェイスを作成します。これらは、 OpenSearch サーバーレス宛てのトラフィックのエントリポイントとして機能するリクエスタ管理のネットワークインターフェイスです。

詳細については、『AWS PrivateLink ガイド』の「AWS のサービス でアクセスする」を参照してください。

コレクションエンドポイントの DNS 解決

VPC エンドポイントを作成すると、サービスは新しい Amazon Route 53 プライベートホストゾーンを作成し、VPC にアタッチします。このプライベートホストゾーンは、 OpenSearch サーバーレスコレクション (*.aoss.us-east-1.amazonaws.com) のワイルドカード DNS レコードをエンドポイントに使用されるインターフェイスアドレスに解決するためのレコードで構成されます。各 のすべてのコレクションとダッシュボードにアクセスするには、VPC に OpenSearch サーバーレス VPC エンドポイントが 1 つだけ必要です AWS リージョン。 OpenSearch Serverless のエンドポイントを持つすべての VPC には、独自のプライベートホストゾーンがアタッチされています。

OpenSearch Serverless は、リージョン内のすべてのコレクションに対してパブリック Route 53 ワイルドカード DNS レコードも作成します。DNS 名は Serverless OpenSearch パブリック IP アドレスに解決されます。 OpenSearch サーバーレス VPCs エンドポイントを持たない VPC 内のクライアント、またはパブリックネットワーク内のクライアントは、パブリック Route 53 リゾルバーを使用して、それらの IP アドレスを持つコレクションとダッシュボードにアクセスできます。VPC エンドポイントの IP アドレスタイプ (IPv4、IPv6、またはデュアルスタック) は、 OpenSearch Serverless のインターフェイスエンドポイントを作成するときに提供されるサブネットに基づいて決定されます。

注記

update-vpc-endpoint コマンドを使用して、既存の IPv4 VPC エンドポイントをデュアルスタックに更新できます AWS CLI。

特定の VPC の DNS リゾルバーアドレスは、VPC CIDR の 2 番目の IP アドレスです。VPC 内のクライアントは、そのリゾルバーを使用して、コレクション用の VPC エンドポイントアドレスを取得する必要があります。リゾルバーは、 OpenSearch サーバーレスによって作成されたプライベートホストゾーンを使用します。任意のアカウントのすべてのコレクション用にそのリゾルバーを使用すれば十分です。一部のコレクションエンドポイントには VPC リゾルバーを使用し、他のコレクションエンドポイントにはパブリックリゾルバーを使用することもできますが、通常は必要ありません。

VPC とネットワークアクセスポリシー

コレクションの OpenSearch APIsと Dashboards にネットワークアクセス許可を付与するには、 OpenSearch サーバーレスネットワークアクセスポリシー を使用できます。このネットワークアクセスは、VPC エンドポイントまたはパブリックインターネットのいずれからでも制御できます。ネットワークポリシーはトラフィックの許可のみを制御するため、コレクション内のデータとそのインデックスに対して操作するための許可を指定するデータアクセスポリシーも設定する必要があります。 OpenSearch サーバーレス VPC エンドポイントをサービスへのアクセスポイント、ネットワークアクセスポリシーをコレクションとダッシュボードへのネットワークレベルのアクセスポイント、データアクセスポリシーをコレクション内のデータに対するあらゆるオペレーションのきめ細かなアクセスコントロールのアクセスポイントと考えてください。

ネットワークポリシーでは複数の VPC エンドポイント ID を指定できるため、コレクションにアクセスする必要がある VPC ごとに VPC エンドポイントを作成することをお勧めします。これらの VPCs、 OpenSearch サーバーレスコレクションとネットワークポリシーを所有する AWS アカウントとは異なるアカウントに属している可能性があります。あるアカウントの VPC が別のアカウントの VPC エンドポイントを使用することを目的として、2 つのアカウント間で VPC 間ピアリングまたは他のプロキシソリューションを作成することはお勧めしません。これは、各 VPC が独自のエンドポイントを持つ場合よりも安全性とコスト効率が低くなります。最初の VPC を、ネットワークポリシーで他の VPC のエンドポイントへのアクセスを設定しているその VPC の管理者が簡単に表示することはできません。

VPC とエンドポイントポリシー

Amazon OpenSearch Serverless はVPCsエンドポイントポリシーをサポートしています。エンドポイントポリシーは、VPC エンドポイントにアタッチして、エンドポイント AWS を使用して AWS サービスにアクセスできるプリンシパルを制御する IAM リソースベースのポリシーです。詳細については、「エンドポイントポリシーを使用して VPC エンドポイントへのアクセスを制御する」を参照してください。

エンドポイントポリシーを使用するには、まずインターフェイスエンドポイントを作成する必要があります。Serverless コンソールまたは OpenSearch Serverless API OpenSearch を使用してインターフェイスエンドポイントを作成できます。インターフェイスエンドポイントを作成した後、エンドポイントポリシーをエンドポイントに追加する必要があります。詳細については、「インターフェイスエンドポイント (AWS PrivateLink) を使用して Amazon OpenSearch Serverless にアクセスする」を参照してください。

注記

OpenSearch サービスコンソールでエンドポイントポリシーを直接定義することはできません。

エンドポイントポリシーは、設定済みの他の ID ベースポリシー、リソースベースポリシー、ネットワークポリシー、またはデータアクセスポリシーをオーバーライドしたり、これらに置き換わったりすることはありません。エンドポイントポリシーの更新の詳細については、「エンドポイントポリシーを使用して VPC エンドポイントへのアクセスを制御する」を参照してください。

デフォルトでは、エンドポイントポリシーにより、VPC エンドポイントに対するフルアクセスが付与されます。

{ "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "*", "Resource": "*" } ] }

デフォルトの VPC エンドポイントポリシーにより、エンドポイントに対するフルアクセスが付与されますが、特定のロールおよびユーザーに対するアクセスを許可するように VPC エンドポイントポリシーを設定できます。これを実行するには、次の例を参照してください:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "123456789012", "987654321098" ] }, "Action": "*", "Resource": "*" } ] }

VPC エンドポイントポリシーの条件付き要素として含める OpenSearch サーバーレスコレクションを指定できます。これを実行するには、次の例を参照してください:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "*", "Resource": "*", "Condition": { "StringEquals": { "aws:CollectionName": [ "coll-abc" ] } } } ] }

VPC エンドポイントポリシーで SAML ID を使用して、VPC エンドポイントアクセスを決定できます。VPC エンドポイントポリシーのプリンシパルセクションではワイルドカード (*) を使用する必要があります。これを実行するには、次の例を参照してください:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "*", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:SamlGroups": [ "saml/123456789012/idp123/group/football", "saml/123456789012/idp123/group/soccer", "saml/123456789012/idp123/group/cricket" ] } } } ] }

さらに、特定の SAML プリンシパルポリシーを含めるようにエンドポイントポリシーを設定できます。これを実行するには、次を参照してください:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "*", "Resource": "*", "Condition": { "StringEquals": { "aws:SamlPrincipal": [ "saml/123456789012/idp123/user/user1234"] } } } ] }

Amazon OpenSearch Serverless での SAML 認証の使用の詳細については、「Amazon OpenSearch Serverless の SAML 認証」を参照してください。

また、IAM ユーザーと SAML ユーザーを同じ VPC エンドポイントポリシーに含めることもできます。これを実行するには、次の例を参照してください:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "*", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:SamlGroups": [ "saml/123456789012/idp123/group/football", "saml/123456789012/idp123/group/soccer", "saml/123456789012/idp123/group/cricket" ] } } }, { "Effect": "Allow", "Principal": { "AWS": [ "123456789012" ] }, "Action": "*", "Resource": "*" } ] }

考慮事項

OpenSearch Serverless のインターフェイスエンドポイントを設定する前に、次の点を考慮してください。

  • OpenSearch Serverless は、インターフェイスエンドポイントを介した、サポートされているすべての OpenSearch API オペレーション (設定 API オペレーションではありません) の呼び出しをサポートしています。

  • Serverless のインターフェイスエンドポイントを作成した後も、 OpenSearch サーバーレスコレクションにアクセスするために、ネットワークアクセスポリシーに含める必要があります。

  • デフォルトでは、インターフェイスエンドポイントを介して OpenSearch サーバーレスへのフルアクセスが許可されます。セキュリティグループをエンドポイントネットワークインターフェイスに関連付けると、インターフェイスエンドポイントを介して OpenSearch サーバーレスへのトラフィックを制御できます。

  • 1 つの に最大 50 個の OpenSearch サーバーレス VPC エンドポイント AWS アカウント を設定できます。

  • ネットワークポリシーでコレクションの API または Dashboards へのパブリックインターネットアクセスを有効にすると、コレクションは任意の VPC およびパブリックインターネットからアクセスできるようになります。

  • オンプレミスで VPC の外部にいる場合は、 OpenSearch サーバーレス VPC エンドポイント解決に DNS リゾルバーを直接使用することはできません。VPN アクセスが必要な場合、VPC には外部クライアントが使用できる DNS プロキシリゾルバーが必要です。Route 53 は、オンプレミスネットワークまたは別の VPC から VPC への DNS クエリを解決するために使用できるインバウンドエンドポイントオプションを提供します。

  • OpenSearch Serverless が作成して VPC にアタッチするプライベートホストゾーンは サービスによって管理されますが、 Amazon Route 53 リソースに表示され、アカウントに請求されます。

  • その他の考慮事項については、「AWS PrivateLink ガイド」の「考慮事項」を参照してください。

必要なアクセス許可

OpenSearch Serverless の VPC アクセスでは、次の AWS Identity and Access Management (IAM) アクセス許可を使用します。IAM 条件を指定して、ユーザーを特定のコレクションに制限できます。

  • aoss:CreateVpcEndpoint – VPC エンドポイントを作成します。

  • aoss:ListVpcEndpoints – すべての VPC エンドポイントを一覧表示します。

  • aoss:BatchGetVpcEndpoint – VPC エンドポイントのサブセットに関する詳細を参照してください。

  • aoss:UpdateVpcEndpoint – VPC エンドポイントを変更します。

  • aoss:DeleteVpcEndpoint – VPC エンドポイントを削除します。

さらに、VPC エンドポイントを作成するには、以下の Amazon EC2 許可と Route 53 許可が必要です。

  • ec2:CreateTags

  • ec2:CreateVpcEndpoint

  • ec2:DeleteVpcEndPoints

  • ec2:DescribeSecurityGroups

  • ec2:DescribeSubnets

  • ec2:DescribeVpcEndpoints

  • ec2:DescribeVpcs

  • ec2:ModifyVpcEndPoint

  • route53:AssociateVPCWithHostedZone

  • route53:ChangeResourceRecordSets

  • route53:CreateHostedZone

  • route53:DeleteHostedZone

  • route53:GetChange

  • route53:GetHostedZone

  • route53:ListHostedZonesByName

  • route53:ListHostedZonesByVPC

  • route53:ListResourceRecordSets

OpenSearch Serverless のインターフェイスエンドポイントを作成する

Serverless のインターフェイスエンドポイントは、 コンソールまたは OpenSearch Serverless API OpenSearch を使用して作成できます。

OpenSearch Serverless コレクションのインターフェイスエンドポイントを作成するには
  1. https://console.aws.amazon.com/aos/home で Amazon OpenSearch Service コンソールを開きます。

  2. 左側のナビゲーションペインで [Serverless] (サーバーレス) を展開し、[VPC endpoints] (VPC エンドポイント) を選択します。

  3. [Create VPC endpoint] (VPC エンドポイントの作成) を選択します。

  4. エンドポイントの名前を入力します。

  5. VPC では、 OpenSearch サーバーレスにアクセスする VPC を選択します。

  6. サブネット で、 OpenSearch サーバーレスにアクセスするサブネットを 1 つ選択します。

    • エンドポイントの IP アドレスと DNS タイプはサブネットタイプに基づいています

      • デュアルスタック: すべてのサブネットに IPv4 と IPv6 の両方のアドレス範囲がある場合

      • IPv6: すべてのサブネットが IPv6 のみのサブネットの場合

      • IPv4: すべてのサブネットに IPv4 アドレス範囲がある場合

  7. [Security groups] (セキュリティグループ) で、エンドポイントネットワークインターフェイスに関連付けるセキュリティグループを選択します。これは、エンドポイントに対して承認するインバウンドトラフィックのポート、プロトコル、およびソースを制限する重要なステップです。セキュリティグループルールで、VPC エンドポイントを使用するリソースが OpenSearch Serverless と通信してエンドポイントネットワークインターフェイスと通信できることを確認してください。

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

Serverless API を使用して VPC OpenSearch エンドポイントを作成するには、 CreateVpcEndpoint コマンドを使用します。

注記

エンドポイントを作成したら、その ID を書き留めます (例: vpce-050f79086ee71ac05)。コレクションへのエンドポイントアクセスを提供するには、この ID を 1 つまたは複数のネットワークアクセスポリシーに含める必要があります。

次のステップ: エンドポイントにコレクションへのアクセスを許可する

インターフェイスエンドポイントを作成したら、ネットワークアクセスポリシーを使用して、そのエンドポイントにコレクションへのアクセスを提供する必要があります。詳細については、「Amazon OpenSearch Serverless のネットワークアクセス」を参照してください。