

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

# 在 Amazon Bedrock 知识库中使用 OpenSearch 托管集群所需的先决条件和权限
<a name="kb-osm-permissions-prereq"></a>

本节向您展示在使用 Amazon S OpenSearch ervice 托管集群创建自己的矢量数据库时如何配置权限。此配置必须在创建知识库之前执行。这些步骤假设您已经在 Amazon S OpenSearch ervice 中创建了域和向量索引。有关更多信息，请参阅《*亚马逊 OpenSearch 服务开发者指南》中的创建和管理 OpenSearch 服务*[域](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html)。

## 重要注意事项
<a name="kb-osm-permissions-prereq-considerations"></a>

以下是在亚马逊 OpenSearch 服务托管集群中使用 Amazon Bedrock 知识库时的一些关键注意事项。
+ 在 OpenSearch 托管集群中使用任何域资源之前，您需要配置某些 IAM 访问权限和策略。要将知识库与托管集群集成，在执行本节中的步骤之前，如果您的域有限制性访问策略，则必须授予所需的 IAM 访问权限，并配置基于资源的策略。我们还建议您配置精细的访问控制以缩小权限范围。
+ 在为知识库摄取数据时，如果遇到故障，则可能表示 OpenSearch 域容量不足，无法处理摄取速度。要解决此问题，请通过配置更高的 IOPS（每秒Input/Output 操作数）和增加吞吐量设置来增加域的容量。等待几分钟以预调配新容量，然后重试摄取过程。要验证问题是否已解决，可以在重试过程中监控性能。如果限制仍然存在，可能需要进一步调整容量以提高效率。有关更多信息，请参阅 [Amazon OpenSearch 服务最佳运营实践](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/bp.html)。

## 权限配置概述
<a name="kb-osm-permissions-prereq-overview"></a>

要将知识库与托管集群集成，您需要配置以下 IAM 访问权限和基于资源的策略。我们建议您启用精细访问策略，以进一步控制用户访问权限以及必须将其范围缩小到属性级别的粒度。

以下步骤简要概述了如何配置权限。

1. 

**创建和使用知识库服务角色**

   对于要配置的权限，尽管您仍然可以提供自己的自定义角色，但我们建议您为 Amazon Bedrock 知识库指定选项，以便为您创建知识库服务角色。

1. 

**配置基于资源的策略**

   该 OpenSearch 域支持基于资源的策略，这些策略决定了哪些委托人可以访问该域并对其执行操作。要与知识库一起使用，请确保为您的域正确配置基于资源的策略。

1. 

***（强烈推荐）* 提供角色映射以实现精细的访问控制**

   虽然精细访问控制是可选的，但我们建议您将其启用，以控制在属性级别必须缩小权限范围的粒度。

## 配置 IAM 策略
<a name="kb-osm-permissions-iam"></a>

您的网域的访问策略必须授予您账户中的角色执行必需的 OpenSearch API 操作的权限。

如果您的域名有限制性访问策略，则可能需要按以下方式对其进行更新：
+ 它应授予对 Amazon Bedrock 服务的访问权限，并包括所需的 HTTP 操作：`GET`、`POST`、`PUT`、和 `DELETE`。
+ 它还必须为 Amazon Bedrock 授予对您的索引资源执行 `es:DescribeDomain` 操作的权限。这允许 Amazon Bedrock 知识库在配置知识库时执行所需的验证。

## （可选） Fine-grained 访问控制
<a name="kb-osm-permissions-console-fgap"></a>

Fine-grained 访问控制可以控制必须将权限范围缩小到属性级别的粒度。您可以配置精细的访问策略，以授予知识库创建的服务角色所需的读写权限。

要配置精细访问控制并提供角色映射，请执行以下操作：

1. 确保您创建的 OpenSearch 域已启用精细访问控制。

1. 创建 OpenSearch 用户界面（仪表板）（如果尚未创建）。这将用于配置角色映射。

1. 在 OpenSearch 控制面板中，创建 OpenSearch 角色并指定向量索引名称以及集群和索引权限。要添加权限，必须创建权限组，然后添加所需的权限，以授予对角色执行一系列操作（包括 `delete`、`search`、`get` 和 `index`）的访问权限。

1. 添加所需权限后，必须为后 OpenSearch 端角色输入知识库服务角色的 ARN。执行此步骤将完成您的知识库服务角色与角色之间的映射，然后授予 Amazon Bedrock 知识库访问 OpenSearch 域中的矢量索引并执行所需操作的权限。 OpenSearch 

**Topics**
+ [重要注意事项](#kb-osm-permissions-prereq-considerations)
+ [权限配置概述](#kb-osm-permissions-prereq-overview)
+ [配置 IAM 策略](#kb-osm-permissions-iam)
+ [（可选） Fine-grained 访问控制](#kb-osm-permissions-console-fgap)
+ [为 OpenSearch 托管集群配置基于资源的策略](kb-osm-permissions-slr-rbp.md)
+ [使用精细的 OpenSearch 访问控制配置权限](kb-osm-permissions-console-fgap.md)