Esta página descreve como gerir o acesso a um segredo, incluindo o material secreto. Para saber mais sobre os controlos de acesso e as autorizações, consulte o artigo Controlo de acesso com a IAM.
Funções necessárias
Para receber as autorizações de que precisa para gerir o acesso a segredos,
peça ao seu administrador para lhe conceder a função do IAM
Administrador do Gestor Secreto (roles/secretmanager.admin
)
no segredo, projeto, pasta ou organização.
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.
Conceder acesso
Para conceder acesso a um segredo, use um dos seguintes métodos:
Consola
-
Na Google Cloud consola, aceda à página Secret Manager.
-
Para selecionar um segredo, clique na caixa de verificação junto ao nome do segredo na página Secret Manager.
-
Se ainda não estiver aberto, clique em Mostrar painel de informações para o abrir.
-
No painel de informações, clique em Adicionar principal.
-
No campo Novos membros, introduza os endereços de email dos membros a adicionar.
-
Na lista Selecionar uma função, escolha Secret Manager e, de seguida, selecione Secret Manager Secret Accessor.
gcloud
Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:
- SECRET_ID: o ID do segredo ou o identificador totalmente qualificado do segredo
- MEMBER: o membro do IAM, como um utilizador, um grupo ou uma 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
Nota: ao contrário dos outros exemplos, isto substitui toda a política de IAM.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o projeto Google Cloud que contém o segredo
- SECRET_ID: o ID do segredo ou o identificador totalmente qualificado do segredo
- MEMBER: o membro do IAM, como um utilizador, um grupo ou uma conta de serviço
Método HTTP e URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy
Corpo JSON do pedido:
{"policy": {"bindings": [{"members": ["MEMBER"], "role": "roles/secretmanager.secretAccessor"}]}}
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
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
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
$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
Deve receber uma resposta JSON semelhante à seguinte:
{ "version": 1, "etag": "BwYhOrAmWFQ=", "bindings": [ { "role": "roles/secretmanager.secretAccessor", "members": [ "user:username@google.com" ] } ] }
C#
Para executar este código, primeiro configure um ambiente de programação em C# e instale o SDK em C# do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Go
Para executar este código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK Go do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Java
Para executar este código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK Java do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Node.js
Para executar este 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, tem de autenticar-se com o âmbito cloud-platform.
PHP
Para executar este código, saiba primeiro como usar o PHP no Google Cloud e instale o SDK PHP do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Python
Para executar este código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK Python do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Ruby
Para executar este código, primeiro configure um ambiente de desenvolvimento Ruby e instale o SDK Ruby do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Python
Para executar este código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK Python do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Revogar acesso
Para revogar o acesso de um segredo, use um dos seguintes métodos:
Consola
-
Na Google Cloud consola, aceda à página Secret Manager.
-
Para selecionar um segredo, clique na caixa de verificação junto ao nome do segredo na página Secret Manager.
-
Se ainda não estiver aberto, clique em Mostrar painel de informações para o abrir.
-
No painel de informações, clique na seta de expansão junto à função do utilizador para ver uma lista dos utilizadores ou das contas de serviço com acesso a essa função.
-
Para remover o utilizador ou a conta de serviço, clique em
Eliminar junto ao ID do utilizador ou da conta de serviço. -
Na caixa de diálogo de confirmação apresentada, clique em Remover.
gcloud
Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:
- SECRET_ID: o ID do segredo ou o identificador totalmente qualificado do segredo
- MEMBER: o membro do IAM, como um utilizador, um grupo ou uma 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
Nota: ao contrário dos outros exemplos, isto substitui toda a política de IAM.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o Google Cloud ID do projeto
- SECRET_ID: o ID do segredo ou o identificador totalmente qualificado do segredo
Método HTTP e URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy
Corpo JSON do pedido:
{"policy": {"bindings": []}}
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
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
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
$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
Deve receber uma resposta JSON semelhante à seguinte:
{ "version": 1, "etag": "BwYhOtzsOBk=" }
C#
Para executar este código, primeiro configure um ambiente de programação em C# e instale o SDK em C# do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Go
Para executar este código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK Go do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Java
Para executar este código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK Java do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Node.js
Para executar este 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, tem de autenticar-se com o âmbito cloud-platform.
PHP
Para executar este código, saiba primeiro como usar o PHP no Google Cloud e instale o SDK PHP do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Python
Para executar este código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK Python do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Ruby
Para executar este código, primeiro configure um ambiente de desenvolvimento Ruby e instale o SDK Ruby do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
O que se segue?
- Saiba como definir uma data de validade para um Secret.
- Saiba como configurar agendamentos de rotação para secrets.
- Saiba como configurar notificações num segredo.