Esta página descreve como gerenciar o acesso a um secret, incluindo o material do secret. Para saber mais sobre controles e permissões de acesso, consulte Controle de acesso com o IAM.
Funções exigidas
Para receber as permissões necessárias para gerenciar o acesso a secrets,
peça ao administrador para conceder a você o
Administrador do Gerenciador de segredos (roles/secretmanager.admin
) do IAM no secret, no projeto, na pasta ou na
organização.
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.
Conceder acesso
Para conceder acesso a um secret, use um dos seguintes métodos:
Console
-
No console do Google Cloud, acesse a página Secret Manager.
-
Para selecionar um secret, clique na caixa de seleção ao lado do nome dele na página do Gerenciador de secrets.
-
Se ela ainda não estiver aberta, clique em Mostrar painel de informações para abrir o painel.
-
No painel de informações, clique em Adicionar participante.
-
No campo Novos participantes, insira os endereços de e-mail dos membros que você quer adicionar.
-
Na lista Selecionar um papel, escolha Secret Manager e depois Acessador de secrets do Secret Manager.
gcloud
Antes de usar os dados do comando abaixo, faça estas substituições:
- SECRET_ID: o ID do secret ou do identificador totalmente qualificado
- MEMBER: o membro do IAM, como um usuário, grupo ou conta de serviço
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud secrets add-iam-policy-binding SECRET_ID \ --member="MEMBER" \ --role="roles/secretmanager.secretAccessor"
Windows (PowerShell)
gcloud secrets add-iam-policy-binding SECRET_ID ` --member="MEMBER" ` --role="roles/secretmanager.secretAccessor"
Windows (cmd.exe)
gcloud secrets add-iam-policy-binding SECRET_ID ^ --member="MEMBER" ^ --role="roles/secretmanager.secretAccessor"
REST
Observação: diferentemente dos outros exemplos, isso substitui toda a política do IAM.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o projeto Google Cloud que contém o segredo
- SECRET_ID: o ID do secret ou do identificador totalmente qualificado
- MEMBER: o membro do IAM, como um usuário, grupo ou conta de serviço
Método HTTP e URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy
Corpo JSON da solicitação:
{"policy": {"bindings": [{"members": ["MEMBER"], "role": "roles/secretmanager.secretAccessor"}]}}
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:setIamPolicy"
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:setIamPolicy" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "version": 1, "etag": "BwYhOrAmWFQ=", "bindings": [ { "role": "roles/secretmanager.secretAccessor", "members": [ "user:username@google.com" ] } ] }
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.
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.
Revogação do acesso
Para revogar o acesso a um secret, use um dos seguintes métodos:
Console
-
No console do Google Cloud, acesse a página Secret Manager.
-
Para selecionar um secret, clique na caixa de seleção ao lado do nome dele na página do Gerenciador de secrets.
-
Se ela ainda não estiver aberta, clique em Mostrar painel de informações para abrir o painel.
-
No painel de informações, clique na seta de expansão ao lado do papel do usuário para conferir uma lista dos usuários ou das contas de serviço com acesso a esse papel.
-
Para remover a conta de usuário ou de serviço, clique em
Excluir ao lado da conta de serviço ou do ID do usuário. -
Na caixa de diálogo de confirmação que aparece, clique em Remover.
gcloud
Antes de usar os dados do comando abaixo, faça estas substituições:
- SECRET_ID: o ID do secret ou do identificador totalmente qualificado
- MEMBER: o membro do IAM, como um usuário, grupo ou conta de serviço
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud secrets remove-iam-policy-binding SECRET_ID \ --member="MEMBER" \ --role="roles/secretmanager.secretAccessor"
Windows (PowerShell)
gcloud secrets remove-iam-policy-binding SECRET_ID ` --member="MEMBER" ` --role="roles/secretmanager.secretAccessor"
Windows (cmd.exe)
gcloud secrets remove-iam-policy-binding SECRET_ID ^ --member="MEMBER" ^ --role="roles/secretmanager.secretAccessor"
REST
Observação: diferentemente dos outros exemplos, isso substitui toda a política do IAM.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do Google Cloud projeto
- SECRET_ID: o ID do secret ou do identificador totalmente qualificado
Método HTTP e URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy
Corpo JSON da solicitação:
{"policy": {"bindings": []}}
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:setIamPolicy"
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:setIamPolicy" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "version": 1, "etag": "BwYhOtzsOBk=" }
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.
A seguir
- Saiba como definir uma data de validade para um secret.
- Saiba como configurar programações de rotação para segredos.
- Saiba como configurar notificações em um secret.