

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

# Amazon OpenSearch Ingestion パイプラインにコレクションへのアクセス権を付与する
パイプラインにコレクションへのアクセス権を付与する

Amazon OpenSearch Ingestion パイプラインは、OpenSearch Serverless パブリックコレクションまたは VPC コレクションに書き込むことができます。コレクションへのアクセスを提供するには、コレクションへのアクセスを許可するアクセス許可ポリシーを持つ AWS Identity and Access Management (IAM) パイプラインロールを設定します。パイプラインは、OpenSearch Serverless コレクションシンクへのリクエストに署名するために、このロールを引き受けます。

**重要**  
パイプラインロールを手動で作成することも、パイプラインの作成時に OpenSearch Ingestion に作成させることもできます。自動ロール作成を選択した場合、OpenSearch Ingestion は、選択したソースとシンクに基づいて、パイプラインロールのアクセスポリシーに必要なすべてのアクセス許可を追加します。プレフィックス `OpenSearchIngestion-` と入力したサフィックスを使用して、IAM にパイプラインロールを作成します。詳細については、「[パイプラインロール](pipeline-security-overview.md#pipeline-security-sink)」を参照してください。  
OpenSearch Ingestion でパイプラインロールを作成している場合は、パイプラインの作成前または作成後に、コレクションのデータアクセスポリシーにロールを含める必要があります。手順については、ステップ 2 を参照してください。

パイプラインの作成中に、OpenSearch Ingestion はパイプラインと OpenSearch Serverless コレクション間の AWS PrivateLink 接続を作成します。パイプラインからのすべてのトラフィックはこの VPC エンドポイントを通過し、コレクションにルーティングされます。コレクションに到達するには、エンドポイントにネットワークアクセスポリシーを介してコレクションへのアクセスを付与する必要があります。

![\[OpenSearch Ingestion pipeline connecting to OpenSearch Serverless collection via PrivateLink VPC endpoint.\]](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/images/osis-aoss-permissions.png)


**Topics**
+ [

## ステップ 1: パイプラインロールを作成する
](#pipeline-collection-access-configure)
+ [

## ステップ 2: コレクションのデータとネットワークアクセスを設定する
](#pipeline-access-collection)

## ステップ 1: パイプラインロールを作成する


パイプラインロールには、コレクションシンクへのデータ送信を許可するアクセス許可ポリシーがアタッチされている必要があります。また、OpenSearch Ingestion にこのロールの引き受けを許可する信頼関係も必要になります。ポリシーをロールにアタッチする方法については、「*IAM ユーザーガイド*」の「[IAM ID アクセス許可の追加](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html#add-policies-console)」を参照してください。

次のポリシー例では、コレクションへの書き込みを可能にするパイプラインロールアクセスポリシーで提供できる[最小特権](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege)が付与されています。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Statement1",
            "Effect": "Allow",
            "Action": [
                "aoss:APIAccessAll",
                "aoss:BatchGetCollection",
                "aoss:CreateSecurityPolicy",
                "aoss:GetSecurityPolicy",
                "aoss:UpdateSecurityPolicy"
            ],
            "Resource": "*"
        }
    ]
}
```

------

このロールには次の[信頼関係](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-managingrole_edit-trust-policy)が必要です。この信頼関係により、OpenSearch Ingestion はこのロールを引き受けることができます。

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

****  

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

------

## ステップ 2: コレクションのデータとネットワークアクセスを設定する


OpenSearch Serverless コレクションを以下の設定で作成します。コレクションの作成手順については、「[コレクションの作成](serverless-create.md)」を参照してください。

### データアクセスポリシー


パイプラインロールに必要なアクセス許可を付与するコレクション用の[データアクセスポリシー](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-data-access.html)を作成します。例えば、次のようになります。

```
[
  {
    "Rules": [
      {
        "Resource": [
          "index/collection-name/*"
        ],
        "Permission": [
          "aoss:CreateIndex",
          "aoss:UpdateIndex",
          "aoss:DescribeIndex",
          "aoss:WriteDocument"
        ],
        "ResourceType": "index"
      }
    ],
    "Principal": [
      "arn:aws:iam::account-id:role/pipeline-role"
    ],
    "Description": "Pipeline role access"
  }
]
```

**注記**  
`Principal` 要素で、パイプラインのロールの Amazon リソースネーム (ARN) を指定します。

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


OpenSearch Serverless で作成する各コレクションには、少なくとも 1 つのネットワークアクセスポリシーが関連付けられています。ネットワークアクセスポリシーでは、コレクションがインターネット経由でパブリックネットワークからアクセス可能か、プライベートでアクセスする必要があるかを決定します。ネットワークポリシーの詳細については、「[Amazon OpenSearch Serverless でのネットワークアクセス](serverless-network.md)」を参照してください。

ネットワークアクセスポリシー内では、OpenSearch Serverless マネージド VPC エンドポイントのみを指定できます。詳細については、「[を介したデータプレーンアクセス AWS PrivateLink](serverless-vpc.md)」を参照してください。ただし、パイプラインがコレクションに書き込むには、OpenSearch Ingestion がパイプラインとコレクションの間に自動的に作成する VPC エンドポイントへのアクセスもポリシーで付与する必要があります。したがって、パイプラインの送信先シンクとして OpenSearch Serverless コレクションを選択する場合は、関連するネットワークポリシーの名前を **[ネットワークポリシー名]** フィールドに入力する必要があります。

パイプラインの作成中、OpenSearch Ingestion は指定されたネットワークポリシーの存在をチェックします。存在しない場合は、OpenSearch Ingestion が作成します。存在する場合、OpenSearch Ingestion は新しいルールを追加して更新します。このルールは、パイプラインとコレクションを接続する VPC エンドポイントへのアクセスを付与します。

例えば、次のようになります。

```
{
   "Rules":[
      {
         "Resource":[
            "collection/my-collection"
         ],
         "ResourceType":"collection"
      }
   ],
   "SourceVPCEs":[
      "vpce-0c510712627e27269" # The ID of the VPC endpoint that OpenSearch Ingestion creates between the pipeline and collection
   ],
   "Description":"Created by Data Prepper"
}
```

コンソールでは、OpenSearch Ingestion がネットワークポリシーに追加するルールの名前は、**[Created by Data Prepper]** です。

![\[Configuration details for OpenSearch endpoint access, including VPC endpoint and resources.\]](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/images/osis-aoss-network.png)


**注記**  
一般に、コレクションのパブリックアクセスを指定するルールは、プライベートアクセスを指定するルールよりも優先されます。したがって、ポリシーに*パブリック*アクセスがすでに設定されている場合、OpenSearch Ingestion が追加するこの新しいルールは、実際にポリシーの動作を変更しません。詳細については、「[ポリシーの優先順位](serverless-network.md#serverless-network-precedence)」を参照してください。

パイプラインを停止または削除すると、OpenSearch Ingestion はパイプラインとコレクション間の VPC エンドポイントを削除します。また、ネットワークポリシーを変更して、許可されたエンドポイントのリストから VPC エンドポイントを削除します。パイプラインを再起動すると、VPC エンドポイントが再作成され、ネットワークポリシーがエンドポイント ID で再更新されます。