No estoy de acuerdo con el supuesto de la pregunta —esto es seguridad— pero tampoco estoy de acuerdo con que la automatización va a salvar el día por sí sola. Comenzaré con el problema:
¡No deberías poder hacer nada accidentalmente en producción!
Eso incluye hacer cosas automatizadas accidentalmente.
Estás confundiendo la seguridad del sistema con conceptos como "quién tiene permitido hacer qué". Sus cuentas de desarrollo solo deberían poder escribir en sus copias, el servidor de control de versiones y la base de datos de desarrollo. Si pueden leer / escribir la producción, pueden ser pirateados y explotados para robar datos de clientes o (como ha demostrado) pueden ser mal manejados para perder datos de clientes.
Debe comenzar ordenando su flujo de trabajo.
Sus cuentas de desarrollador deberían poder escribir en sus propias copias, control de versiones y quizás pasar del control de versiones a un entorno de prueba.
Los usuarios de respaldo solo deben poder leer de producción y escribir en su almacén de respaldo (que debe estar adecuadamente protegido).
Hacer cualquier otra lectura / escritura en producción debe requerir una autenticación especial e inconveniente . No debería poder entrar u olvidar que ha iniciado sesión. El control de acceso físico es útil aquí. Tarjetas inteligentes, interruptores para "armar" la cuenta, acceso simultáneo con doble llave.
Acceder a la producción no debería ser algo que deba hacer todos los días. La mayor parte del trabajo debe realizarse en su plataforma de prueba y en implementaciones fuera de horario realizadas en producción después de un cuidadoso escrutinio. Un pequeño inconveniente no te matará.
La automatización es parte de la solución.
No estoy ciego al hecho de que el cambio completo (carga en VCS, verificación de cobertura, extracción para probar el servidor, ejecución de pruebas automatizadas, autenticación, creación de una copia de seguridad, extracción desde VCS) es un proceso largo.
Ahí es donde la automatización puede ayudar, según la respuesta de Ben. Hay muchos lenguajes de script diferentes que hacen que ejecutar ciertas tareas sea mucho, mucho más fácil. Solo asegúrate de no hacer que sea demasiado fácil hacer cosas estúpidas. Sus pasos de reautenticación aún deben ser pronunciados (y si son peligrosos) deben ser inconvenientes y difíciles de hacer sin pensar.
Pero solo , la automatización es peor que inútil. Simplemente te ayudará a cometer errores más grandes con menos pensamiento.
Apto para equipos de todos los tamaños.
Me di cuenta de que señalabas el tamaño de tu equipo. Soy un chico y me puse a prueba porque solo se necesita una persona para tener un accidente. Hay una sobrecarga pero vale la pena. Usted termina con un entorno de desarrollo y producción mucho más seguro y mucho más seguro.