AWS::SecretsManager::Secret GenerateSecretString - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::SecretsManager::Secret GenerateSecretString

GenerateSecretString 属性作为 AWS::SecretsManager::Secret 资源类型的一部分,以便动态生成随机文本字符串以作为密码。您可将此用作在 SecretString 属性中直接对密码进行硬编码的一种替代方法。在生成 AWS::SecretsManager::Secret 资源类型时,您必须包含其中的一个属性,但不能同时包含两者。

SecretString 允许您将文本值直接放入密钥中,但不建议执行该操作。相反,我们建议您使用 GenerateSecretString 属性动态生成随机密码。该操作返回完整的 JSON 结构以用作密钥值。该结构以您使用 SecretStringTemplate 提供的字符串开头。该模板字符串必须是正确格式的 JSON 字符串,其中包含密码以外的所有密钥值信息。然后,该操作使用其他参数指定的规则生成一个随机密码。最后,该操作将生成的密码以及 GenerateStringKey 参数指定的 JSON 键名称插入到密钥值结构中。

有关示例,请参阅 AWS::SecretsManager::Secret

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "ExcludeCharacters" : String, "ExcludeLowercase" : Boolean, "ExcludeNumbers" : Boolean, "ExcludePunctuation" : Boolean, "ExcludeUppercase" : Boolean, "GenerateStringKey" : String, "IncludeSpace" : Boolean, "PasswordLength" : Integer, "RequireEachIncludedType" : Boolean, "SecretStringTemplate" : String }

属性

ExcludeCharacters

排除生成的密码中的字符的字符串。默认情况下,可以使用包含的集合中的所有字符。字符串的最小长度为 0 个字符,最大长度为 7168 个字符。

必需:否

类型:字符串

最低0

最高4096

Update requires: No interruption

ExcludeLowercase

指定生成的密码不应包含小写字母。默认情况下,Secrets Manager 禁用此参数,生成的密码可以包括小写 False,生成的密码可以包括小写字母。

必需:否

类型:布尔值

Update requires: No interruption

ExcludeNumbers

指定生成的密码应排除数字。默认情况下,Secrets Manager 不启用参数 False,并且生成的密码可以包含数字。

必需:否

类型:布尔值

Update requires: No interruption

ExcludePunctuation

指定生成的密码不应包含标点符号字符。如果不包含此开关参数,则默认情况下可以包含标点符号字符。

如果未明确使用 ExcludeCharactersExcludePunctuation 排除,则可以 将以下标点符号字符包含在生成的密码中:

! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~

必需:否

类型:布尔值

Update requires: No interruption

ExcludeUppercase

指定生成的密码不应包含大写字母。默认行为是 False,并且生成的密码可以包含大写字母。

必需:否

类型:布尔值

Update requires: No interruption

GenerateStringKey

JSON 键名称,用于将生成的密码添加到 SecretStringTemplate 参数指定的 JSON 结构中。如果指定该参数,您还必须指定 SecretStringTemplate

必需:否

类型:字符串

最低0

最高65536

Update requires: No interruption

IncludeSpace

指定生成的密码可以包含空格字符。默认情况下,Secrets Manager 不启用该参数,并且生成的密码不包含空格。

必需:否

类型:布尔值

Update requires: No interruption

PasswordLength

生成的密码的所需长度。未包含该参数时的默认值为 32 个字符。

必需:否

类型:整数

Update requires: No interruption

RequireEachIncludedType

指定生成的密码是否必须包含每种允许的字符类型中的至少一个字符。默认情况下,Secrets Manager 启用该参数,并且生成的密码包含每种字符类型中的至少一种。

必需:否

类型:布尔值

Update requires: No interruption

SecretStringTemplate

可以将生成的密码添加到的正确结构 JSON 字符串。如果指定该参数,您还必须指定 GenerateStringKey。Secrets Manager 将其与生成的随机字符串合并在一起,并插入到由该参数指定的 JSON 结构中。合并的 JSON 字符串将作为填写的密钥 SecretString 返回。默认情况下,Secrets Manager 不返回生成的随机密码字符串,也不会将其嵌入 JSON 结构中。

必需:否

类型:字符串

最低0

最高65536

Update requires: No interruption

另请参阅