amazon-web-services - 使用 AWS CDK 加密卷和自己的 KMS 密钥失败
问题描述
我正在尝试使用 AWS CDK 创建一个 EBS 卷,该卷由我自己在 C# 中的 KMS 密钥加密,使用以下代码段:
var kmsProps = new EncryptionKeyProps
{
Description = "Encryption key for Storage",
EnableKeyRotation = true,
Enabled = true,
Retain = true
};
var kms = new EncryptionKey(stack, "kms-storage", kmsProps);
var kmsAlias = kms.AddAlias("alias/" + stack.StackName + "/storage");
var storageVolume = new CfnVolume(stack, "server-storage-encrypted", new CfnVolumeProps
{
AvailabilityZone = privateSubnet1.AvailabilityZone,
KmsKeyId = kmsAlias.AliasName,
Size = 30,
Encrypted = true,
Tags = new ICfnTag[]
{
new CfnTag {Key = "Name", Value = "Server Storage"}
},
VolumeType = "gp2"
});
但是部署命令失败并出现Volume vol-0e88979f5568c16fa is still creating
错误
知道我在 KMS 政策等方面做错了吗?试图寻找它,我唯一发现的是自动缩放需要访问密钥,与 EBS/EC2 无关
解决方案
我今天跑到这个问题上。事实证明,在 KmsKeyId 中使用别名导致了这个问题。将别名更改为实际密钥 ID 后成功创建堆栈。尽管文档说可以使用别名,但它对我不起作用。
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html
推荐阅读
- python - 如何通过python pyral API从集会中获取测试计划
- angular - 使用角度调用单击函数时如何更新循环内的get函数?
- stm32 - stm32 lwip - 无法响应ping
- python - 无法将上下文传递到主视图
- .net - 如何在 .Net 内核中解析 Intel Hex 文件?
- amazon-web-services - dynamodb 中的自动缩放虽然云形成在手动干预后不会回退
- python - 为numpy数组切片的奇数和偶数元素分配不同的值
- laravel - Laravel 5.7 分页自定义
- node.js - Express JS 路由可选参数
- python - Python 使用 Django 框架和 Postgres 连接到 Heroku 缺失模块的问题