
Actualmente contamos con una solución autohospedada que permite a nuestros clientes agregar CNAMES para acceder a su contenido a través de sus propios dominios.
Estamos trasladando toda la pila a Google Cloud, y el producto principal reside en una implementación de Firebase Hosting, con funciones sin servidor, almacenamiento y bases de datos de Firestore.
Soy consciente de que podemos agregar CNAMES de forma manual y programática a nuestra cuenta de alojamiento de Firebase, pero hay un límite estricto de 20 en Firebase.
Mi pregunta: ¿GCP ofrece una solución en la que podemos agregar CNAME mediante programación, generar un certificado autofirmado y apuntarlos a través de un proxy a nuestra URL de alojamiento de Firebase, conservando al mismo tiempo el CNAME de origen, pero entregando nuestro contenido de Firebase? ¿O enfoques recomendados para esta pila?
Cosas que no queremos hacer:
- tener múltiples implementaciones de Firebase con 20 dominios cada una
- Agregue cualquier solución alojada (motor informático, etc.) como intermediario
- Aléjate de Firebase
Nos comunicamos con el equipo de Firebase, pero nos recomendaron el punto 1 anterior: dividirlos en varias implementaciones, ya que no tenían visibilidad de otros productos de GCP.
Respuesta1
La respuesta a su pregunta no es cuántos nombres de host puede admitir Firebase, sino cuántos nombres de host puede admitir SSL.
La recomendación del certificado SSL es que no se coloquen más de 20 entradas en el campo SAN de un certificado SSL. Esto se denomina límites de acuñación de certificados SSL. Algunos certificados SSL admiten hasta 100*, pero Firebase admite 20. Cuantas más entradas, mayor será la sobrecarga para procesar cada conexión. Cada vez que agrega un nuevo dominio al certificado, todos los dominios existentes deben volver a verificarse a medida que se emite un nuevo certificado.
Nota: no incluyo el comodín (*.example.com)
*Nota:RFC 5280no especifica un máximo para SubjectAltNames. Microsoft impone un tamaño máximo de una extensión codificada de 4 KB (enlace).