Nesta página, descrevemos como gerenciar o acesso a um secret regional, 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
papel do IAM de Administrador do Secret Manager (roles/secretmanager.admin
)
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 usando papéis personalizados ou outros papéis predefinidos.
Conceder acesso
Para conceder acesso a um secret, use um dos seguintes métodos:
Console
-
No console Google Cloud , acesse a página Secret Manager.
-
Acesse a guia Secrets regionais. Para selecionar um secret, clique na caixa de seleção ao lado do nome dele.
-
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, digite 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
Verifique se você seguiu as etapas descritas em Ativar a API Secret Manager para gerenciar secrets regionais.Antes de usar os dados do comando abaixo, faça estas substituições:
- SECRET_ID: o ID do secret
- LOCATION: o Google Cloud local do secret
- 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 --location=LOCATION \ --member="MEMBER" \ --role="roles/secretmanager.secretAccessor"
Windows (PowerShell)
gcloud secrets add-iam-policy-binding SECRET_ID --location=LOCATION ` --member="MEMBER" ` --role="roles/secretmanager.secretAccessor"
Windows (cmd.exe)
gcloud 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 Google Cloud local do secret
- PROJECT_ID: o Google Cloud projeto que contém o secret
- SECRET_ID: o ID do secret
- 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
-
No console Google Cloud , acesse a página Secret Manager.
-
Acesse a guia Secrets regionais. Para selecionar um secret, clique na caixa de seleção ao lado do nome dele.
-
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 dos usuários ou contas de serviço com acesso a essa função.
-
Para remover o usuário ou a conta de serviço, clique em
Excluir ao lado do ID da conta de serviço ou 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
- LOCATION: o Google Cloud local do secret
- 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 Google Cloud local do secret
- PROJECT_ID: o ID do projeto Google Cloud
- SECRET_ID: o ID do secret
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 uma data de validade para um secret regional
- Criar programações de rotação
- Configurar notificações em um secret regional