

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

# チュートリアル: Amazon OpenSearch Serverless でのセキュリティの開始方法 (コンソール)
<a name="gsg-serverless"></a>

このチュートリアルでは、Amazon OpenSearch Serverless コンソールを使用してセキュリティポリシーを作成および管理します。

このチュートリアルでは、次の手順を実行します。

1. [アクセス許可を設定](#gsgpermissions)

1. [暗号化ポリシーを作成](#gsg-encryption)

1. [ネットワークポリシーを作成する](#gsg-network)

1. [データアクセスポリシーを設定する](#gsg-data-access)

1. [コレクションを作成](#gsgcreate-collection)

1. [データをアップロードおよび検索する](#gsgindex-collection)

このチュートリアルでは、 を使用してコレクションを設定する方法を示します AWS マネジメントコンソール。を使用した同じ手順については AWS CLI、「」を参照してください[チュートリアル: Amazon OpenSearch Serverless (CLI) でのセキュリティの開始方法](gsg-serverless-cli.md)。

## ステップ 1: アクセス許可を設定する
<a name="gsgpermissions"></a>

**注記**  
`Action":"aoss:*"` や `Action":"*"` など、より広範な ID ベースのポリシーを既に使用している場合は、この手順をスキップできます。ただし、本番環境では、最小特権の原則に従い、タスクを完了するために必要な最小限のアクセス許可のみを割り当てます。

このチュートリアルを完了するには、適切な IAM のアクセス許可を持っている必要があります。ユーザーまたはロールには、以下の最低限の許可を含む [ID ベースのポリシー](security-iam-serverless.md#security-iam-serverless-id-based-policies)が、アタッチされている必要があります。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "aoss:ListCollections",
        "aoss:BatchGetCollection",
        "aoss:CreateCollection",
        "aoss:CreateSecurityPolicy",
        "aoss:GetSecurityPolicy",
        "aoss:ListSecurityPolicies",
        "aoss:CreateAccessPolicy",
        "aoss:GetAccessPolicy",
        "aoss:ListAccessPolicies"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

------

OpenSearch Serverless のアクセス許可に関する詳細なリストについては、「[Amazon OpenSearch Serverless 向けの アイデンティティとアクセス管理](security-iam-serverless.md)」を参照してください。

## ステップ 2: 暗号化ポリシーを作成する
<a name="gsg-encryption"></a>

[暗号化ポリシー](serverless-encryption.md)は、 AWS KMS OpenSearch Serverless がコレクションの暗号化に使用するキーを指定します。コレクションは、 AWS マネージドキー または別のキーで暗号化できます。このチュートリアルを簡単にするために、コレクションを で暗号化します AWS マネージドキー。

**暗号化ポリシーを作成するには**

1. [https://console.aws.amazon.com/aos/home](https://console.aws.amazon.com/aos/home ) で Amazon OpenSearch Service コンソールを開きます。

1. 左側のナビゲーションペインで **[Serverless]** を展開し、**[Encryption policies]** (暗号化ポリシー) を選択します。

1. **[Create encryption policy]** (暗号化ポリシーを作成) を選択します。

1. ポリシーには `books-policy` という名前を付けます。説明には、「`Encryption policy for books collection`」を入力します。

1. **「リソース**」に「」と入力します。これは`books`コレクションの名前です。より広範囲にする場合は、アスタリスク (`books*`) を含めて、ポリシーを「books」という単語で始まるすべてのコレクションに適用できます。

1. **暗号化**では、 ** AWS 所有キーの使用** を選択したままにします。

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

## ステップ 3: ネットワークポリシーを作成する
<a name="gsg-network"></a>

[ネットワークポリシー](serverless-network.md)では、コレクションにパブリックネットワークからインターネット経由でアクセス可能にするか、OpenSearch Serverless が管理する VPC エンドポイント経由でのアクセスが必要にするかを決定できます。このチュートリアルでは、パブリックアクセスを設定します。

**ネットワークポリシーを作成するには**

1. 左のナビゲーションペインで **[Network policies]** (ネットワークポリシー) を選択し、**[Create network policy]** (ネットワークポリシーの作成) を選択します。

1. ポリシーには `books-policy` という名前を付けます。説明には、「`Network policy for books collection`」を入力します。

1. **ルール 1** で、ルールに という名前を付けます`Public access for books collection`。

1. このチュートリアルを簡単にするために、*書籍*コレクションのパブリックアクセスを設定します。アクセスタイプには、**[Public]** (パブリック) を選択します。

1. OpenSearch Dashboards からコレクションにアクセスします。そのためには、ダッシュボード*と* OpenSearch エンドポイントのネットワークアクセスを設定する必要があります。そうしないと、ダッシュボードは機能しません。

   リソースタイプは、**[Access to OpenSearch endpoints]** (OpenSearch エンドポイントへのアクセス)と **[Access to OpenSearch Dashboards]** (OpenSearch Dashboardsへのアクセス) の両方を有効にします。

1. 両方の入力ボックスに と入力します`Collection Name = books`。このように設定すると、ポリシーの範囲が狭くなり 1 つのコレクション (`books`) にのみ適用されるようになります。ルールは次のようになります。  
![コレクションまたはプレフィックス用語選択用の 2 つの入力フィールドを示す検索インターフェイス。どちらも「ブック」に設定されています。](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/images/serverless-tutorial-network.png)

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

## ステップ 4: データアクセスポリシーを作成する
<a name="gsg-data-access"></a>

データアクセスを設定するまで、コレクションデータにアクセスすることはできません。[データアクセスポリシー](serverless-data-access.md)は、ステップ 1 で設定した IAM ID ベースのポリシーとは別のものです。このポリシーでは、コレクション内の実際のデータにアクセスできます。

このチュートリアルでは、データのインデックス作成に必要なアクセス許可を 1 人のユーザーに付与します**。

**データアクセスポリシーを作成するには**

1. 左のナビゲーションペインで、**[Data access policies]** (データアクセスポリシー) を選択し、**[Create access policy]** (アクセスポリシーを作成) を選択します。

1. ポリシーには `books-policy` という名前を付けます。説明には、「`Data access policy for books collection`」を入力します。

1. ポリシーの定義方法として **[JSON]** を選択し、JSON エディターに次のポリシーを貼り付けます。

   プリンシパル ARN を、OpenSearch Dashboards へのログインとデータのインデックス作成に使用するアカウントの ARN に置き換えます。

   ```
   [
      {
         "Rules":[
            {
               "ResourceType":"index",
               "Resource":[
                  "index/books/*"
               ],
               "Permission":[
                  "aoss:CreateIndex",
                  "aoss:DescribeIndex", 
                  "aoss:ReadDocument",
                  "aoss:WriteDocument",
                  "aoss:UpdateIndex",
                  "aoss:DeleteIndex"
               ]
            }
         ],
         "Principal":[
            "arn:aws:iam::{{123456789012}}:{{user}}/{{my-user}}"
         ]
      }
   ]
   ```

   このポリシーは、*books* コレクション内のインデックス作成や一部のデータのインデックス化、および検索に必要な最低限のアクセス許可を 1 人のユーザーに提供します。

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

## ステップ 5: コレクションを作成する
<a name="gsgcreate-collection"></a>

暗号化ポリシーとネットワークポリシーを設定したら、それらに一致するコレクションを作成できます。OpenSearch Serverless はセキュリティ設定を自動的に適用します。

**OpenSearch Serverless コレクションを作成するには**

1. 左側のナビゲーションペインで **[Collections]** (コレクション) 、**[Create collection]** (コレクションを作成) を選択します。

1. **Serverless generation** フィールドで、Classic にない場合は Classic **に切り替える**を選択します。

1. コレクション名には、 と入力します`books`。

1. コレクションタイプでは、**[Search]** (検索) を選択します。

1. **[Encryption]** (暗号化) で、OpenSearch Serverless によりコレクション名が `books-policy` 暗号化ポリシーと一致することが通知されます。

1. **[Network access settings]** (ネットワークアクセス設定) で、OpenSearch Serverless によりコレクション名が `books-policy` ネットワークポリシーと一致することが通知されます。

1. [**次へ**] を選択します。

1. **[Data access policy options]** (データアクセスポリシーのオプション) で、OpenSearch Serverless によりコレクション名が `books-policy` データアクセスポリシーと一致することが通知されます。

1. [**次へ**] を選択します。

1. **OpenSearch UI の設定**で、コレクションの OpenSearch アプリケーションとワークスペースを設定します。**既存の OpenSearch アプリケーションの選択**または**新しい OpenSearch アプリケーションの作成**を選択し、ワークスペースを選択または作成します。[**次へ**] を選択します。

1. コレクションの設定を確認し、**[Submit]** (送信) を選択します。通常、コレクションの初期化には 1 分もかかりません。

**注記**  
このチュートリアルでは、 Classic コレクション作成フローを使用して、コレクション作成時に事前設定されたセキュリティポリシーを自動的に一致させる方法を示します。NextGen フローを使用してコレクションを作成する方法については、「」を参照してください[コレクションの作成](serverless-create.md)。

## ステップ 6: データをアップロードおよび検索する
<a name="gsgindex-collection"></a>

OpenSearch Serverless コレクションへのデータのアップロードには、Postman または curl が使用できます。簡潔に言うと、これらの例では OpenSearch Dashboards** コンソール内の開発ツールを使用しています**。

**コレクション内のデータをインデックス化して検索するには**

1. 左側のナビゲーションペインで **[Collections]** (コレクション) を選択し、**books** コレクションを選択して詳細ページを開きます。

1. コレクションの OpenSearch Dashboards URL を選択します。この URL の形式は、`https://{{collection-id}}.us-east-1.aoss.amazonaws.com/_dashboards` になります。

1. データアクセスポリシーで指定したプリンシパルの [AWS アクセスキーとシークレットキー](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-appendix-sign-up.html)を使用して、OpenSearch Dashboards にサインインします。

1. OpenSearch Dashboards 内で左側のナビゲーションメニューを開き、**[Dev Tools]** (開発ツール) を選択します。

1. *books-index* という単一のインデックスを作成するには、次のコマンドを実行します。

   ```
   PUT books-index{{ }}
   ```  
![OpenSearch JSON レスポンスを使用した books-index の PUT リクエストを示すダッシュボードコンソール。](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/images/serverless-createindex.png)

1. 単一のドキュメントを *books-index* にインデックス化するには、次のコマンドを実行します。

   ```
   PUT books-index/_doc/1
   { 
     "title": "The Shining",
     "author": "Stephen King",
     "year": 1977
   }
   ```

1. OpenSearch Dashboards 内でデータを検索するためには、少なくとも 1 つのインデックスパターンを設定する必要があります。OpenSearch は、そのパターンを使用して、分析する対象のインデックスを特定します。Dashboards のメインメニューを開き、[**スタック管理**] を選択し、[**インデックスパターン**] を選択してから、[**インデックスパターンを作成する**] を選択します。このチュートリアルでは、「*books-index*」と入力します。

1. [**次のステップ**] を選択してから、[**インデックスパターンの作成**] を選択します。パターンが作成されたら、`author` および `title` などのさまざまなドキュメントフィールドを表示できます。

1. データの検索を開始するには、メインメニューをもう一度開き **[Discover]** (検出) を選択するか、[検索 API](https://opensearch.org/docs/latest/opensearch/rest-api/search/) を使用します。