选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

使用 Valkey 和 Redis OSS AUTH 命令进行身份验证

聚焦模式
使用 Valkey 和 Redis OSS AUTH 命令进行身份验证 - Amazon ElastiCache

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

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

注意

AUTH 已被 基于角色的访问控制(RBAC) 取代。所有无服务器缓存都必须使用 RBAC 进行身份验证。

通过使用 Valkey 和 Redis OSS 身份验证令牌(或密码),Valkey 和 Redis OSS 可以在允许客户端运行命令之前要求提供密码,从而提高数据安全性。AUTH 仅适用于自行设计的集群。

Valkey 和 Redis ElastiCache OSS 的身份验证概述

当你在 for AUTH Valkey 和 Redis OSS 集群中使用时,会有一些改进。 ElastiCache

使用 AUTH 时,尤其要注意以下 AUTH 令牌或密码限制:

  • 令牌(或密码)必须是 16-128 个可打印字符。

  • 非字母数字字符仅限使用 !、&、#、$、^、<、>、-。

  • 只能为启用传输中加密的 Valkey 或 Redis OSS 集群启用身份验证。

要设置增强令牌,我们建议您遵循严格的密码策略,例如,要求满足以下条件:

  • 令牌(或密码)必须包含至少以下任意三种字符类型:

    • 大写字符

    • 小写字符

    • 数字

    • 非字母数字字符(!&#$^<>-

  • 令牌(或密码)不能包含词典单词或稍加修改的词典单词。

  • 令牌(或密码)不能与最近使用过的令牌相同或相似。

对适用 ElastiCache 于 Valkey 和 Redis 的 OSS 集群进行身份验证

您可以要求用户在受令牌保护的 Valkey 或 Redis OSS 服务器上输入令牌(密码)。为此,在创建复制组或集群时,请在 --auth-token 参数(API:AuthToken)中包含正确的令牌。还要在复制组或集群的所有后续命令中包含该令牌。

以下 AWS CLI 操作创建启用了传输中加密 (TLS) 和AUTH令牌的复制组This-is-a-sample-token。用已存在的子网组替换子网组 sng-test

关键参数
  • --engine – 必须为 valkeyredis

  • --engine-version – 如果引擎为 Redis OSS,则必须为 3.2.6、4.0.10 或更高版本。

  • --transit-encryption-enabled – 对于身份验证和 HIPAA 资格是必需的。

  • --auth-token – 对于 HIPAA 资格是必需的。该值必须是该受令牌保护的 Valkey 或 Redis OSS 服务器的正确令牌。

  • --cache-subnet-group – 对于 HIPAA 资格是必需的。

对于 Linux、macOS 或 Unix:

aws elasticache create-replication-group \ --replication-group-id authtestgroup \ --replication-group-description authtest \ --engine redis \ --cache-node-type cache.m4.large \ --num-node-groups 1 \ --replicas-per-node-group 2 \ --transit-encryption-enabled \ --auth-token This-is-a-sample-token \ --cache-subnet-group sng-test

对于 Windows:

aws elasticache create-replication-group ^ --replication-group-id authtestgroup ^ --replication-group-description authtest ^ --engine redis ^ --cache-node-type cache.m4.large ^ --num-node-groups 1 ^ --replicas-per-node-group 2 ^ --transit-encryption-enabled ^ --auth-token This-is-a-sample-token ^ --cache-subnet-group sng-test

修改现有集群上的 AUTH 令牌

为了简化更新身份验证的过程,您可以修改集群上使用的 AUTH 令牌。如果引擎版本为 Valkey 7.2 或更高版本或 Redis 5.0.6 或更高版本,则可以进行此修改。 ElastiCache 还必须启用传输中加密。

修改 AUTH 令牌支持两种策略:ROTATE 和 SET。ROTATE 策略会向服务器添加一个额外的 AUTH 令牌,同时保留之前的令牌。SET 策略会更新服务器,使其仅支持一个 AUTH 令牌。请使用 --apply-immediately 参数进行这些修改调用以立即应用更改。

轮换 AUTH 令牌

要使用新的 AUTH 令牌更新 Valkey 或 Redis OSS 服务器,请调用 ModifyReplicationGroup API,并将 --auth-token 参数设置为新的 AUTH 令牌,将 --auth-token-update-strategy 值设置为 ROTATE。ROTATE 修改完成后,除 auth-token 参数中指定的 AUTH 令牌外,集群还将支持之前的 AUTH 令牌。如果在 AUTH 令牌轮换之前未在复制组上配置 AUTH 令牌,则集群除了支持未进行身份验证的连接以外,还支持 --auth-token 参数中指定的 AUTH 令牌。请参阅设置 AUTH 令牌,使用更新策略 SET 更新所需的 AUTH 令牌。

注意

如果您之前未配置 AUTH 令牌,则修改完成后,除在 auth-token 参数中指定的一个令牌外,集群将不支持任何 AUTH 令牌。

如果在已支持两个 AUTH 令牌的服务器上执行此修改,则在此操作过程中还将删除最早的 AUTH 令牌。这允许服务器在给定时间内支持最多两个最新的 AUTH 令牌。

此时,您可以更新客户端以使用最新的 AUTH 令牌。在更新客户端后,您可以使用 SET 策略轮换 AUTH 令牌(在下一节中说明)以开始使用唯一的新令牌。

以下 AWS CLI 操作修改复制组以轮换令AUTHThis-is-the-rotated-token

对于 Linux、macOS 或 Unix:

aws elasticache modify-replication-group \ --replication-group-id authtestgroup \ --auth-token This-is-the-rotated-token \ --auth-token-update-strategy ROTATE \ --apply-immediately

对于 Windows:

aws elasticache modify-replication-group ^ --replication-group-id authtestgroup ^ --auth-token This-is-the-rotated-token ^ --auth-token-update-strategy ROTATE ^ --apply-immediately

设置 AUTH 令牌

要更新 Valkey 或 Redis OSS 服务器以支持单个所需 AUTH 令牌,请调用 ModifyReplicationGroup API 操作,并使用与上一个 AUTH 令牌值相同的 --auth-token 参数和 SET 值的 --auth-token-update-strategy 参数。SET 策略只能用于拥有 2 个 AUTH 令牌或之前使用 ROTATE 策略时拥有 1 个可选 AUTH 令牌的集群。在修改完成后,服务器仅支持 auth-token 参数中指定的 AUTH 令牌。

以下 AWS CLI 操作修改复制组以将 AUTH 令牌设置为。This-is-the-set-token

对于 Linux、macOS 或 Unix:

aws elasticache modify-replication-group \ --replication-group-id authtestgroup \ --auth-token This-is-the-set-token \ --auth-token-update-strategy SET \ --apply-immediately

对于 Windows:

aws elasticache modify-replication-group ^ --replication-group-id authtestgroup ^ --auth-token This-is-the-set-token ^ --auth-token-update-strategy SET ^ --apply-immediately

在现有集群上启用身份验证

要在现有 Valkey 或 Redis OSS 服务器上启用身份验证,请调用 ModifyReplicationGroup API 操作。调用 ModifyReplicationGroup,将 --auth-token 参数作为新令牌,并将 --auth-token-update-strategy 参数值设置为 ROTATE。

在 ROTATE 修改完成后,集群除了支持未进行身份验证的连接外,还支持 --auth-token 参数中指定的 AUTH 令牌。在所有客户端应用程序都更新为使用 AUTH 令牌针对 Valkey 或 Redis OSS 进行身份验证后,请使用 SET 策略根据需要标记 AUTH 令牌。只有启用了传输中加密(TLS)的 Valkey 和 Redis OSS 服务器才支持启用身份验证。

从 RBAC 迁移到 AUTH

如果您使用 Valkey 或 Redis OSS 基于角色的访问控制(RBAC)对用户进行身份验证(如基于角色的访问控制(RBAC)中所述),并希望迁移到 AUTH,请使用以下流程。您可以使用控制台或 CLI 进行迁移。

要使用控制台从 RBAC 迁移到 AUTH
  1. 登录 AWS Management Console 并打开 ElastiCache 控制台,网址为 https://console.aws.amazon.com/elasticache/

  2. 从右上角的列表中,选择要修改的集群所在的 AWS 区域。

  3. 在导航窗格中,选择在您要修改的集群上运行的引擎。

    此时会显示选定引擎的集群列表。

  4. 在集群列表中,对于要修改的集群,选择其名称。

  5. 对于 Actions(操作),选择 Modify(修改)。

    此时将显示修改窗口。

  6. 对于访问控制,选择 Valkey AUTH 默认用户访问Redis OSS AUTH 默认用户访问

  7. Valkey AUTH 令牌Redis OSS AUTH 令牌下,设置新令牌。

  8. 选择预览更改,然后在下一个屏幕上选择修改

要从 RBAC 迁移到 AUTH,请使用 AWS CLI

使用以下任一命令为 Valkey 或 Redis OSS 复制组配置新的可选 AUTH 令牌。请注意,在使用下一步中的更新策略 SET 根据需要标记 Auth 令牌之前,可选的 Auth 令牌将允许对复制组进行未经身份验证的访问。

对于 Linux、macOS 或 Unix:

aws elasticache modify-replication-group \ --replication-group-id test \ --remove-user-groups \ --auth-token This-is-a-sample-token \ --auth-token-update-strategy ROTATE \ --apply-immediately

对于 Windows:

aws elasticache modify-replication-group ^ --replication-group-id test ^ --remove-user-groups ^ --auth-token This-is-a-sample-token ^ --auth-token-update-strategy ROTATE ^ --apply-immediately

执行上述命令后,您可以使用新配置的可选身份验证令牌更新您的 Valkey 或 Redis OSS 应用程序,以向 ElastiCache 复制组进行身份验证。要完成 Auth 令牌轮换,请在下面的后续命令中使用更新策略 SET。这将根据需要标记可选 AUTH 令牌。Auth 令牌更新完成后,复制组状态将显示为 ACTIVE,并且该复制组的所有连接都需要进行身份验证。

对于 Linux、macOS 或 Unix:

aws elasticache modify-replication-group \ --replication-group-id test \ --auth-token This-is-a-sample-token \ --auth-token-update-strategy SET \ --apply-immediately

对于 Windows:

aws elasticache modify-replication-group ^ --replication-group-id test ^ --remove-user-groups ^ --auth-token This-is-a-sample-token ^ --auth-token-update-strategy SET ^ --apply-immediately

有关更多信息,请参阅 使用 Valkey 和 Redis OSS AUTH 命令进行身份验证

注意

如果您需要在 ElastiCache 集群上禁用访问控制,请参阅禁用 ElastiCache Valkey 或 Redis OSS 缓存的访问控制

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。