Duda respecto a quien es el Grantor

Hola compañeros tengo una duda 

Resulta que como ejemplo yo conectado con SYSTEM creo una tabla de prueba llamada AUDITORIA _SOX  y le concedo el permiso de SELECT al esquema HR

 

Ahora me conecto con HR  (como anteriormente le habia dado el rol de DBA puedo otorgar permisos)  le otorgo el permiso permiso de SELECT al usuario BATMAN

 

aqui la duda es porque en GRANTOR no aparece que se lo dio HR si es con el usuario que yo se lo otorgue ??

 

Buen dia ellidr

El detalle esta en como se asignaron los permisos, intenta hacer la prueba de dar el grant con grant select on system.auditoria_sox to HR WITH GRANT OPTION al hacer esto le das a HR la opcion de otorgar privilegios sobre el objeto, si no le pusiste esta sentencia al hacer el revoke sobre HR los permisos los borra en cascada ya que el que otorgo los permisos fue SYSTEM y no HR, el rol DBA te permite manipular los objetos pero al no ser el propietario el que manda es el permisos sobre cada objeto. es algo revuelto pero espero no confundirte.

 

GRANTEE    OWNER      TABLE_NAME            GRANTOR    PRIVILEGE  GRANTABLE HIERARCHY
----------          ----------         ----------                        ----------            ---------- -            -------- ---------
HR               SYSTEM     AUDITORIA_SOX        SYSTEM     SELECT     YES       NO                                             
BATMAN      SYSTEM     AUDITORIA_SOX        HR              SELECT      NO        NO