Faça a gestão do acesso a recursos protegidos pela IAP

Esta página descreve como gerir o acesso individual ou de grupo a recursos protegidos pelo Identity-Aware Proxy (IAP) ao nível do recurso.

Vista geral

Pode usar o IAP para configurar políticas do IAP para recursos individuais e do Cloud Run num Google Cloud projeto. Cada uma das várias apps num projeto pode ter políticas de acesso diferentes. Isto inclui projetos que têm apps do Compute Engine, Google Kubernetes Engine e App Engine. Para apps do App Engine, podem ser aplicadas diferentes políticas de acesso a versões e serviços individuais.

Para gerir o acesso ao nível do projeto e superior, use a página de administrador do IAM. As listas de utilizadores que têm acesso (os "diretores") ao nível do projeto aplicam-se a todos os recursos protegidos pelo IAP no projeto.

Antes de começar

Antes de começar, precisa do seguinte:

  • Um recurso protegido pelo IAP ao qual quer adicionar acesso individual ou de grupo.
  • Nomes de utilizadores ou grupos aos quais quer adicionar acesso.

Ative e desative as compras na app

Para ativar e desativar as IAPs, são necessárias determinadas autorizações. A tabela seguinte mostra a autorização necessária para cada tipo de app.

Tipo de app Autorização necessária
App Engine appengine.applications.update
Compute Engine, Google Kubernetes Engine ou Cloud Run compute.backendServices.update

Estas autorizações são concedidas por funções como Editor do projeto, Administrador do App Engine e Administrador da rede de computação. Embora estas funções permitam ativar e desativar o IAP, não têm as autorizações necessárias para modificar as políticas de acesso.

Além disso, a ativação das CAsI com a Google Cloud consola também pode exigir as autorizações clientauthconfig.clients.create, clientauthconfig.clients.update> e clientauthconfig.clients.getWithSecret. Estas autorizações são concedidas pela função de editor do projeto.

Para saber como conceder funções, consulte o artigo Conceder, alterar e revogar acesso.

Faça a gestão do acesso na Google Cloud consola

Para controlar o acesso a um recurso protegido pelo IAP com a Google Cloud consola, siga o processo para adicionar ou remover o acesso.

Adicione acesso

  1. Aceda à página Identity-Aware Proxy.
    Aceda à página Identity-Aware Proxy

  2. Selecione o recurso que quer proteger com a CNA. As seguintes seleções de recursos protegem um grupo definido de recursos:

    • Todos os serviços Web: todos os recursos no projeto vão ser protegidos. Tenha em atenção que isto não é o mesmo que conceder acesso ao nível do projeto com a página de administrador do IAM. Um utilizador ao qual foi concedida a função de administrador da política de IAP ao nível do recurso Todos os serviços Web só tem autorizações para políticas de IAP.

    • Serviços de back-end: todos os serviços de back-end vão ser protegidos.

  3. No painel de informações do lado direito, adicione os endereços de email dos grupos ou dos indivíduos aos quais quer conceder uma função de gestão de identidade e acesso (IAM) para o recurso.

  4. Aplique funções da política de acesso ao principal selecionando uma das seguintes funções no menu pendente Selecionar uma função:

    • Proprietário: concede o mesmo acesso que o administrador da política de CNA. Em alternativa, use a função administrador da política de IAP. Esta função só permite modificar políticas e não concede acesso à app.

    • Administrador da política de CNA: concede direitos de administrador sobre as políticas de CNA.

    • Utilizador da app Web protegida por CNA: concede acesso à app e a outros recursos HTTPS que usam a CNA.

    • Revisor de segurança: concede autorização para ver e auditar as políticas de CNA.

  5. Quando terminar de adicionar endereços de email e definir funções, clique em Adicionar

