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
Aceda à página Identity-Aware Proxy.
Aceda à página Identity-Aware ProxySelecione 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.
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.
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.
Quando terminar de adicionar endereços de email e definir funções, clique em Adicionar
Remover acesso
- Aceda à página Identity-Aware Proxy.
Aceda à página Identity-Aware Proxy - Selecione o recurso protegido com o IAP.
- No painel de informações do lado direito, selecione a secção correspondente à função que quer remover de um principal.
- Na secção expandida, junto a cada nome de utilizador ou grupo para o qual quer remover a função, clique em Remover.
- 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.getIamPolicyiap.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/ Âmbito regional: https://iap.googleapis.com/v1/projects/ |
iap.webTypes.getIamPolicyiap.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/ Âmbito regional: https://iap.googleapis.com/v1/projects/ |
iap.webTypes.getIamPolicyiap.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/ |
iap.webTypes.getIamPolicyiap.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/ |
iap.webServices.getIamPolicyiap.webServices.setIamPolicy |