sql >> Database >  >> RDS >> Oracle

Waarom respecteert PL/SQL de door Rollen verleende privileges niet?

Het is waarschijnlijk een combinatie van luiheid en de SET ROLE commando.

Ik ben het er niet mee eens dat het niet is toegestaan ​​vanwege complexe afhankelijkheden. Oracle beheert al complexe afhankelijkheden. En in 12c is het mogelijk om een ​​rol toe te kennen aan een object.

Ik denk dat de echte reden waarom objecten de rollen van de gebruiker niet erven, is vanwege de SET ROLE opdracht. Het is mogelijk dat een gebruiker een rol toegewezen krijgt, maar deze binnen een sessie in- en uitschakelt. Dat is een domme functie en ik heb het nog nooit gebruikt. Maar theoretisch zou het opnieuw moeten worden gecompileerd binnen dezelfde sessie of transactie, wat erg verwarrend zou zijn.



  1. Alle niet-vertrouwde beperkingen voor externe sleutels in SQL Server retourneren (T-SQL-voorbeeld)

  2. Overzicht van gegevenscompressie in SQL Server

  3. TSQL Pivot zonder aggregatiefunctie

  4. SQLite Unie