Para melhorar a segurança geral, o IAP nega por padrão o acesso a solicitações que não têm uma indicação de nome do servidor (SNI) correspondente. O IAP também verifica o SNI do certificado do balanceador de carga. Isso permite que o IAP restrinja o redirecionamento de URL para domínios maliciosos. O recurso de domínios permitidos do IAP oferece uma camada extra de segurança para seus recursos protegidos pelo IAP. Como proprietário de um recurso ou administrador do IAP, é possível restringir o acesso a recursos protegidos pelo IAP a domínios específicos configurando o recurso de domínios permitidos.
Também é possível configurar domínios permitidos da IAP nos seguintes cenários:
- Seu navegador ou um proxy intermediário está forçando o pool de conexões:nesse cenário, você recebe a resposta HTTP 429 e o código de erro
51. Para resolver o problema, um administrador da IAP pode atualizar a lista de domínios permitidos para incluir seu nome de host. - O nome do host fornecido não corresponde ao certificado SSL no servidor:nesse cenário, você recebe o código de erro
52. Para resolver o problema, um administrador da IAP pode atualizar a lista de domínios permitidos para incluir seu nome de host.
Configurar domínios permitidos
Use a gcloud ou a API para configurar as configurações de domínios permitidos. Para configurar os domínios permitidos, use os seguintes campos:
enable: booleano. Ativa ou desativa o recurso de domínios permitidos.Domains: string. A lista de domínios permitidos. Os domínios podem conter prefixos curinga, como*.example.com.. Os nomes de domínio não podem conter um caractere curinga diretamente em um sufixo público ou em um domínio de nível superior. Exemplo:*.com,*.co.in.
Para mais informações, consulte IapSettings.
Para configurar os domínios permitidos do IAP, siga estas etapas:
Console
- Acesse a página do IAP.
Acesse o Identity-Aware Proxy. - Selecione um projeto e o recurso em que você quer ativar o recurso de domínios permitidos.
- Abra as Configurações do recurso. Em Domínios permitidos, selecione Ativar domínios permitidos.
- Especifique a lista de domínios permitidos e clique em Salvar.
gcloud
Confira alguns exemplos de comandos para especificar domínios permitidos.
Para ver mais informações, consulte gcloud iap settings set.
Execute este comando:
gcloud iap settings set SETTING_FILE --folder=FOLDER --organization=ORGANIZATION --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
Onde SETTING_FILE é:
accessSettings:
allowed_domains_settings:
enable: true
domains: ["*.example.com", "*.example.net"]
Substitua:
- FOLDER: o ID da pasta.
- ORGANIZATION: o ID da organização.
- PROJECT: o ID do projeto.
- RESOURCE_TYPE: o tipo de recurso da IAP. Precisa ser
app-engine,iap_web,compute,organization,folder,backend-services,forwarding-ruleoucloud-run. - SERVICE: o nome do serviço. Isso é opcional quando
resource-typeécomputeouapp-engine. - VERSION: o nome da versão. Isso não se aplica a
computee é opcional quandoresource-typeéapp-engine.
É necessário especificar pelo menos uma das flags a seguir para definir o escopo das configurações:
--organization=ORGANIZATION--folder=FOLDER--project=PROJECT
API
Para configurar os domínios permitidos, siga estas etapas. Para mais informações sobre como usar a API para configurar domínios permitidos, consulte IapSettings.
- Execute o comando a seguir para preparar um arquivo
iap_settings.json. Atualize os valores conforme necessário.
{
"access_settings":{
"allowed_domains_settings":{
"enable": true
"domains": [
"*.example.com",
"*.exampe.net"
]
}
}
}
- Para receber o nome do recurso, execute o comando
gcloud iap settings get. Copie o campo "name" da saída. Você vai precisar dele na próxima etapa.
gcloud iap settings get --organization=ORGANIZATION --folder=FOLDER --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
- Substitua
RESOURCE_NAMEno comando a seguir pelo nome da etapa anterior. OIapSettingsserá atualizado.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @iap_settings.json \ "https://iap.googleapis.com/v1/RESOURCE_NAME:iapSettings?updateMask=iapSettings.accessSettings.allowedDomainsSettings.enable,iapSettings.accessSettings.allowedDomainsSettings.domains"
Solução de problemas
Problema de acesso aos domínios permitidos
Se você receber o código de erro 53, peça a um administrador da IAP para adicionar seu nome de host à lista de domínios permitidos.