Remover acesso

  1. Aceda à página Identity-Aware Proxy.
    Aceda à página Identity-Aware Proxy
  2. Selecione o recurso protegido com o IAP.
  3. No painel de informações do lado direito, selecione a secção correspondente à função que quer remover de um principal.
  4. Na secção expandida, junto a cada nome de utilizador ou grupo para o qual quer remover a função, clique em Remover.
  5. Na caixa de diálogo Remover principal apresentada, clique em Remover.

Faça a gestão do acesso com a API

O IAM fornece um conjunto padrão de métodos para criar e gerir políticas de controlo de acesso em Google Cloud recursos.

Recursos e autorizações

A API IAP permite-lhe aplicar autorizações da IAM a recursos individuais num projeto protegido pelo IAP. As autorizações de IAM concedidas a um determinado nível aplicam-se a todos os níveis inferiores. Por exemplo, uma autorização concedida ao nível do projeto aplica-se a todos Google Cloud os recursos no projeto. O acesso ao nível do projeto e superior é gerido na página de administração do IAM, mas é apresentado na página de administração do IAP.

Os utilizadores precisam de determinadas autorizações para aceder a uma app protegida pela IAP. Para conceder estas autorizações, os administradores podem usar uma API para atualizar as políticas de IAM. A autorização iap.webServiceVersions.accessViaIAP concede ao utilizador acesso a uma app. Se estiver a usar o IAP para controlar o acesso a serviços administrativos como o SSH e o RDP, os utilizadores precisam da autorização iap.tunnelInstances.accessViaIAP.

Cada recurso de IAP tem a sua própria autorização getIamPolicy e setIamPolicy que concede a capacidade de gerir políticas de acesso para esse recurso e os respetivos filhos.

Para chamar a API IAM, crie uma chamada com um caminho do URL para um recurso. Segue-se um exemplo de uma chamada que obtém a política de IAM para uma versão do serviço de app do App Engine.

https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/
appengine-APP_ID/services/SERVICE_ID/versions/VERSION_ID:getIamPolicy

A tabela seguinte lista os tipos de recursos suportados, bem como as autorizações necessárias para chamar a API IAM.

Tipo do recurso Autorizações
Todas as apps Web protegidas pelo IAP no projeto
Isto é igual à caixa de verificação Todos os serviços Web na página de administração do IAP.

Caminho
https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web
iap.web.getIamPolicy

iap.web.setIamPolicy
Todos os serviços de back-end no projeto
Isto é igual à caixa de verificação Serviço de back-end na página de administração do IAP.

Caminhos
Âmbito global:
https://iap.googleapis.com/v1/projects/
PROJECT_NUMBER/iap_web/compute

Âmbito regional:
https://iap.googleapis.com/v1/projects/
PROJECT_NUMBER/iap_web/compute-REGION_NAME
iap.webTypes.getIamPolicy

iap.webTypes.setIamPolicy
Todas as regras de encaminhamento no projeto
Autorizações para todas as regras de encaminhamento no projeto.

Caminhos
Âmbito global:
https://iap.googleapis.com/v1/projects/
PROJECT_NUMBER/iap_web/forwarding_rule

Âmbito regional:
https://iap.googleapis.com/v1/projects/
PROJECT_NUMBER/iap_web/forwarding_rule-REGION_NAME
iap.webTypes.getIamPolicy

iap.webTypes.setIamPolicy
Uma região para cada serviço do Cloud Run no projeto
Autorizações para todos os serviços do Cloud Run numa região no projeto.

Caminho
https://iap.googleapis.com/v1/projects/
PROJECT_NUMBER/iap_web/cloud_run-REGION_NAME
iap.webTypes.getIamPolicy

iap.webTypes.setIamPolicy
Um serviço do Cloud Run
Autorizações para um serviço do Cloud Run. Todos os serviços do Cloud Run são regionais.

Caminho
https://iap.googleapis.com/v1/projects/
PROJECT_NUMBER/iap_web/cloud_run-REGION_NAME/services/SERVICE_NAME
iap.webServices.getIamPolicy

iap.webServices.setIamPolicy