我有一个使用terraform创建的秘密,由于我已经注释并应用了tf,所以将一些资源标记为删除,但是现在如果我启用并应用它,就是说该资源被标记为删除。
resource "aws_secretsmanager_secret" "rotation-example" {
name = "mysecret"
description ="sccretatexample"
recovery_windows_in_days = 7
}
我无法更改名称并创建其他资源,也无法访问aws console / cli。请指导我如何重新创建,或者可以通过覆盖来使用旧版本
答案 0 :(得分:0)
截至目前,尚无使用terraform检索已删除机密的功能。检查此未解决的问题- https://github.com/terraform-providers/terraform-provider-aws/issues/10259
但是您可以通过一些手动工作来做到这一点,但是您将需要您的AWS管理员的帮助,或者AWS访问密钥应获得以下许可。
To restore a secret and the metadata in the console, you must have these permissions:
secretsmanager:ListSecrets – Use to navigate to the secret you want to restore.
secretsmanager:RestoreSecret – Use to delete any versions still associated with the secret.
如果AWS访问密钥具有上述权限,请在cmd下使用以下密码恢复密码。
aws secretsmanager restore-secret --secret-id mysecret
按照此AWS文档还原机密。 https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_delete-restore-secret.html
一旦恢复了机密,则可以使用以下“ terrain导入”来使用现有机密详细信息更新状态文件。
terraform import aws_secretsmanager_secret.rotation-example mysecret
此外,如果要创建和删除机密信息,请经常使用。
recovery_windows_in_days = 0