
Tengo algunos servicios ejecutándose en funciones de la nube de Google que necesitan conectarse a un punto final en AWS. Dado que no existe un conjunto fijo de IP que pueda incluir en la lista blanca, ¿puede compartir su opinión sobre la mejor manera de abordar esto? Entiendo que las ips se pueden enumerar como se explica.aquí, pero comparta sus ideas sobre cómo lidiar dinámicamente con esto/monitorear el cambio de IP.
Amazon proporciona un tema de redes sociales al que se puede suscribir y que enumera todas las IP de AWS y tenemos casos de uso en los que utilizamos la función lambda suscrita a su tema de redes sociales para mantener nuestro grupo de seguridad actualizado. pero estoy tratando de descubrir cuál es la mejor manera de tratar con Google para necesidades similares.
Respuesta1
Existen tres métodos comunes para proteger el tráfico entrante:
- Dónde: la dirección IP del tráfico.
- Quién: la identidad del tráfico (token de identidad de OAuth, etc.)
- Qué: un secreto (clave secreta, clave API, etc.) que posee el tráfico.
Para Google Cloud Functions, no puede utilizar de manera confiable el primer método. Google aún no publica bloques de red IP de Cloud Function. Es bastante fácil determinar de qué netblocks provienen las funciones de nube, pero eso incluye muchos otros servicios de Google Cloud.
Google Cloud Functions admite la --service-account
opción de implementación que utiliza una cuenta de servicio para proporcionar un token de identidad OAuth en el encabezado HTTP "autorización: portador". Este es el método normal para verificar la identidad en el mundo GCP (OAuth).
El tercer método (clave secreta) es cualquier cosa que desees. Puede crear un encabezado personalizado, una carga útil de cuerpo personalizado, etc. e incluir su clave secreta.
El punto final, o la puerta de enlace frente al punto final, al que llama Google Cloud Functions deberá validar el método que está utilizando.