Solicitudes seguras de transformación de imágenes

En esta página, se describe cómo garantizar un control más detallado sobre quién puede ver tu contenido y durante cuánto tiempo. Puedes usar las URLs firmadas de Cloud CDN y las Service Extensions para obtener acceso seguro y por tiempo limitado a tus imágenes optimizadas.

Las URLs estándar sin firmar permiten que los usuarios cambien o quiten manualmente las cadenas de parámetros de búsqueda en su navegador. Si tu lógica empresarial se basa en transformaciones de imágenes para la privacidad o los controles de acceso, las consultas sin firmar introducen los siguientes riesgos:

  • Filtración de metadatos: Un atacante podría quitar parámetros como metadata,preserve=none para recuperar coordenadas GPS ocultas o información sensible de la cámara contenida en el archivo fuente.

  • Omisión de la redacción visual: Si usas parámetros para ocultar rostros, matrículas o fondos confidenciales con recorte, cambio de tamaño o desenfoque, un usuario podría quitar esos parámetros para ver la imagen sin redactar.

Puedes usar URLs firmadas y Service Extensions para evitar solicitudes de transformación no deseadas.

Prevención con URLs firmadas

Para mitigar estos riesgos, configura las URLs firmadas de Cloud CDN para proteger tus rutas. Cuando se firma una URL, toda la cadena de configuración del parámetro de búsqueda imop pasa a formar parte de la firma criptográfica que Cloud CDN valida en cada solicitud. Si un usuario intenta cambiar operaciones o parámetros, por ejemplo, sizes, Cloud CDN valida automáticamente la firma criptográfica y rechaza la solicitud, y muestra un código de estado HTTP 403 Forbidden.

Para obtener más información, consulta URLs firmadas.

Lista de entidades permitidas con Service Extensions

Las extensiones de servicio permiten que los desarrolladores inserten lógica programable personalizada en el plano de datos de Cloud CDN. Esta lógica personalizada permite la manipulación avanzada de solicitudes y la aplicación de seguridad antes de que la función de optimización de imágenes procese la solicitud.

Las extensiones de servicio permiten analizar la cadena de consulta imop y hacer coincidir sus parámetros con una lista de entidades permitidas fija. Por ejemplo, solo puede permitir anchos responsivos predefinidos, 200, 400 o 800.

En el siguiente ejemplo, se muestra cómo una solicitud no autorizada intenta omitir tu caché perimetral y cómo Service Extensions controlan esas solicitudes:

  1. Un cliente solicita un tamaño de imagen no estándar y sin caché:

    image.jpg?imop=Resize,width=401

  2. Las extensiones de servicio interceptan la solicitud en el perímetro de Cloud CDN. Analiza la cadena de consulta para extraer el transformation parameter: width=401.

  3. Service Extensions compara 401 con tus puntos de interrupción de diseño responsivo predefinidos:

  4. Lista de entidades permitidas: 200, 400, 800

  5. Cuando detecta que 401 no está en la lista de entidades permitidas, las Service Extensions finalizan de inmediato la solicitud y muestran un error HTTP 403 (Forbidden) o quitan los parámetros para entregar la imagen original.

La solicitud no se procesa, lo que evita el agotamiento de la capacidad de procesamiento perimetral.

Para obtener más información, consulta Extensiones de servicio.

¿Qué sigue?