Com o Identity-Aware Proxy (IAP), é possível gerenciar o acesso a apps baseados em HTTP fora do Google Cloud. Isso inclui apps locais nos data centers da sua empresa.
Para saber como proteger seus apps locais com IAP, consulte este documento.
Introdução
O IAP segmenta apps locais com o Conector do IAP no local. O conector local usa um modelo do Cloud Deployment Manager para criar os recursos necessários para hospedar e implantar o conector do IAP no local em um projeto do Google Cloud ativado para IAP, encaminhando solicitações autenticadas e autorizadas para apps locais.
O conector local cria os seguintes recursos:
- Uma implantação do Traffic Director que atua como um proxy para o aplicativo local.
- Um balanceador de carga de HTTP externo(S) que atua como o controlador de entrada de solicitações.
- Regras de roteamento.
Uma implantação pode ter vários serviços de back-end do Traffic Director executados em um balanceador de carga HTTP(S) externo. Cada serviço de back-end é mapeado para um app local individual.
Quando o conector do IAP no local é implantado e ativado para o serviço de back-end do conector recém-criado, o IAP protege seu app com políticas de acesso de gerenciamento de identidade e identidade (IAM, na sigla em inglês) baseados em contexto. Como uma política de acesso do IAM está configurada no nível do recurso de serviço de back-end, é possível ter listas de controle de acesso diferentes para cada um dos seus aplicativos locais. Isso significa que basta um único projeto do Google Cloud para gerenciar o acesso a vários apps locais.
Como o IAP para apps locais funciona
No caso de um app hospedado no Google Cloud, o IAP autentica e autoriza as solicitações de usuários enviadas a esse aplicativo. Assim, ele concede ao usuário acesso ao app no Google Cloud.
O IAP também pode ser usado para autenticar e autorizar solicitações de usuários para apps locais. Em seguida, ele encaminha a solicitação para o conector do IAP no local. O conector do IAP no local encaminha a solicitação por meio de um grupo de endpoints de rede de conectividade híbrida do Google Cloud para a rede local.
O diagrama a seguir mostra de modo geral o fluxo do tráfego de uma solicitação da Web para um aplicativo no Google Cloud (app1) e para um aplicativo local (app2).
Regras de roteamento
Ao configurar uma implantação de conector do IAP, você precisa configurar as regras de roteamento. Essas regras encaminham as solicitações da Web autenticadas e autorizadas recebidas no ponto de entrada do seu nome de host de DNS para o nome de host de DNS de destino.
Veja a seguir um exemplo de parâmetros routing
definidos para um modelo do Deployment Manager de conector do IAP.
routing: - name: hr mapping: - name: host source: www.hr-domain.com destination: hr-internal.domain.com - name: sub source: sheets.hr-domain.com destination: sheets.hr-internal.domain.com - name: finance mapping: - name: host source: www.finance-domain.com destination: finance-internal.domain.com
- Cada nome de
routing
corresponde a um recurso novo do serviço de back-end do Compute Engine criado pelo Ambassador. - O parâmetro
mapping
especifica uma lista de regras de roteamento do Ambassador para um serviço de back-end. - A
source
de uma regra de roteamento é mapeada para umdestination
, em quesource
é o URL das solicitações recebidas no Google Cloud edestination
é o URL do seu app local, para onde o IAP encaminha o tráfego após o usuário ser autorizado e autenticado.
A tabela a seguir traz exemplos de regra para encaminhar as solicitações recebidas em www.hr-domain.com
para hr-internal.domain.com
:
Serviço de back-end do Compute Engine | Nome da regra de roteamento | Fonte | Destino |
---|---|---|---|
h | hr-host | www.hr-domain.com | hr-internal.domain.com |
hr-sub | sheets.hr-domain.com | sheets.hr-internal.domain.com | |
finance = | finance-host | www.finance-domain.com | finance-internal.domain.com |
A seguir
- Saiba como proteger apps locais com o IAP.
- Saiba mais sobre como o IAP funciona.