本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
适用于 RabbitMQ 的亚马逊 MQ:密钥无效 AWS Key Management Service
当使用客户托管 AWS KMS key(CMK) 创建的代理检测到 () 密钥被禁用时,适用于 RabbitMQ 的 Amazon MQ 将引发一个 INVALID KMS _ _ KEY 关键操作需要的 AWS Key Management Service 代码。KMS带有的 RabbitMQ 代理CMK会定期验证KMS密钥是否已启用,并且该代理是否拥有所有必要的授权。如果 RabbitMQ 无法验证密钥是否已启用,则代理将被隔离,RabbitMQ 将返回 _。INVALID KMS KEY
如果没有激活KMS密钥,经纪人就没有客户托管KMS密钥的基本权限。在您重新启用密钥和代理程序重新启动之前,代理程序无法使用您的密钥执行加密操作。KMS密钥被禁用的 RabbitMQ 代理会被隔离,以防止恶化。在 RabbitMQ 确定KMS密钥再次处于活动状态后,您的经纪人将从隔离区中移除。Amazon MQ 不会使用禁用KMS密钥重启代理,只要该代理的密钥仍然无效KMS,就会返回RebootBroker
API操作异常。
诊断和寻址 INVALID _ _ KMS KEY
要诊断和解决 INVALID KMS _ KEY 操作所需的代码,必须使用 AWS 命令行界面 (CLI) 和 AWS Key Management Service 控制台。
重新启用您的密钥 KMS
-
调用该
DescribeBroker
方法kmsKeyId
为您的CMK经纪人检索。 登录 AWS Key Management Service 控制台。
在客户管理的密钥页面上,找到有问题的代理的KMS密钥 ID 并验证其状态为已启用。
如果您的KMS密钥已被禁用,请选择 “按键操作”,然后选择 “启用” 来重新启用密钥。重新启用密钥后,您必须等待 RabbitMQ 将代理程序从隔离区中删除。
要验证必要的授权是否仍与代理的KMS密钥相关联,请调用ListGrant
ListGrant 方法来验证mq_rabbit_grant
和mq_grant
是否存在。如果KMS授权或密钥已被删除,则必须删除代理并创建一个包含所有必要授权的新代理。有关删除代理程序的步骤,请参阅删除代理程序。
为防止出现 INVALID _ KMS _ 需要KEY关键操作的代码,请勿手动删除或禁用KMS密钥或CMK授权。如果您想删除密钥,请先删除代理。