sql >> Base de Datos >  >> RDS >> Oracle

¿Por qué PL/SQL no respeta los privilegios otorgados por Roles?

Probablemente sea una combinación de pereza y SET ROLE comando.

No estoy de acuerdo con que no esté permitido debido a dependencias complejas. Oracle ya gestiona dependencias complejas. Y en 12c es posible otorgar un rol a un objeto.

Creo que la verdadera razón por la que los objetos no heredan los roles del usuario es por SET ROLE dominio. Es posible que a un usuario se le asigne un rol, pero que se active y desactive dentro de una sesión. Esa es una característica tonta y nunca la he visto usar. Pero, teóricamente, requeriría volver a compilar dentro de la misma sesión o transacción, lo que sería realmente confuso.