... y cómo deben otorgarse esos permisos. Trabajo en un gran departamento de TI con más de 70 aplicaciones, algunas en SQL Server y la mayoría en Oracle. Cada sistema tiene una instancia prod, QA y Dev. Nosotros (soy desarrollador) tenemos acceso de solo lectura a prod/qa, con lo cual estoy de acuerdo. En los desarrolladores de instancias de SQL Server, los desarrolladores reciben db_owner, que funciona totalmente bien. El debate es sobre qué permisos debería tener en las bases de datos de DEV Oracle.Qué permisos deben tener los Desarrolladores en la instancia de la base de datos Dev.
Reconozco que lo mejor sería que cada desarrollador ejecutara su propia instancia en su estación de trabajo para el desarrollo, pero debido al tamaño de las bases de datos esto no se ha considerado una opción.
También estoy interesado en CÓMO se deben aplicar estos permisos. En oráculo, los permisos otorgados a través de un rol no están activos durante la ejecución de PL/SQL, por lo que los roles (incluso el rol "dba") no son útiles. Eso deja el uso de una cuenta integrada (sistema) o la creación de docenas de usuarios en docenas de bases de datos y otorgando directamente docenas de permisos a cada uno. En mi mente, simplemente dejar que los desarrolladores inicien sesión como sistema tiene mucho sentido, pero nuestros DBA afirman que es una mala idea.
+1 para incluir el control de código fuente + proceso de compilación: gran parte del desacuerdo sobre quién controla el resultado de las deficiencias en esta área – dpbradley