sql >> Database >  >> RDS >> Oracle

Omzeil tabelprivilege en WITH GRANT OPTION door views te maken

Wat je beschrijft werkt niet. Als gebruiker A:

create table t (id number);

Table T created.

grant select on t to b;

Grant succeeded.

Als gebruiker B:

create view v as select * from a.t;

View V created.

grant select on v to c;

SQL Error: ORA-01720: grant option does not exist for 'A.T'
01720. 00000 -  "grant option does not exist for '%s.%s'"
*Cause:    A grant was being performed on a view or a view was being replaced
           and the grant option was not present for an underlying object.
*Action:   Obtain the grant option on all underlying objects of the view or
           revoke existing grants on the view.

Dit wordt vermeld in de documentatie :

Zelfs de grant any object privilege privilege omzeilt dit niet; hoewel er een (krachtig) privilege moet zijn dat doet wat een volledige DBA kan do grant select on b.v to c .




  1. MySql automatisch verhogende alfanumerieke primaire sleutel?

  2. Update-instructie met behulp van met clausule

  3. Ruby on Rails:moet voorkomen in de GROUP BY-clausule of worden gebruikt in een aggregatiefunctie

  4. N+1 redundantie en serverconsolidatie