

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

# きめ細かなアクセスコントロールによる OpenSearch アクセス許可の設定
<a name="kb-osm-permissions-console-fgap"></a>

任意ですが、OpenSearch ドメインのきめ細かなアクセスコントロールを有効にすることを強くお勧めします。きめ細かなアクセスコントロールを使用すると、ロールベースのアクセスコントロールを使用できます。これにより、特定のアクセス許可を持つ OpenSearch ロールを作成し、そのロールをナレッジベースサービスロールにマッピングできます。マッピングは、ナレッジベースに OpenSearch ドメインとインデックスへのアクセスとオペレーションの実行を許可する最低限必要なアクセス許可を付与します。

きめ細かなアクセスコントロールを設定して使用するには

1. 使用している OpenSearch ドメインで、きめ細かなアクセスコントロールが有効になっていることを確認します。

1. きめ細かなアクセスコントロールを使用するドメインの場合は、OpenSearch ロールの形式でアクセス許可を設定します。

1. ロールを作成するドメインの場合は、ナレッジベースサービスロールにロールマッピングを追加します。

次の手順は、OpenSearch ロールを設定し、OpenSearch ロールとナレッジベースサービスロール間で正しくマッピングする方法を示しています。

**OpenSearch ロールを作成し、アクセス許可を設定するには**  
きめ細かなアクセスコントロールを有効にし、Amazon Bedrock が OpenSearch Service に接続するように設定したら、各 OpenSearch ドメインの OpenSearch ダッシュボードリンクを使用してアクセス許可を設定できます。

**Amazon Bedrock へのアクセスを許可するドメインのアクセス許可を設定するには**

1. 使用する OpenSearch ドメインで、OpenSearch ダッシュボードを開きます。ダッシュボードへのリンクを確認するには、OpenSearch Service コンソールで作成したドメインに移動します。OpenSearch を実行しているドメインの場合、URL は `{{domain-endpoint}}/_dashboards/` の形式です。詳細については、「*Amazon OpenSearch Service デベロッパーガイド*」の「[ダッシュボード](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/dashboards.html)」を参照してください。

1. OpenSearch ダッシュボードで、**[セキュリティ]** に進み、**[ロール]** を選択します。

1. [**ロールの作成**] を選択してください。

1. **kb\_opensearch\_role** など、ロールの名前を指定します。

1. **[クラスターのアクセス許可]** に、以下のアクセス許可を追加します。
   + `indices:data/read/msearch`
   + `indices:data/write/bulk*`
   + `indices:data/read/mget*`

1. **[インデックスの許可]** で、ベクトルインデックスの名前を指定します。**[新しいアクセス許可グループを作成]** を選択し、次に **[新しいアクショングループを作成]** を選択します。`KnowledgeBasesActionGroup`などのアクショングループに次のアクセス許可を追加します。アクショングループに次のアクセス許可を追加します。
   + `indices:admin/get`
   + `indices:data/read/msearch`
   + `indices:data/read/search`
   + `indices:data/write/index`
   + `indices:data/write/update`
   + `indices:data/write/delete`
   + `indices:data/write/delete/byquery`
   + `indices:data/write/bulk*`
   + `indices:admin/mapping/put`
   + `indices:data/read/mget*`  
![クラスターとインデックスのアクセス許可を追加するために OpenSearch ダッシュボードで作成するアクショングループ。](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/kb/kb-test-os-action-groups.png)

1. **[作成]** を選択して OpenSearch ロールを作成します。

アクセス許可が追加された OpenSearch ロールの例を次に示します。

![アクセス許可が追加された OpenSearch Dashboards の OpenSearch ロールの例。](http://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/images/kb/kb-test-os-dashboards-permissions.png)


**ナレッジベースサービスロールへのロールマッピングを作成するには**

1. マッピングする必要がある IAM ロールを特定します。
   + 独自のカスタム IAM ロールを作成した場合は、IAM コンソールからこのロールのロール ARN をコピーできます。
   + ナレッジベースにロールの作成を許可する場合は、ナレッジベースの作成時にロール ARN を書き留めて、このロール ARN をコピーできます。

1. 使用する OpenSearch ドメインで、OpenSearch ダッシュボードを開きます。URL のフォーマットは `{{domain-endpoint}}/_dashboards/` です。

1. ナビゲーションペインで、[**セキュリティ**] をクリックします。

1. **kb\_opensearch\_role** など、先ほど作成したロールをリストで検索して開きます。

1. **[マッピングされたユーザー]** タブで、**[マッピングを管理]** をクリックします。

1. **バックエンドロール**セクションで、ナレッジベースの AWS マネージド IAM ロールの ARN を入力します。独自のカスタムロールを作成したか、ナレッジベースにロールを作成させたかに応じて、IAM コンソールまたは Amazon Bedrock コンソールからロール ARN 情報をコピーし、OpenSearch コンソールに**バックエンドロール**の情報を入力します。次に例を示します。

   ```
   arn:aws:iam::{{<accountId>}}:role/service-role/{{<knowledge-base-service-role>}}
   ```

1. [**マップ**] をクリックします。

   ナレッジベースサービスロールが OpenSearch ロールに接続し、ドメインとインデックスで必要なオペレーションを実行できるようになりました。