使用terraform覆盖已删除的awsssecretsmanager_secret资源



我有一些秘密是使用terraform创建的,由于一些错误,我已经注释并应用了tf,所以资源被标记为删除,但现在如果我启用并应用它,它就是说资源被标记了删除。

resource "aws_secretsmanager_secret" "rotation-example" {
name                = "mysecret"
description       ="sccretatexample"
recovery_windows_in_days = 7
}

我无法更改名称和创建其他资源,也无法访问aws-console/cli。请指导我如何重新创建,或者是否可以通过覆盖来使用旧的

到目前为止,还没有使用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

一旦秘密被恢复,你就可以使用";地形导入";如下所示,用现有的机密详细信息更新您的状态文件。

terraform import aws_secretsmanager_secret.rotation-example mysecret

此外,如果您想创建和删除机密,请经常使用以下内容。

recovery_windows_in_days = 0

相关内容

  • 没有找到相关文章