
[英]AWS - Can a KMS replica key be created in a different account from the primary
[英]Can I decrypt a KMS key from a different account, from a different aws region?
这是我的场景:
A
和B
。K
保护账户A
和区域us-east-1
中的 SQS 队列。B
和区域us-west-2
中有一个 SNS 主题。A
的 SQS 队列订阅了来自账户B
的主题。encryptionMasterKey.addToResourcePolicy(new iam.PolicyStatement({
effect: iam.Effect.ALLOW,
actions: ["kms:Create*",
"kms:Describe*",
"kms:Enable*",
"kms:List*",
"kms:Put*",
"kms:Update*",
"kms:Revoke*",
"kms:Disable*",
"kms:Get*",
"kms:Delete*",
"kms:ScheduleKeyDeletion",
"kms:CancelKeyDeletion",
"kms:GenerateDataKey",
"kms:TagResource",
"kms:UntagResource"],
resources: ["*"],
principals: [new iam.AccountPrincipal("<account B id>")]
}));
现在,这是我的观察:
K
在队列上启用 SSE 加密,则 SNS 主题将失败并KMS.AccessDeniedException
。出于业务原因,我需要能够加密我的队列。 如何允许我的 SNS 主题访问 KMS 密钥?
我遇到了类似的问题,在这里查看问题和答案: SNS not able to send messages to SQS queue in another account
TL;DR:除了@user3099576 的回答之外,您还需要使用在两个区域之一中创建的多区域 KMS 密钥,以及在另一个区域中的副本。 KMS 密钥目前不跨区域。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.