具有CloudFormation的AWS SSM参数存储

时间:2017-08-02 16:32:06

标签: amazon-web-services jenkins amazon-ec2 aws-kms amazon-cloudformation

从CFN文档中我可以看到我可以创建versioned file。我也看到了如何创建AWS::SSM::Parameter

但是,doc页面中type上的SSM:Parameter参数未列出secure string类型。

有没有办法可以在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密码参数中的param值从Jenkins作业运行CFN模板。我还可以在模板的参数上设置"NoEcho": true,这样就不会在CloudFormation控制台中回显。

2 个答案:

答案 0 :(得分:0)

似乎有办法使用custom resource来执行此操作。结合lambda函数。

答案 1 :(得分:0)

已添加对此功能的支持,因此您不再需要使用自定义资源。您必须使用对安全参数的动态引用。

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html

使用此功能,您可以在{{resolve:ssm-secure:parameter-name:version}} CF内部函数中向用户数据添加Fn::Join

截至2019年4月,安全字符串在cloudformation模板中不可用作参数类型,但是文档指出CloudFormation will support the Parameter Store ‘SecureString’ type in a later release.

https://aws.amazon.com/blogs/mt/integrating-aws-cloudformation-with-aws-systems-manager-parameter-store/