¿Qué patrones o prácticas existen para proteger a los usuarios de los administradores del sitio que eliminan la información del usuario?

0

Aquí está mi situación: supongamos que ejecuta un servicio en línea que almacena información que los usuarios del servicio querrían mantener durante mucho tiempo. Esta información puede ser notas, archivos, etc., pero es información en la que el usuario debería poder confiar y estará allí cuando vuelva.

¿Qué patrones, métodos, técnicas, etc. existen que podrían implementarse en el sitio web / servicio para garantizar que incluso el administrador no pueda eliminar ninguno de estos datos (con intenciones maliciosas, no por accidente, lo que podría ser)? arreglado a través de copias de seguridad o utilizando rollback en una base de datos). Algo que tranquiliza a los usuarios de que el usuario que ejecuta el servicio ni siquiera podía eliminar sus datos, esencialmente protege al usuario de los ataques de disponibilidad de la administración.

Mi idea actual es que, dado que, para todos los propósitos, este administrador tiene privilegios de administrador para todo, no se puede hacer nada para evitar que la información se elimine del servicio. Una idea potencial que tenía era permitirle al usuario la opción de exportar los datos localmente para poder guardar copias de sus datos.

Intenté buscar algo como esto, pero creo que no mucha gente está pensando en esto desde el punto de vista del usuario.

    
pregunta d0nut 01.04.2016 - 23:17
fuente

1 respuesta

1

La solución principal es exactamente lo que mencionaste. Exportar o esencialmente una copia de seguridad. Si quieres conservar los datos debes hacerlo tú mismo. También es posible que tenga que tener varios métodos de copia de seguridad. Por ejemplo, una solución en la nube y una solución local para asegurar si uno está templado con el otro disponible.

Por supuesto, si los datos se alteran o se eliminan, necesitará una forma de importar los datos respaldados. Sin la importación, realmente no se puede restaurar el servicio, solo conservar lo que era.

Alternativamente, puede ejecutar su propia solución de almacenamiento / DB que solo permite que el servicio se conecte, pero solo debe limitarse a insertar y leer entradas. La mayoría de las bases de datos le permiten tener esquemas de acceso que solo permiten esto, pero evitan actualizaciones, eliminaciones, truncamientos, caídas, etc. Sin embargo, esto requiere que el usuario ejecute su propia base de datos. Así como ellos lo configuran correctamente. Lo que podría no ser ideal si busca un servicio fácil de usar para el usuario final. Esto puede complicarse aún más con firewalls, NAT, permisos, etc.

De lo contrario, si alguien controla el servicio y controla los datos, el usuario final no puede hacer absolutamente nada para evitar que los editen o eliminen datos.

    
respondido por el Bacon Brad 02.04.2016 - 00:24
fuente

Lea otras preguntas en las etiquetas