为什么发布到 Amazon SNS 主题的消息没有传递到激活了服务器端加密的订阅的 Amazon SQS 队列中?
上次更新时间:2021 年 6 月 21 日
当我将消息发布到我的 Amazon Simple Notification Service (Amazon SNS) 主题时,消息并未传送到我的 Amazon Simple Queue Service (Amazon SQS) 队列。如果我的 Amazon SNS 主题或 Amazon SQS 队列或两者都激活了服务器端加密 (SSE),如何解决此问题?
简短描述
您的 Amazon SQS 队列必须使用客户管理的 AWS KMS 密钥(KMS 密钥)。此 KMS 密钥必须包含自定义密钥策略,此策略授予 Amazon SNS 足够的密钥使用权限。
注意:这些权限未包含在 Amazon SQS 的 AWS 托管 KMS 密钥的原定设置密钥策略中,并且您无法修改该策略。
如果主题已激活 SSE,则还必须执行以下操作:
解决方法
1. 使用具有 Amazon SNS 所需权限的密钥策略创建新的客户管理的 KMS 密钥。
2. 使用刚创建的自定义 KMS 密钥为您的 Amazon SQS 队列配置 SSE。
3. (如果您的 Amazon SNS 主题已激活 SSE)配置 AWS 密钥管理 (AWS KMS) 权限,允许发布者向您的已加密主题发布消息。
有关更多信息,请参阅使用订阅的加密 Amazon SQS 队列为 Amazon SNS 主题激活服务器端加密 (SSE)。
注意:要排查其他消息传输问题,请参阅Amazon SNS 消息传输状态。