Amazon cloudformation 云层形成的秘密

Amazon cloudformation 云层形成的秘密,amazon-cloudformation,aws-secrets-manager,aws-ssm,Amazon Cloudformation,Aws Secrets Manager,Aws Ssm,我希望坚持“所有基础设施都是代码”的政策。然而,对于云信息的秘密,我看不到这样做的方法 SecretsManager要求您以纯文本形式指定SecretString。即使您从某处注入解密的值,纯文本字符串也会显示在模板视图的CF控制台中:/ 在SSM中也不可能使用加密字符串。文档说,“AWS CloudFormation不支持创建SecureString参数类型。” 真的没有办法使用CloudFormation作为代码安全地管理机密吗 您可以使用CloudFormation中的资源创建Secret

我希望坚持“所有基础设施都是代码”的政策。然而,对于云信息的秘密,我看不到这样做的方法

SecretsManager要求您以纯文本形式指定SecretString。即使您从某处注入解密的值,纯文本字符串也会显示在模板视图的CF控制台中:/

在SSM中也不可能使用加密字符串。文档说,“AWS CloudFormation不支持创建SecureString参数类型。”

真的没有办法使用CloudFormation作为代码安全地管理机密吗

您可以使用CloudFormation中的资源创建SecretsManager机密。有一种方法可以在SecretString(使用API)中生成值。看看这房子

这将帮助您生成密码,而无需在模板中硬编码

还有一个资源可以帮助你为你的秘密设置自动轮换

要使用存储在SecretsManager机密或参数存储参数中的机密值,请使用。动态引用保证机密值不会记录在CFN中或显示在控制台中


目前无法在parameter Store/Systems Manager中创建/生成参数。

感谢您的回复!不幸的是,我有无法生成的特定/外部密钥和密码。这就是生活。什么程序创建外部密钥和密码?理想情况下,您希望此创建步骤包括或启动在SecretsManager中存储机密的步骤。然后,您可以使用动态引用在CloudFormation中使用该秘密。它们由外部公司作为集成密钥交给我们。因此,这个过程在这一点上是手动的。不幸的是,我不能在CF中定义秘密,只是让其他CF模板引用现有的、手动创建的秘密,正如您所说的。这意味着机密本身不是CF/infrastructure代码的一部分:(@Tim这对您来说可能太晚了,但我们遇到了类似的情况,我们要做的是在CloudFormation中使用占位符值创建机密字符串。然后我们从console/cli更新机密。这样,机密名称/arn本身仍然是stack@SudhanshuMishra对于大多数情况,这实际上是一个很好的解决方案。谢谢分享!