

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用精细的 OpenSearch 访问控制配置权限
<a name="kb-osm-permissions-console-fgap"></a>

虽然是可选的，但我们强烈建议您为域名启用精细的访问控制。 OpenSearch 使用精细的访问控制，您可以使用基于角色的访问控制，这样您就可以创建具有特定权限的 OpenSearch 角色并将其映射到知识库服务角色。映射会向您的知识库授予访问 OpenSearch 域和索引并对其执行操作所需的最低权限。

要配置和使用精细访问控制，请执行以下操作：

1. 确保您使用的 OpenSearch 域名已启用细粒度访问控制。

1. 对于使用精细访问控制的网域，请以角色的形式使用范围缩小策略配置权限。 OpenSearch

1. 对于要为其创建角色的域，可添加映射到知识库服务角色的角色。

以下步骤说明如何配置您的 OpenSearch 角色并确保角色和知识库服务 OpenSearch 角色之间的映射正确。

**创建 OpenSearch 角色并配置权限**  
启用精细访问控制并将 Amazon Bedrock 配置为连接到 OpenSearch 服务后，您可以使用控制 OpenSearch 面板链接为每个域配置权限。 OpenSearch 

**要为域配置权限以允许访问 Amazon Bedrock，请执行以下操作：**

1. 打开您要使用的 OpenSearch 域名的 OpenSearch 控制面板。要找到指向仪表板的链接，请转到您在 OpenSearch 服务控制台中创建的域。对于正在运行的域名 OpenSearch，URL 的格式为`domain-endpoint/_dashboards/`。有关更多信息，请参阅 *Amazon OpenSearch 服务开发者指南*中的[控制面板](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/dashboards.html)。

1. 在 “ OpenSearch 控制面板” 中，选择 “**安全**”，然后选择 “**角色**”。

1. 选择**创建角色**。

1. 为角色提供任何名称，例如 **kb\$1opensearch\$1role**。

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/zh_cn/bedrock/latest/userguide/images/kb/kb-test-os-action-groups.png)

1. 选择 “**创建**” 以创建 OpenSearch 角色。

下面显示了一个添加了权限的示例 OpenSearch 角色。

![\[OpenSearch 仪表板中添加了权限的示例 OpenSearch 角色。\]](http://docs.aws.amazon.com/zh_cn/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\$1opensearch\$1role**，然后将其打开。

1. 在**映射的用户**选项卡上，选择**管理映射**。

1. 在**后端角色**部分，输入知识库的 AWS 托管 IAM 角色的 ARN。根据您是创建自己的自定义角色还是让知识库为您创建角色，从 IAM 控制台或 Amazon Bedrock 控制台复制角色 ARN 信息，然后在控制台中为**后端角色**输入该信息。 OpenSearch 以下为示例。

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

1. 选择**映射**。

   知识库服务角色现在可以连接到该 OpenSearch 角色并对域和索引执行所需的操作。