En esta página se explica cómo proteger una instancia de Google Kubernetes Engine (GKE) con Identity-Aware Proxy (IAP).
Para proteger los recursos que no están en Google Cloud, consulta Proteger aplicaciones y recursos on-premise.
Información general
IAP se integra a través de Ingress para GKE. Esta integración te permite controlar el acceso a nivel de recurso de los empleados en lugar de usar una VPN.
En un clúster de GKE, el tráfico entrante se gestiona mediante el balanceo de carga HTTP(S), un componente de Cloud Load Balancing. El balanceador de carga HTTP(S) se configura normalmente mediante el controlador Ingress de Kubernetes. El controlador Ingress obtiene información de configuración de un objeto Ingress de Kubernetes asociado a uno o varios objetos Service. Cada objeto Service contiene información de enrutamiento que se usa para dirigir una solicitud entrante a un pod y un puerto concretos.
A partir de la versión 1.10.5-gke.3 de Kubernetes, puedes añadir la configuración del balanceador de carga asociando un servicio a un objeto BackendConfig. BackendConfig es una definición de recurso personalizado (CRD) que se define en el repositorio kubernetes/ingress-gce.
El controlador Ingress de Kubernetes lee la información de configuración de BackendConfig y configura el balanceador de carga en consecuencia. Un BackendConfig contiene información de configuración específica de Cloud Load Balancing y te permite definir una configuración independiente para cada servicio de backend de balanceo de carga HTTP(S).
Antes de empezar
Para habilitar IAP en GKE, necesitas lo siguiente:
- Un proyecto de la consola de Google Cloud con la facturación habilitada. Google Cloud
- Grupo de una o varias instancias de GKE, atendidas por un balanceador de carga HTTPS. El balanceador de carga se debe crear automáticamente cuando crees un objeto Ingress en un clúster de GKE.
- Consulta información sobre cómo crear un Ingress para HTTPS.
- Un nombre de dominio registrado en la dirección de tu balanceador de carga.
- Código de la aplicación para verificar que todas las solicitudes tienen una identidad.
- Consulta cómo obtener la identidad del usuario.
IAP usa un cliente de OAuth gestionado por Google para autenticar a los usuarios. Solo los usuarios de la organización pueden acceder a la aplicación con IAP. Si quieres permitir el acceso a usuarios ajenos a tu organización, consulta Habilitar las compras en aplicaciones para aplicaciones externas.
Habilitar IAP
Pasos siguientes
- Define reglas de contexto más efectivas aplicando niveles de acceso.
- Para ver las solicitudes de acceso, habilita los registros de auditoría de Cloud.
- Consulta más información sobre IAP.
- Consulta cómo configurar Cloud CDN en GKE.
- Consulta cómo configurar Cloud Armor para GKE.
- Consulta más información sobre el recurso BackendConfig.