Esta página descreve como destruir uma versão secreta. 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 secretos nem restaurar a versão para outro estado.
Antes de destruir uma versão do secret, desative-a primeiro 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 receber as permissões necessárias para destruir uma versão secreta,
peça ao administrador para conceder a você o
papel do IAM de Administrador de versão secreta do Gerenciador de segredos (roles/secretmanager.secretVersionManager
) em um segredo.
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 por meio de papéis personalizados ou de outros papéis predefinidos.
Destruir uma versão de secret
Para destruir uma versão secreta, use um dos seguintes métodos:
Console
-
Acesse a página do Secret Manager no console do Google Cloud:
-
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 secreto 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 ou do identificador totalmente qualificado
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 as substituições a seguir:
- PROJECT_ID: o ID do projeto do Google Cloud
- SECRET_ID: o ID do secret ou do identificador totalmente qualificado
- 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 das versões do secret
O administrador do Secret Manager pode configurar a destruição atrasada das versões do secret configurando o recurso Atrasar a 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 mediante 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 dos dados.
- Saiba mais sobre as práticas recomendadas.