sql >> Database teknologi >  >> RDS >> Oracle

Hvorfor respekterer PL/SQL ikke privilegier givet af roller?

Det er sandsynligvis en kombination af dovenskab og SET ROLE kommando.

Jeg er uenig i, at det ikke er tilladt på grund af komplekse afhængigheder. Oracle håndterer allerede komplekse afhængigheder. Og i 12c er det muligt at tildele en rolle til et objekt.

Jeg tror, ​​at den egentlige grund til, at objekter ikke arver brugerens roller, er på grund af SET ROLE kommando. Det er muligt for en bruger at blive tildelt en rolle, men at slå den til og fra inden for en session. Det er en fjollet funktion, og jeg har aldrig set den brugt. Men teoretisk set ville det kræve genkompilering inden for samme session eller transaktion, hvilket ville være virkelig forvirrende.



  1. Tilslutning af Snowflake DB &IRI Workbench

  2. Automatisk generering af svarfil

  3. Sådan genereres create table sql-sætningen for en eksisterende tabel i postgreSQL

  4. SQL Server Transaction Log — Del 2