Amazon OpenSearch 无服务器中的安全性概述 - 亚马逊 OpenSearch 服务

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

Amazon OpenSearch 无服务器中的安全性概述

Amazon OpenSearch 无服务器中的安全性与 Amazon OpenSearch Service 中的安全性在以下方面存在根本不同:

功能 OpenSearch Service OpenSearch 无服务器
数据访问控制 数据访问权限由 IAM policy 和精细访问控制决定。 数据访问权限由数据访问策略决定。
静态加密 对于域,静态加密是可选的 对于集合,静态加密是必需的
安全设置和管理 必须为每个域单独配置网络、加密和数据访问权限。 您可以使用安全策略大规模管理多个集合的安全设置。

下图说明了构成功能集合的安全组件。集合必须具有已分配的加密密钥、网络访问权限设置,以及相匹配的数据访问策略,该策略授予针对其资源的权限。

Diagram showing encryption, network, data access, and authentication policies for a collection.

加密策略

加密策略定义您的集合是使用 AWS 拥有的密钥加密,还是使用客户托管的密钥加密。加密策略由两个组件组成:资源模式加密密钥。资源模式将定义该策略适用于哪个或哪些集合。加密密钥决定如何保护关联的集合。

要将一个策略应用于多个集合,请在策略规则中包含通配符 (*)。例如,以下策略适用于名称以“logs”(日志)开头的所有集合。

Input field for specifying a prefix term or collection name, with "logs*" entered.

加密策略可以简化创建和管理集合的过程,尤其是当您以编程方式创建和管理集合时。您只需指定名称即可创建集合,并在创建时自动为其分配加密密钥。

网络策略

网络策略定义您的集合是必须以私有方式访问,还是可以通过互联网从公共网络访问。私有集合可通过 OpenSearch 无服务器托管的 VPC 端点访问,也可以由 Amazon Bedrock 等特定的 AWS 服务使用 AWS 服务私有访问进行访问。就像加密策略一样,网络策略也可以应用于多个集合,这使您可以大规模管理很多集合的网络访问权限。

网络策略由两个组件组成:访问权限类型资源类型。访问类型可以是公有也可以是私有。资源类型决定您选择的访问权限是适用于集合端点、OpenSearch 控制面板端点,还是两者。

Access type and resource type options for configuring network policies in OpenSearch.

如果您计划在网络策略中配置 VPC 访问权限,则必须先创建一个或多个 OpenSearch 无服务器托管的 VPC 端点。这些端点使您可以像在 VPC 中一样访问 OpenSearch 无服务器,而无需使用互联网网关、NAT 设备、VPN 连接或 AWS Direct Connect 连接。

授予 AWS 服务的私有访问权限仅适用于集合的 OpenSearch 端点,不适用于 OpenSearch 控制面板端点。AWS 服务不能获得对 OpenSearch 控制面板的访问权限。

数据访问策略

数据访问策略定义您的用户如何访问您的集合中的数据。数据访问策略通过自动为匹配特定模式的集合和索引分配访问权限,帮助您大规模管理集合。多个策略可应用于一个资源。

数据访问策略由一组规则组成,每条规则包含三个组件:资源类型授予的资源和一组权限。资源类型可以是集合或索引。授予的资源可以是集合/索引名称或带有通配符 (*) 的模式。权限列表指定策略授予针对哪些 OpenSearch API 操作的访问权限。此外,策略还包含主体列表,用于指定要向其授予访问权限的 IAM 角色、用户和 SAML 身份。

Selected principals and granted resources with permissions for collection and index access.

有关数据访问策略格式的更多信息,请参阅策略语法

在创建数据访问策略之前,您必须拥有一个或多个 IAM 角色、用户或 SAML 身份,才能在策略中为其提供访问权限。有关详细信息,请参阅下一节。

IAM 和 SAML 身份验证

IAM 主体和 SAML 身份是数据访问策略的构建基块之一。在访问策略的 principal 语句中,您可以包含 IAM 角色、用户和 SAML 身份。然后,向这些主体授予您在关联的策略规则中指定的权限。

[ { "Rules":[ { "ResourceType":"index", "Resource":[ "index/marketing/orders*" ], "Permission":[ "aoss:*" ] } ], "Principal":[ "arn:aws:iam::123456789012:user/Dale", "arn:aws:iam::123456789012:role/RegulatoryCompliance", "saml/123456789012/myprovider/user/Annie" ] } ]

您可以直接在 OpenSearch 无服务器中配置 SAML 身份验证。有关更多信息,请参阅 适用于 Amazon OpenSearch 无服务器的 SAML 身份验证

基础设施安全性

Amazon OpenSearch 无服务器受 AWS 全球网络安全保护。有关 AWS 安全服务以及 AWS 如何保护基础设施的信息,请参阅 AWS 云安全。要按照基础架构安全最佳实践设计您的 AWS 环境,请参阅《安全性支柱 AWS Well‐Architected Framework》中的 基础架构保护

您可以使用 AWS 发布的 API 调用来通过网络访问 Amazon OpenSearch 无服务器。客户端必须支持传输层安全性(TLS)。我们要求使用 TLS 1.2,建议使用 TLS 1.3。有关 TLS 1.3 支持的密码列表,请参阅《弹性负载均衡文档》中的 TLS protocols and ciphers

此外,必须使用访问密钥 ID 和与 IAM 主体关联的秘密访问密钥来对请求进行签名。或者,您可以使用 AWS Security Token Service(AWS STS)生成临时安全凭证来对请求进行签名。