Det är förmodligen en kombination av lättja och SET ROLE
kommando.
Jag håller inte med om att det inte är tillåtet på grund av komplexa beroenden. Oracle hanterar redan komplexa beroenden. Och i 12c är det möjligt att ge en roll till ett objekt.
Jag tror att den verkliga anledningen till att objekt inte ärver användarens roller är på grund av SET ROLE
kommando. Det är möjligt för en användare att tilldelas en roll men att slå på och av den inom en session. Det är en dum funktion och jag har aldrig sett den användas. Men teoretiskt sett skulle det kräva omkompilering inom samma session eller transaktion, vilket skulle vara riktigt förvirrande.