¿Cómo puedo ocultar elementos propietarios de datos de prueba en pruebas que se ejecutan automáticamente?

2

Estoy escribiendo pruebas automatizadas para una aplicación web que se ejecutará periódicamente durante la noche, y tengo un problema de seguridad moderado.

Para poder completar las pruebas, espero incluir datos en vivo como información de prueba en lugar de confiar exclusivamente en datos simulados generados específicamente para estas pruebas (esto idealmente haría que las pruebas sean sustancialmente más sólidas). Sin embargo, esto es un desafío porque estas pruebas se almacenan en un servidor Git público (para mi empresa) y deben ser de acceso universal. Sin embargo, no todos los empleados tienen permisos para ver los datos en vivo que se utilizan en estas pruebas. Como resultado, estoy tratando de encontrar una manera de ocultar esta información en vivo de manera que pueda ser utilizada en tiempo de ejecución por la automatización (en este caso, RobotFramework con Selenium), pero un usuario no puede ver / acceder al Git que lo contiene. repositorio.

Esperaba cifrar los datos almacenados y solo descifrarlos en el tiempo de ejecución de la automatización de prueba. Sin embargo, esto requeriría proporcionar al conjunto de automatización de prueba credenciales para descifrar los datos cifrados, lo que anula el propósito del cifrado en primer lugar. Estas pruebas automáticas deberán ejecutarse automáticamente durante la noche, lo que impide que un usuario humano ingrese la contraseña para descifrar los datos.

Como resultado, me pregunto si lo que estoy tratando de hacer es conceptualmente posible y cómo podría hacerlo. Mi mejor pensamiento es tal vez encontrar una manera de proporcionar credenciales de descifrado al agente de trabajo que ejecuta las pruebas, pero esto es logísticamente complicado (y el propio agente de bob también debe ser de acceso público) y tengo curiosidad si hay otra manera.

No soy un experto en seguridad (aunque entiendo lo básico), por lo que cualquier sugerencia es bienvenida.

Gracias

    
pregunta UpQuark 29.09.2014 - 22:07
fuente

1 respuesta

2

Eso es un poco desafortunado.

Mientras que tanto su código como su marco de prueba sean públicos, no hay nada que pueda hacer que sus usuarios no autorizados no puedan. Necesitas bloquear algo.

Lo mejor que puedo imaginar es poner los datos en el servidor que ejecuta sus pruebas. Limite el acceso al servidor solo a personas autorizadas. De esa manera, incluso si la gente encuentra la información del servidor, no tendrán acceso para extraer los datos de ella.

    
respondido por el Thebluefish 29.09.2014 - 22:31
fuente

Lea otras preguntas en las etiquetas