本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon SNS 主题的主题政策
Amazon SNS 主题需要相应的主题策略才能授予对 AWS 最终用户消息的访问权限(SMS如果未在 Amazon 主题中提供) TwoChannelWayRole
参数。
{ "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sns:Publish", "Resource": "
snsTopicArn
" }
在前面的示例中,进行以下更改:
-
Replace(替换)
snsTopicArn
使用将发送和接收消息的 Amazon SNS 主题。
注意
不支持 Amazon SNS FIFO 主题。
尽管 AWS 最终用户消息SMS数据已加密,但您可以使用使用 AWS KMS 密钥加密的 Amazon SNS 主题来提高安全级别。如果您的应用程序处理私有或敏感数据,这种增强的安全性会有所帮助。
您需要执行一些额外的设置步骤,才能在双向消息中使用加密的 Amazon SNS 主题。
以下示例语句使用可选但推荐的SourceAccount
和SourceArn
条件来避免混淆副手问题,并且只有 AWS 最终用户消息SMS所有者帐户才有访问权限。有关混淆副手问题的更多信息,请参阅IAM用户指南中的混淆副手问题。
首先,您使用的密钥必须是对称的。加密的 Amazon SNS 主题不支持非对称 AWS KMS 密钥。
其次,必须修改密钥策略以允许 AWS 最终用户消息SMS使用该密钥。将以下权限添加到现有密钥政策中:
{ "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "
accountId
" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:region
:accountId
:*" } } }
有关编辑密钥政策的更多信息,请参阅《AWS Key Management Service 开发人员指南》中的更改密钥政策。
有关使用 AWS KMS 密钥加密亚马逊SNS主题的更多信息,请参阅《亚马逊简单通知服务开发者指南》中的启用 AWS 服务事件源和加密主题之间的兼容性。