从 CFN 文档中我可以看到我可以创建一个 AWS::SSM::Parameter 。我还了解了如何创建 KMS Master Key .
但是,文档页面中 SSM:Parameter
上的 type
参数并未列出 安全字符串
类型。
有没有一种方法可以在 cloudformation 模板中执行以下操作:
1) create KMS Key
2) use KMS key to encrypt a param
3) pull that param in User-Data for an EC2 instance
我将从 Jenkins 作业运行 CFN 模板,并使用 jenkins 密码参数中的参数值。我还可以在模板参数上设置 "NoEcho": true
,这样它就不会在 CloudFormation 控制台中回显。
最佳答案
已添加对此的支持,因此您不再需要使用自定义资源。您必须使用对安全参数的动态引用。
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html
使用此功能,您可以将 {{resolve:ssm-secure:parameter-name:version}}
添加到 Fn::Join
CF 中的用户数据内在的。
截至 2019 年 4 月,安全字符串不可用作 cloudformation 模板中的参数类型,但文档指出 CloudFormation 将在更高版本中支持参数存储“SecureString”类型。
关于amazon-web-services - 具有 CloudFormation 的 AWS SSM 参数存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45466331/