AWS Secret Manager 秘密在没有强制保留期的情况下被删除
AWS Secret Manager secret deleted without mandatory retention period
我使用如下所示的 CloudFormation 模板创建了一个秘密:
"DBSecretCredentials": {
"Type": "AWS::SecretsManager::Secret",
"Properties": {
"Name": "MyAwesomeSecret",
"Description": "Something,
"GenerateSecretString": {
"SecretStringTemplate": "{\"USER\":\"superman\"}",
"GenerateStringKey": "PASSWORD",
"PasswordLength": 30,
"ExcludeCharacters": "\"@/\"
},
"Tags": [
{
"Key": "AppName",
"Value": "Something"
},
{
"Key": "Environment",
"Value": {
"Ref": "Environment"
}
}
]
}
}
当我删除 CloudFormation 堆栈时,我希望秘密以 "pending deletion" 状态存在,并具有 7 天的保留政策,因为这是 AWS 的要求。
当我访问 AWS 控制台时,未决删除模式没有秘密。 (是的,我点击了齿轮图标并选中了 "Show secrets scheduled for deletion" 复选框。
我使用 CLI 查询 AWS Secrets Manager
以列出所有机密,但它没有 return 由于 CFT 堆栈删除而删除的机密。
我是不是漏掉了什么?
删除 CloudFormation 堆栈时,将使用 "force-delete-without-recovery" 选项调用 Secrets Manager,并永久删除所有机密。这是为了使 CloudFormation 能够删除每个引用的秘密,而不会在您的帐户中留下工件。
我使用如下所示的 CloudFormation 模板创建了一个秘密:
"DBSecretCredentials": {
"Type": "AWS::SecretsManager::Secret",
"Properties": {
"Name": "MyAwesomeSecret",
"Description": "Something,
"GenerateSecretString": {
"SecretStringTemplate": "{\"USER\":\"superman\"}",
"GenerateStringKey": "PASSWORD",
"PasswordLength": 30,
"ExcludeCharacters": "\"@/\"
},
"Tags": [
{
"Key": "AppName",
"Value": "Something"
},
{
"Key": "Environment",
"Value": {
"Ref": "Environment"
}
}
]
}
}
当我删除 CloudFormation 堆栈时,我希望秘密以 "pending deletion" 状态存在,并具有 7 天的保留政策,因为这是 AWS 的要求。
当我访问 AWS 控制台时,未决删除模式没有秘密。 (是的,我点击了齿轮图标并选中了 "Show secrets scheduled for deletion" 复选框。
我使用 CLI 查询 AWS Secrets Manager
以列出所有机密,但它没有 return 由于 CFT 堆栈删除而删除的机密。
我是不是漏掉了什么?
删除 CloudFormation 堆栈时,将使用 "force-delete-without-recovery" 选项调用 Secrets Manager,并永久删除所有机密。这是为了使 CloudFormation 能够删除每个引用的秘密,而不会在您的帐户中留下工件。