Restaurar copia de seguridad a una instancia local de forma segura/anonimizada

Quiero experimentar un poco con plugins, temas, etc., localmente para evitar el riesgo de romper el foro real. Sin embargo, configurar todo en un estado similar al del foro real es difícil, por lo que sería genial poder simplemente restaurar la copia de seguridad en la instancia local.

Pero, ¿cómo debería hacerlo para evitar riesgos como enviar correos electrónicos a los usuarios reales desde la instancia local? ¿También podría haber otros problemas de los que no soy consciente?

¿Existe alguna forma de anonimizar todos los datos de los usuarios en la copia de seguridad (eliminar al menos los correos electrónicos)? ¿O restaurar todo excepto los datos de los usuarios?

Ejecuta esto desde una consola de Rails para anonimizar a todos los usuarios, excepto al personal:

acting_user = User.find(-1)
User.all.each do |u|
  next if u.staff? 
  user = UserAnonymizer.new(u, acting_user).make_anonymous
end

¿No sería más sencillo desactivar todos los correos salientes? Esa es una configuración global del sitio.

Sí, probablemente sea más fácil configurar esta opción. Sin embargo, según mi entendimiento, la copia de seguridad sobrescribirá todas las configuraciones, por lo que existe la posibilidad de que se envíe algún correo electrónico entre la finalización de la restauración y la desactivación de los correos, a menos que la instancia de origen también tuviera los correos desactivados durante la copia de seguridad.


Por cierto, he llegado a la conclusión de que probablemente sería mejor utilizar simplemente un servidor y un dominio separados en lugar de una configuración de desarrollo local con Docker.

Según entiendo, la restauración de la copia de seguridad no afecta a app.yml, ¿verdad? Así que si no introduzco la configuración SMTP en app.yml en el servidor de prueba, ¿no tendrá ninguna posibilidad de enviar correos electrónicos?

Bajo muchas leyes, incluida la CCPA, se considera un procesamiento ilegal utilizar datos de producción no anonimizados en entornos de desarrollo y prueba. Las posibilidades de una violación de datos son mayores en sistemas que podrían contener errores, tengan bases de datos en una laptop o sean accesibles por personas no autorizadas.

No, porque Sidekiq se pausa durante una operación de restauración.

Sí, pero me refería a después de que se complete la restauración (entiendo que, tras esto, todos los procesos se reanudan inmediatamente) y antes de que cambiara esta configuración para desactivar los correos.

Lo siento, mi respuesta fue efectivamente incompleta. Cuando se restaura una copia de seguridad de Discourse, los correos electrónicos salientes se desactivan automáticamente como parte de la operación de restauración. Deben habilitarse explícitamente después de la restauración.

Aún debes desactivar manualmente la consulta POP si está configurada; de lo contrario, tu instancia de prueba podría comenzar a procesar correos entrantes en lugar de hacerlo la instancia real.

¡Gracias! :slight_smile: Creo que utilizo otro modo de sondeo, a través de Configure direct-delivery incoming email for self-hosted sites with Mail-Receiver

Otra configuración que probablemente debería desactivarse es permitir indexación en robots.txt.

También he añadido Restrict access to your Discourse site with HTTP Basic Authentication.

¿Reciben los administradores un mensaje que les recuerde habilitar los correos salientes?

Sí, la advertencia en la parte superior de la página.