Debido a las regulaciones europeas de privacidad, es mejor evitar las solicitudes a dominios de terceros iniciadas por un sitio web que alojas. Es difícil lograr el cumplimiento con Discourse, ya que la función Onebox hace que el navegador obtenga la miniatura del sitio web original, lo que la convierte en una solicitud de terceros. Vea el artículo unoboxed a continuación:
Puede ver en las herramientas de desarrollador que la imagen se descarga de un sitio web de terceros. Como señala el artículo, es un problema del RGPD incluso si la solicitud no tiene cookies.
Actualmente, he deshabilitado onebox para mi instancia de Discourse, pero me encantaría volver a introducirlo de una manera que respete más estrictamente la privacidad y no abra una forma de recibir una multa.
Las imágenes podrían servirse desde un dominio principal o un dominio personalizado como cdn.mydomain.com.
No puedes guardar imágenes de terceros en tu propia configuración debido a los derechos de autor, lo cual es muy difícil con las imágenes (y eso hace que una característica de Discourse sea bastante cuestionable, pero esa es otra historia). Pero el oneboxing no va en contra del RGPD y nunca lo ha hecho. Para estar seguro, es una buena medida indicar que hay un tercero involucrado mediante enlaces y que el cumplimiento del RGPD es su responsabilidad. Pero tampoco necesitas eso.
El oneboxing en sí mismo no lo hace, pero servir recursos de terceros claramente sí, véase el caso de Google Fonts anterior
¿Quizás podríamos en su lugar proxyarlas a través del servidor de Discourse, de modo que los terceros solo vieran la IP del servidor de Discourse, no la del usuario?
¡Vaya, eso es interesante! ¿Es algún tipo de plugin o una configuración que podría habilitar en mi instancia?
Oneboxing no está sirviendo a servicios de terceros. Y el RGPD permite el uso de Google Fonts, debe informarlo a los usuarios — y Google también está cumpliendo con el RGPD.
Pero esto no es un asunto del RGPD en absoluto. Los iframes sí lo son.
No se trata tanto de “decir” a los usuarios, sino de tener una base legal, como el Consentimiento o el Interés Legítimo. Con el consentimiento, tienes que tener una forma conveniente de rechazar el consentimiento y luego el recurso no se carga. Con un Interés Legítimo, tienes que realizar una Evaluación de Razón Legítima, y yo (y puedo imaginar a muchos otros administradores de servidores de Discourse) preferiría no hacerlo y, en cambio, deshabilitar el oneboxing por completo, o ocultar la IP del usuario detrás de un proxy.
Se trata exactamente de informar. Necesitas consentimiento al recopilar, usar y almacenar datos personales de un usuario. E incluso entonces debes decir qué haces, por qué lo haces y por cuánto tiempo lo haces.
El oneboxing no es parte de eso, pero debes informar si hay un tercero involucrado. Y los oneboxes son solo enlaces elegantes.
Lo que quise decir es: revelar el hecho de que hay solicitudes de terceros no es suficiente. Según el RGPD, debes proporcionar:
el propósito de dicho procesamiento de datos
la base legal de dicho procesamiento
No podemos usar el consentimiento, porque Discourse no permite mostrar imágenes externas en onebox solo para los usuarios que dieron su consentimiento para ello. Y el Interés Legítimo aún requiere involucrar a un abogado en el proceso para realizar adecuadamente la prueba de ponderación. Sería mucho más fácil si no tuviéramos que hacer eso porque el software no hacía que el navegador enviara solicitudes a terceros (que ni siquiera podemos enumerar en una política de privacidad, o señalar las políticas de privacidad de esos terceros, porque puede ser literalmente cualquiera en Internet).
Como se ve en el RGPD, no son solo enlaces, porque son visitados por el navegador sin la acción del usuario.
(Por cierto, no me estoy inventando esto, trabajo con el cumplimiento del RGPD en mi vida profesional y tengo experiencia práctica sobre cómo funcionan las quejas y las multas en la UE)
Dejando de lado las discusiones legales, hay usuarios que bloquean recursos de terceros específicamente con el propósito de no revelar su IP y hábitos de navegación a terceros. Sería bueno si las oneboxes funcionaran para ellos
Aparte de las consideraciones legales, creo que sería útil hacer algo en esta área.
Sin embargo, tiendo a decir que la solución es más bien pedir al usuario una opción específica para mostrar medios externos. Varios sitios web alemanes que visito han adoptado la práctica de pedir específicamente a los usuarios esto (ejemplo a continuación).
Creo que, además de esto, sería bueno tener previsualizaciones de imágenes estáticas servidas directamente desde el host de Discourse, pero tiendo a decir que la opción real es el paso más importante.
Ejemplo (Golem.de, sitio web de noticias de TI alemán):
Tengo curiosidad por esto. Puedo entender el problema de Google Font, ya que requiere obtener la fuente del servidor de Google para cada usuario.
Sin embargo, en mi experiencia con un “Onebox”, la vista previa del enlace permanece estática a menos que reconstruyas el HTML. Lo que quiero decir con eso. Es que en mi experiencia, el onebox permanece con la misma información de vista previa, incluso si la fuente cambia la información en la página.
Esto ha sido útil cuando un sitio ha cambiado drásticamente la información de la página. Mi vista previa de la información del onebox permaneció sin cambios sin reconstruir la publicación a través de la llave inglesa.
Tuve algunos oneboxes antiguos que permanecieron intactos, aunque el sitio enlazado original ya ni siquiera contenía el contenido enlazado.
Por otro lado, creo que los iframes se actualizan de la manera que identificaste como menciona @Jagster, como una vista previa en vivo al ver por usuario, como sucede con la obtención de fuentes de Google.
Al menos con mi entendimiento. Supongo que también tendrías que deshabilitar los embeds, ¿verdad?
Imagino que se podría crear un plugin para añadir una función como la siguiente.
Puedo ver por qué mi amigo alemán aquí en Canadá dice que es mejor bloquear la UE.
Como dijo @Firepup650 anteriormente, este no es el caso en absoluto, ya que Discourse descarga y sirve automáticamente las imágenes Oneboxed, lo cual es incluso una configuración predeterminada.
Incluso puedes hacerlo más estricto activando block hotlinked media.
El problema fue de Google, que no cumplió con el RGPD. Esa fue una parte del caso por la que Google recibió una multa bastante considerable de la UE. Pero nunca fue un problema de esos sitios que usaban Google Font, AdSense, etc. Por eso Google estuvo en el juicio, no quienes ofrecieron esos servicios.
Entiendo la frustración: muchas cosas que hace la UE están bien intencionadas, pero no necesariamente bien implementadas y a menudo complican las cosas para los desarrolladores.
En este caso específico, me gusta lo que la gente implementó, porque le da al usuario una opción simple pero significativa.
Si esto se puede hacer en un complemento, mucho mejor. Supuse que sería necesario hacerlo en el núcleo porque se ejecuta en todas las cajas de enlaces.
Las razones o razones imaginarias empiezan a ser irrelevantes. Pero esas regulaciones son puntos débiles en EE. UU. Y esas regulaciones son necesarias porque las gigantescas empresas estadounidenses no respetaron en absoluto la privacidad de los usuarios, porque no hay regulación en EE. UU. O debería decir ahora… porque la vida de los desarrolladores no es tan complicada
Así que, no le des las gracias a la UE. Envía tarjetas de agradecimiento a Google, Amazon, Microsoft, X, Apple, etc. Y al mismo tiempo, puedes pensar en lo que tienen en común.
Por cierto, recibí un mensaje de que no debería dejar entrar a nadie menor de 13 años en mi foro. Seguramente los dejaré entrar, incluso desde California, si saben leer finés
Se acabó (por qué no hay emoji de lanzar el micrófono…)
No discuto la necesidad de regulación; lo único que digo es que el paso de “nosotros y nuestros 999 socios de confianza robaremos tus datos” a una gran ventana emergente que dice “haz clic aquí para aceptar que nosotros y nuestros 999 socios de confianza robaremos tus datos” a veces se siente como una victoria pírrica, y puedo entender por qué a algunas personas les hace rascarse la cabeza
Pero volviendo al tema principal: @kuba-orlik, si esto te funciona, te sugiero que reformules la solicitud de funciones como “Proporcionar opción para requerir el consentimiento del usuario antes de mostrar medios externos” (yo votaría por ella, entonces).
Si crees que el encabezado actual se adapta mejor a tu solicitud, también está bien. En ese caso, probablemente abriría otra yo mismo.
Bueno, llega a extremos demenciales. A menos que haya cambiado o se haya distorsionado, recuerdo haber leído que una empresa podría tener que honrar una garantía, digamos, de hardware, donde el usuario final lo dañó al desmantelarlo e intentar una reparación.
El problema mayor es que ha llegado a extremos para proteger a las personas de la pura estupidez.
Por lo que entiendo, un plugin podría lograr esto, ya que modifica elementos del núcleo en el lado del servidor, en lugar de un componente de tema que modifica cosas en el lado del cliente/navegador; los scripts de Tampermonkey son algo así como temas/componentes instalados en el lado del navegador. Solía usar un script de Tampermonkey en un antiguo juego de navegador llamado Fallen Sword para modificar cómo ordena los artículos en el mercado.
Nota lateral interesante: no recibí notificaciones para este tema.