

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

# OpenSearch Service リクエストの作成と署名
<a name="managedomains-signing-service-requests"></a>

完全にオープンなリソースベースのポリシーを設定する場合、OpenSearch Service 設定 API への*すべての*リクエストは署名付きである必要があります。ポリシーで IAM ロールまたはユーザーが指定されている場合、OpenSearch APIs へのリクエストも AWS 署名バージョン 4 を使用して署名する必要があります。署名メソッドは API によって異なります。
+ OpenSearch Service 設定 API 呼び出しを行うには、[AWS SDK](https://docs.aws.amazon.com/sdkref/latest/guide/overview.html) のいずれかを使用することが推奨されます。SDK を使用するほうが、独自のリクエストを作成し署名するよりも、プロセスが簡素化し、大幅な時間の節約ができます。API エンドポイント設定には次の形式を使用します。

  ```
  es.{{region}}.amazonaws.com/2021-01-01/
  ```

  例えば、次のリクエストは、`movies` ドメインの設定を変更しますが、自分で署名する必要があります (お勧めしません)。

  ```
  POST https://es.{{us-east-1}}.amazonaws.com/2021-01-01/opensearch/domain/{{movies}}/config
  {
    "ClusterConfig": {
      "InstanceType": "c5.xlarge.search"
    }
  }
  ```

  [Boto 3](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/opensearch.html#OpenSearchService.Client.update_domain_config) などのいずれかの SDK を使用する場合、SDK はリクエスト署名を自動的に処理します。

  ```
  import boto3
  
  client = boto3.client(es)
  response = client.update_domain_config(
    DomainName='{{movies}}',
    ClusterConfig={
      'InstanceType': 'c5.xlarge.search'
    }
  )
  ```

  Java コードの例については、「[AWS SDKs を使用して Amazon OpenSearch Service を操作する](configuration-samples.md)」を参照してください。
+ OpenSearch API への呼び出しを行うには、独自リクエストに署名する必要があります。OpenSearch API は、次の形式を使用します。

  ```
  {{domain-id}}.{{region}}.es.amazonaws.com
  ```

  例えば、次のリクエストは、*thor* の `movies` インデックスを検索します。

  ```
  GET https://{{my-domain}}.{{us-east-1}}.es.amazonaws.com/movies/_search?q=thor
  ```

**注記**  
このサービスは、署名バージョン 4 で署名された HTTP POST リクエストの URL で渡されるパラメータを無視します。