Esta página descreve como gerenciar o acesso a um secret regional, incluindo o material do secret. Para saber mais sobre permissões e controles 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, projeto, pasta ou
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
-
Acesse a página do Secret Manager no console do Google Cloud:
-
Acesse a guia Secrets regionais. Para selecionar um secret, clique na caixa de seleção ao lado ao nome do secret.
-
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 principais, insira os endereços de e-mail dos membros que você quer adicionar.
-
Na lista Selecionar um papel, escolha Secret Manager e depois Selecione Acessor 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
- LOCATION: o local do Google Cloud do segredo
- MEMBER: o membro do IAM, como um usuário, grupo ou conta de serviço
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
ggcloud secrets add-iam-policy-binding SECRET_ID --location=LOCATION \ --member="MEMBER" \ --role="roles/secretmanager.secretAccessor"
Windows (PowerShell)
ggcloud secrets add-iam-policy-binding SECRET_ID --location=LOCATION ` --member="MEMBER" ` --role="roles/secretmanager.secretAccessor"
Windows (cmd.exe)
ggcloud secrets add-iam-policy-binding SECRET_ID --location=LOCATION ^ --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:
- LOCATION: o local do secret no Google Cloud
- PROJECT_ID: o projeto do 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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/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" ] } ] }
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.
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 de um secret, use um dos seguintes métodos:
Console
-
Acesse a página do Secret Manager no console do Google Cloud:
-
Acesse a guia Secrets regionais. Para selecionar um secret, clique na caixa de seleção ao lado ao nome do secret.
-
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 da função do usuário para ver uma lista das usuários ou contas de serviço com acesso a ele.
-
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 o identificador totalmente qualificado para o secret
- LOCATION: o local do secret no Google Cloud
- 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 --location=LOCATION \ --member="MEMBER" \ --role="roles/secretmanager.secretAccessor"
Windows (PowerShell)
gcloud secrets remove-iam-policy-binding SECRET_ID --location=LOCATION ` --member="MEMBER" ` --role="roles/secretmanager.secretAccessor"
Windows (cmd.exe)
gcloud secrets remove-iam-policy-binding SECRET_ID --location=LOCATION ^ --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:
- LOCATION: o local do Google Cloud do segredo
- PROJECT_ID: o ID do projeto do Google Cloud
- SECRET_ID: o ID do secret ou do identificador totalmente qualificado
Método HTTP e URL:
POST https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID:setIamPolicy" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "version": 1, "etag": "BwYhOtzsOBk=" }
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.
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.
A seguir
- Definir a data de validade de um secret regional
- Criar programações de rotação
- Configurar notificações em um segredo regional