Para melhorar a segurança geral, o IAP nega por padrão acesso a solicitações que não tenham indicação de nome do servidor (SNI, na sigla em inglês) correspondente. Assim, o IAP restringe o redirecionamento de URLs a domínios maliciosos. O recurso de domínios permitidos do IAP fornece uma camada de segurança adicional para os recursos protegidos pelo IAP. Como proprietário de recursos ou administrador do IAP, você pode configurar o recurso de domínios permitidos para restringir a determinados domínios o acesso a recursos protegidos pelo IAP.
Também é possível configurar domínios permitidos pelo IAP nos seguintes cenários:
- Seu navegador ou um proxy intermediário está forçando o pool de conexões:neste cenário, você recebe a resposta HTTP 429 e o código de erro
51
. Para resolver o problema, um administrador do IAP pode atualizar a lista de domínios permitidos para incluir o nome do host. - O nome do host fornecido não corresponde ao certificado SSL no servidor: neste cenário, você recebe um código de erro
52
. Para resolver o problema, um administrador do IAP pode atualizar a lista de domínios permitidos para incluir o nome do host.
Configurar domínios permitidos
É possível usar a gcloud ou a API para definir as configurações dos domínios permitidos. Para configurar domínios permitidos, use os seguintes campos:
enable
: booleano. Ativa ou desativa o recurso de domínios permitidos.Domains
: string. Lista de domínios permitidos. Os domínios podem conter prefixos com caracteres curinga, como*.example.com.
. 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 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
Veja a seguir alguns exemplos de comandos para especificar domínios permitidos.
Para 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 do IAP. Precisa ser
app-engine
,iap_web
,compute
,organization
oufolder
. - SERVICE: o nome do serviço. Isso é opcional quando
resource-type
écompute
ouapp-engine
. - VERSION: o nome da versão. Isso não é aplicável para
compute
e é opcional quandoresource-type
éapp-engine
.
API
Para configurar domínios permitidos, siga as etapas abaixo. 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" ] } } }
- Receba o nome do recurso executando o comando
gcloud iap settings get
. Copie o campo de nome da saída. Você precisará desse nome na próxima etapa.
gcloud iap settings get [--organization=ORGANIZATION --folder=FOLDER --project=/PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION]
- Substitua
RESOURCE_NAME
no comando a seguir pelo nome da etapa anterior. A tabelaIapSettings
vai ser atualizada.
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 a domínios permitidos
Se você receber o código de erro 53, peça a um administrador do IAP para adicionar seu nome de host à lista de domínios permitidos.