Nesta página, descrevemos como destruir uma versão do secret. No estado destruído , o conteúdo da versão do secret é descartado. A destruição de uma versão do secret é uma ação permanente. Depois que uma versão é destruída, não é possível acessar os dados do secret nem restaurar a versão para outro estado.
Antes de destruir uma versão do secret, desative-a e observe o comportamento do seu aplicativo. É possível reativar a versão do secret se você encontrar problemas inesperados.
Quando você desativa ou destrói um secret ou uma versão do secret, a alteração leva tempo para ser propagada pelo sistema. Se necessário, você pode revogar o acesso ao secret. As alterações nas permissões do IAM se tornam consistentes em questão de segundos.
Funções exigidas
Para conseguir as permissões que
você precisa para destruir uma versão do secret,
peça ao administrador que conceda a você o
papel do IAM de Gerenciador de versões do Secret Manager (roles/secretmanager.secretVersionManager) em um secret.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias com papéis personalizados ou outros papéis predefinidos.
Destruir uma versão de secret
Para destruir uma versão do secret, use um dos seguintes métodos:
Console
-
No Google Cloud console, acesse a página Secret Manager.
-
Na página Secret Manager, clique em um secret para acessar as versões dele.
-
Na página de detalhes do secret, na guia Versões, selecione a versão do secret que você quer destruir.
-
Clique em Ações e em Destruir.
-
Na caixa de diálogo de confirmação que aparece, insira o ID do secret para confirmar e clique em Destruir versões selecionadas.
gcloud
Antes de usar os dados do comando abaixo, faça estas substituições:
- VERSION_ID: o nome do recurso da versão do secret
- SECRET_ID: o ID do secret
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID
Windows (PowerShell)
gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID
Windows (cmd.exe)
gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID
REST
Antes de usar os dados da solicitação abaixo, faça estas substituições:
- PROJECT_ID: o Google Cloud ID do projeto
- SECRET_ID: o ID do secret
- VERSION_ID: o ID da versão do secret
Método HTTP e URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:destroy
Corpo JSON da solicitação:
{}
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:destroy"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:destroy" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID",
"createTime": "2024-09-02T07:16:34.566706Z",
"destroyTime": "2024-09-04T06:29:01.893743728Z",
"state": "DESTROYED",
"etag": "\"1621454a37ce7f\""
}
C#
Para executar esse código, primeiro configure um ambiente de desenvolvimento em C# e instale o SDK do C# do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Go
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Go e instale o SDK do Go do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Java
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Java e instale o SDK do Java do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Node.js
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Node.js e instale o SDK do Node.js do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
PHP
Para executar este código, veja primeiro como usar o PHP no Google Cloud e instalar o SDK do PHP do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Python
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Python e instale o SDK do Python do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Ruby
Para executar esse código, primeiro configure um ambiente de desenvolvimento em Ruby e instale o SDK do Ruby do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Destruição atrasada de versões do secret
O administrador do Secret Manager pode configurar a destruição atrasada de versões do secret configurando o recurso Atrasar destruição da versão do secret no secret. Se esse recurso estiver ativado, a versão do secret não será destruída imediatamente após a solicitação. Em vez disso, a versão do secret é desativada e programada para destruição em uma data posterior. Durante esse período, o administrador do Secret Manager pode restaurar a versão do secret.
A seguir
- Saiba como garantir a integridade de dados.
- Saiba mais sobre as práticas recomendadas.