Para mejorar la seguridad general, IAP rechaza de forma predeterminada el acceso a las solicitudes que no tienen una indicación del nombre del servidor (SNI) coincidente. IAP también verifica el SNI del certificado del balanceador de cargas. Esto permite que la IAP restrinja el redireccionamiento de URLs a dominios maliciosos. La función de dominios permitidos de IAP proporciona una capa de seguridad adicional para tus recursos protegidos con IAP. Como propietario de un recurso o administrador de IAP, puedes restringir el acceso a los recursos protegidos por IAP a dominios específicos configurando la función de dominios permitidos.
También puedes configurar los dominios permitidos de las IAP en las siguientes situaciones:
- Tu navegador o un proxy intermedio fuerzan la agrupación de conexiones: En este caso, recibes la respuesta HTTP 429 y el código de error
51. Para resolver el problema, un administrador de IAP puede actualizar la lista de dominios permitidos para incluir el nombre de tu host. - El nombre de host proporcionado no coincide con el certificado SSL del servidor: En este caso, recibirás el código de error
52. Para resolver el problema, un administrador de IAP puede actualizar la lista de dominios permitidos para incluir el nombre de tu host.
Configura los dominios permitidos
Puedes usar gcloud o la API para configurar los parámetros de configuración de los dominios permitidos. Para configurar los dominios permitidos, usa los siguientes campos:
enable: Booleano. Activa o desactiva la función de dominios permitidos.Domains: Cadena. Es la lista de dominios permitidos. Los dominios pueden contener prefijos de comodín, como*.example.com.. Los nombres de dominio no pueden contener un comodín directamente en un sufijo público o en un dominio de nivel superior. Ejemplo:*.com,*.co.in.
Para obtener más información, consulta IapSettings.
Para configurar los dominios permitidos de IAP, completa los siguientes pasos:
Console
- Ve a la página de IAP.
Ir a Identity-Aware Proxy - Selecciona un proyecto y, luego, el recurso en el que deseas habilitar la función de dominios permitidos.
- Abre Configuración para el recurso. En Dominios permitidos, selecciona Habilitar dominios permitidos.
- Especifica la lista de dominios permitidos y, luego, haz clic en Guardar.
gcloud
A continuación, se incluyen algunos ejemplos de comandos para especificar dominios permitidos.
Para obtener más información, consulta gcloud iap settings set.
Ejecuta el comando siguiente:
gcloud iap settings set SETTING_FILE --folder=FOLDER --organization=ORGANIZATION --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
En el ejemplo anterior, SETTING_FILE es:
accessSettings:
allowed_domains_settings:
enable: true
domains: ["*.example.com", "*.example.net"]
Reemplaza lo siguiente:
- FOLDER: Es el ID de la carpeta.
- ORGANIZATION: Es el ID de la organización.
- PROJECT: El ID del proyecto
- RESOURCE_TYPE: Es el tipo de recurso de la IAP. Debe ser
app-engine,iap_web,compute,organization,folder,backend-services,forwarding-ruleocloud-run. - SERVICE: el nombre del servicio Es opcional cuando
resource-typeescomputeoapp-engine. - VERSION: Es el nombre de la versión. No se aplica a
computey es opcional cuandoresource-typeesapp-engine.
Debes especificar al menos una de las siguientes marcas para definir el alcance de la configuración:
--organization=ORGANIZATION--folder=FOLDER--project=PROJECT
API
Para configurar los dominios permitidos, completa los siguientes pasos. Para obtener más información sobre el uso de la API para configurar dominios permitidos, consulta IapSettings.
- Ejecuta el siguiente comando para preparar un archivo
iap_settings.json. Actualiza los valores según sea necesario.
{
"access_settings":{
"allowed_domains_settings":{
"enable": true
"domains": [
"*.example.com",
"*.exampe.net"
]
}
}
}
- Ejecuta el comando
gcloud iap settings getpara obtener el nombre del recurso. Copia el campo name del resultado. Necesitarás el nombre en el siguiente paso.
gcloud iap settings get --organization=ORGANIZATION --folder=FOLDER --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
- Reemplaza
RESOURCE_NAMEen el siguiente comando por el nombre del paso anterior. Se actualizará laIapSettings.
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"
Soluciona problemas
Problema de acceso a dominios permitidos
Si recibes el código de error 53, pídele a un administrador de IAP que agregue el nombre de tu host a la lista de dominios permitidos.