Diferència entre revisions de la pàgina «M2 - Bases de dades / Continguts UF3: Privilegis i usuaris»

De wikiserver
Dreceres ràpides: navegació, cerca
(Rols)
 
(Hi ha 24 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
==Crear Usuarios y asignar privilegios==
+
==Crear Usuaris i assignar privilegis==
  
El siguiente es un resumen de algunas consideraciones al momento de crear un usuario o cuenta en Oracle, y los privilegios y roles que le podemos asignar.
+
A tenir en compte a l'hora de crear usuaris i els privilegis i rols a assignar:
  
:*El nombre de usuario no debe superar 30 caracteres, no debe tener caracteres especiales y debe iniciar con una letra.
+
:*El nom d'usuari no ha de superar 30 caràcters, no ha de tenir caràcters especials i ha d'iniciar amb una lletra.
  
:*Un método de autentificación. El mas común es una clave o password, pero Oracle 10g soporta otros métodos (como biometric, certificado y autentificación por medio de token).
+
:*'''Un mètode d'autenticació'''. El mes comú és una clau o '''password''', però Oracle 10g suporta altres mètodes (com biomètric, certificat i autenticació per mitjà de token).
  
:*Un Tablespace default, el cual es donde el usuario va a poder crear sus objetos por defecto, sin embargo, esto no significa que pueda crear objetos, o que tenga una cuota de espacio. Estos permisos se asignan de forma separada, salvo si utiliza el privilegio RESOURCE el que asigna una quota unlimited, incluso en el Tablespace SYSTEM! Sin embargo si esto ocurre, ud. puede posteriormente mover los objetos creados en el SYSTEM a otro Tablespace.
+
:*'''Un Tablespace default''', el qual és on l'usuari va a poder crear els seus objectes per defecte, no obstant això, això no significa que pugui crear objectes, o que tingui una quota d'espai. Aquests permisos s'assignen de forma separada, excepte si utilitza el privilegi RESOURCE el que assigna una quota unlimited, fins i tot en el Tablespace SYSTEM! No obstant això si això ocorre, un. pot posteriorment moure els objectes creats en el SYSTEM a un altre Tablespace.
  
:*Un Tablespace temporal, donde el usuario crea sus objetos temporales y hace los sort u ordenamientos.
+
:*'''Un Tablespace temporal''', on l'usuari crea els seus objectes temporals i fa els sort o ordenaments.
  
:*Un perfil o profile de usuario, que son las restricciones que puede tener su cuenta (opcional).
+
:*'''Un perfil o profile d'usuari''', que són les restriccions que pot tenir el seu compte (opcional).
 
 
Por ejemplo, conectado como el usuario SYS, creamos un usuario y su clave asi:
 
  
 +
Per exemple, connectat com l'usuari SYS, pots crear un usuari i la seva clau així: 
 +
<pre>
 
SQL> CREATE USER ahernandez IDENTIFIED BY ahz
 
SQL> CREATE USER ahernandez IDENTIFIED BY ahz
 
DEFAULT TABLESPACE users;
 
DEFAULT TABLESPACE users;
 
+
</pre>
Si no se indica un Tablespace por defecto, el usuario toma el que está definido en la BD (generalmente el SYSTEM). Para modificar el Tablespace default de un usuario se hace de la siguiente manera:
+
Si no s'indica un Tablespace per defecte, l'usuari pren el que està definit en la BD (generalment el SYSTEM). Per modificar el Tablespace default d'un usuari es fa de la següent manera:
 
+
<pre>
 
SQL> ALTER USER jperez DEFAULT TABLESPACE datos;
 
SQL> ALTER USER jperez DEFAULT TABLESPACE datos;
 
+
</pre>
También podemos asignar a los usuarios un Tablespace temporal donde se almacenan operaciones de ordenamiento. Estas incluyen las cláusulas ORDER BY, GROUP BY, SELECT DISTINCT, MERGE JOIN, o CREATE INDEX (también es utilizado cuando se crean Tablas temporales).
+
També podem assignar als usuaris un Tablespace temporal on s'emmagatzemen operacions d'ordenament. Aquestes inclouen les clàusules ORDER BY, GROUP BY, SELECT DISTINCT, MERGE JOIN, o CREATE INDEX (també és utilitzat quan es creen Taules temporals).
 
+
<pre>
 
SQL> CREATE USER jperez IDENTIFIED BY jpz
 
SQL> CREATE USER jperez IDENTIFIED BY jpz
 
DEFAULT TABLESPACE users
 
DEFAULT TABLESPACE users
 
TEMPORARY TABLESPACE temp;
 
TEMPORARY TABLESPACE temp;
 +
</pre>
 +
Addicionalment, a cada usuari '''es pot assignar a un profile o perfil''', que té dos propòsits principalment:
  
Adicionalmente, a cada usuario se puede asignar a un profile o perfil, que tiene dos propósitos principalmente:
+
:*'''Limita l'ús de recursos''', la qual cosa és recomanable, per exemple en ambients de Desenvolupament.
 
 
:*Limita el uso de recursos, lo que es recomendable, por ejemplo en ambientes de Desarrollo.
 
  
:*Garantiza y refuerza reglas de Seguridad a nivel de cuentas.
+
:*'''Garanteix i reforça regles de Seguretat a nivell de comptes'''.
  
  
Ejemplos, cuando se crea el usuario o asignar un perfil existente:
+
Exemples, quan es crea l'usuari o assignar un perfil existent:
 
+
<pre>
 
SQL> CREATE USER jperez IDENTIFIED BY jpz
 
SQL> CREATE USER jperez IDENTIFIED BY jpz
 
DEFAULT TABLESPACE users
 
DEFAULT TABLESPACE users
Línia 44: Línia 44:
 
SQL> ALTER USER jperez
 
SQL> ALTER USER jperez
 
PROFILE perfil_desa;
 
PROFILE perfil_desa;
 +
</pre>
  
==Modificar cuentas de Usuarios==
+
==Modificar comptes d'Usuari==
 
 
Para modificar un usuario creado, por ejemplo cambiar su clave, tenemos la sintáxis:
 
  
 +
Per modificar un usuari creat, per exemple canviar la seva clau, tenim la sintaxis:
 +
<pre>
 
SQL> ALTER USER NOMBRE_USUARIO
 
SQL> ALTER USER NOMBRE_USUARIO
 
IDENTIFIED BY CLAVE_ACCESO
 
IDENTIFIED BY CLAVE_ACCESO
Línia 55: Línia 56:
 
[QUOTA {ENTERO {K | M } | UNLIMITED } ON ESPACIO_TABLA
 
[QUOTA {ENTERO {K | M } | UNLIMITED } ON ESPACIO_TABLA
 
[PROFILE PERFIL];
 
[PROFILE PERFIL];
 +
</pre>
  
==Privilegios de Sistema y de Objetos==
+
==Privilegis de Sistema i d'Objectes==
  
En Oracle existen dos tipos de privilegios de usuario.
+
En Oracle existeixen dos tipus de privilegis d'usuari.
  
:*'''System.''' Que permite al usuario hacer ciertas tareas sobre la BD, como por ejemplo crear un Tablespace. Estos permisos son otorgados por el administrador o por alguien que haya recibido el permiso para administrar ese tipo de privilegio. Existen como 100 tipos distintos de privilegios de este tipo.
+
:*'''System:'''  
 +
::- permet a l'usuari fer certes tasques sobre la BD, com per exemple crear un Tablespace.  
 +
::- atorgats per l'administrador o per algú que hagi rebut el permís per administrar aquest tipus de privilegi.  
  
En general los permisos de sistema, permiten ejecutar comandos del tipo DDL (Data definition Language), como CREATE, ALTER y DROP o del tipo DML (Data Manipulation Language). Oracle 10g tiene mas de 170 privilegios de sistema los cuales pueden ser vistos consultando la vista: SYSTEM_PRIVILEGE_MAP
+
Exemples:
  
Entre todos los privilegios de sistema que existen, hay dos que son los importantes: SYSDBA y SYSOPER. Estos son dados a otros usuarios que serán administradores de base de datos.
+
::- create session: per connectar-se a la base de dades
 +
::- create table: per poder crear taules
 +
::- create sequence: per poder crear seqüències
 +
::- create view: per poder crear vistes
 +
::- create trigger: per poder crear disparadors dins del propi esquema
 +
::- create procedure: crear poder crear procediments i funcions
 +
::- execute any procedure: permet executar qualsevol procediment en qualsevol esquema
 +
::- create user: permet crear usuaris i especificar claus
 +
::- create role: permet crear rols
 +
::- drop user: permet eliminar usuaris
  
Para otorgar varios permisos a la vez, se hace de la siguiente manera:
+
:*Oracle 11g té '''208 privilegis de sistema''' els quals poden ser vists consultant la vista: SYSTEM_PRIVILEGE_MAP
  
 +
:*Els privilegis de sistema: '''SYSDBA''' i '''SYSOPER'''. permeten que altres usuaris tinguin privilegis d'administradors de base de dades.
 +
 +
:*Atorgar diversos privilegis alhora:
 +
<pre>
 
SQL> GRANT CREATE USER, ALTER USER, DROP USER TO ahernandez;
 
SQL> GRANT CREATE USER, ALTER USER, DROP USER TO ahernandez;
 +
</pre>
  
:*'''Object.''' Este tipo de permiso le permite al usuario realizar ciertas acciones en objetos de la BD, como una Tabla, Vista, un Procedure o Función, etc. Si a un usuario no se le dan estos permisos sólo puede acceder a sus propios objetos (véase USER_OBJECTS). Este tipo de permisos los da el owner o dueño del objeto, el administrador o alguien que haya recibido este permiso explícitamente (con Grant Option).
+
:*'''Object:'''
 +
::- permet a l'usuari realitzar certes accions en objectes de la BD, com una Taula, Vista, un Procedure o Funció, etc.  
 +
::- per defecte un usuari només pot accedir als seus propis objectes ('''USER_OBJECTS''').  
 +
::- atorgats pel propietari de l'objecte, l'administrador o algú que hagi rebut aquest privilegi explícitament (amb '''GRANT OPTION''').
  
Por ejemplo, para otorgar permisos a una tabla Ventas para un usuario particular:
+
Per exemple, per atorgar permisos a una taula Vendes per a un usuari particular:
  
SQL> GRANT SELECT,INSERT,UPDATE, ON analista.venta TO jperez;
+
<pre>
 +
SQL> GRANT SELECT,INSERT,UPDATE ON analista.venta TO jperez;
 +
</pre>
  
Adicionalmente, podemos restringir los DML a una columna de la tabla mencionada. Si quisieramos que este usuario pueda dar permisos sobre la tabla Factura a otros usuarios, utilizamos la cláusula WITH GRANT OPTION. Ejemplo:
+
Addicionalment:
 +
::- podem restringir els DML a una columna de la taula.
 +
::- podem donar el priveligi de poder donar el privilegi (amb '''WITH GRANT OPTION''').  
  
 +
Exemple:
 +
<pre>
 
SQL> GRANT SELECT,INSERT,UPDATE,DELETE ON venta TO mgarcia WITH GRANT OPTION;
 
SQL> GRANT SELECT,INSERT,UPDATE,DELETE ON venta TO mgarcia WITH GRANT OPTION;
 +
</pre>
  
==Asignar cuotas a Usuarios==
+
==Assignar quotes a Usuaris==
 
 
Por defecto ningun usuario tiene cuota en los Tablespaces y se tienen tres opciones para poder proveer a un usuario de una quota:
 
 
 
:*Sin limite, que permite al usuario usar todo el espacio disponible de un Tablespace.
 
  
:* Por medio de un valor, que puede ser en kilobytes o megabytes que el usuario puede usar. Este valor puede ser mayor o nenor que el tamaño del Tablespace asignado a él.
+
Per defecte cap usuari té assignada quota en els Tablespaces i es tenen tres opcions per poder proveir a un usuari d'una quota:
  
:* Por medio del privilegio UNLIMITED TABLESPACE, se tiene prioridad sobre cualquier cuota dada en un Tablespace por lo que tienen disponibilidad de todo el espacio incluyendo en SYSTEM y SYSAUX.
+
:* Sense límit, que permet a l'usuari usar tot l'espai disponible d'un Tablespace.
  
No se recomienda dar cuotas a los usuarios en los Tablespaces SYSTEM y SYSAUX, pues tipicamente sólo los usuarios SYS y SYSTEM pueden crear objetos en éstos. Tampoco dar cuotas en los Tablespaces Temporal o del tipo Undo.
+
:* Per mitjà d'un valor, que pot ser en kilobytes o megabytes que l'usuari pot usar. Aquest valor pot ser major o menor que la grandària del Tablespace assignat a ell.
  
5. Roles
+
:* Per mitjà del privilegi UNLIMITED TABLESPACE, es té prioritat sobre qualsevol quota donada en un Tablespace pel que tenen disponibilitat de tot l'espai incloent en SYSTEM i SYSAUX.
  
Finalmente los Roles, que son simplemente un conjunto de privilegios que se pueden otorgar a un usuario o a otro Rol. De esa forma se simplifica el trabajo del DBA en esta tarea.
+
No es recomana donar quotes als usuaris en els Tablespaces SYSTEM i SYSAUX, doncs normalment només els usuaris SYS i SYSTEM poden crear objectes en aquests. Tampoc donar quotes en els Tablespaces Temporal o del tipus Undo.
  
Por default cuando creamos un usuario desde el Enterprise Manager se le asigna el permiso de connect, lo que permite al usuario conectarse a la BD y crear sus propios objetos en su propio esquema. De otra manera, debemos asignarlos en forma manual.
+
==Rols==
  
Para crear un Rol y asignarlo a un usuario se hace de la siguiente manera:
+
:* Conjunt de privilegis que es poden atorgar a un usuari o a un altre Rol.
 +
:* Simplifiquen el treball dels DBA en l'assignació de privilegis.
 +
:* Per defecte, quan es crea un usuari se li assigna el '''rol CONNECT''', que permet que l'usuari pugui connectar-se a la BD i crear els seus propis objectes en el seu propi esquema. D'una altra manera, hem d'assignar-los en forma manual.
  
SQL> CREATE ROLE appl_dba;
+
Exemple:
 
 
Opcionalmente, se puede asignar una clave al Rol:
 
  
 +
Creació del rol:
 +
<pre>
 +
SQL> CREATE ROLE appl_dba; 
 +
</pre>
 +
Opcionalment, es pot assignar una clau al Rol:
 +
<pre>
 
SQL> SET ROLE appl_dba IDENTIFIED BY app_pwd;
 
SQL> SET ROLE appl_dba IDENTIFIED BY app_pwd;
 
+
</pre>
Para asignar este Rol a un usuario:
+
Per assignar aquest Rol a un usuari:
 
+
<pre>
 
SQL> GRANT appl_dba TO jperez;
 
SQL> GRANT appl_dba TO jperez;
 
+
</pre>
Otro uso común de los roles es asignarles privilegios a nivel de Objetos, por ejemplo en una Tabla de Facturas en donde sólo queremos que se puedan hacer Querys e Inserts:
+
També es poden assignar als rols privilegis sobre Objectes, per exemple en una Taula de Factures on només volem que es puguin fer Consultes i insercions:
 
+
<pre>
 
SQL> CREATE ROLE consulta;
 
SQL> CREATE ROLE consulta;
  
 
SQL> GRANT SELECT,INSERT on analista.factura TO consulta;
 
SQL> GRANT SELECT,INSERT on analista.factura TO consulta;
 
+
</pre>
Y finalmente asignamos ese rol con este “perfil” a distintos usuarios finales:
+
I finalment assignem aquest rol amb aquest "perfil" a diferents usuaris finals:
 
+
<pre>
 
SQL> GRANT consulta TO ahernandez;
 
SQL> GRANT consulta TO ahernandez;
 +
</pre>
 +
'''Nota:''' Existeixen alguns rols predefinits, tals com:
  
Nota: Existen algunos roles predefinidos, tales como:
+
CONNECT, RESOURCE, DBA, SELECT_CATALOG_ROLE, EXECUTE_CATALOG_ROLE, EXP_FULL_DATABASE, IMP_FULL_DATABASE, etc.
CONNECT, CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE SYNONYM, CREATE SEQUENCE, CREATE DATABASE LINK, CREATE CLUSTER,
 
ALTER SESSION, RESOURCE, CREATE PROCEDURE, CREATE SEQUENCE, CREATE TRIGGER, CREATE TYPE, CREATE CLUSTER, CREATE INDEXTYPE, CREATE OPERATOR SCHEDULER, CREATE ANY JOB, CREATE JOB, EXECUTE ANY CLASS, EXECUTE ANY PROGRAM,
 
MANAGE SCHEDULER, etc.
 
  
DBA: Tiene la mayoría de los privilegios, no es recomendable asignarlo a usuarios que no son administradores.
+
:*'''DBA:''' Té la majoria dels privilegis, no és recomanable assignar-ho a usuaris que no són administradors.
  
SELECT_CATALOG_ROLE: No tiene privilegios de sistema, pero tiene cerca de 1600 privilegios de objeto.
+
:*'''SELECT_CATALOG_ROLE:''' No té privilegis de sistema, però té prop de 1600 privilegis d'objecte.
  
Para consultar los roles definidos y los privilegios otorgados a través de ellos, utilize las vistas:
+
Per consultar els rols definits i els privilegis atorgats a través d'ells, utilitzi les vistes:
 +
<pre>
 +
SQL> select * from DBA_ROLES;
  
SQL> select * from DBA_ROLES;
 
 
SQL> select * from DBA_ROLE_PRIVS order by GRANTEE;
 
SQL> select * from DBA_ROLE_PRIVS order by GRANTEE;
 +
</pre>

Revisió de 21:35, 3 feb 2021

Crear Usuaris i assignar privilegis

A tenir en compte a l'hora de crear usuaris i els privilegis i rols a assignar:

  • El nom d'usuari no ha de superar 30 caràcters, no ha de tenir caràcters especials i ha d'iniciar amb una lletra.
  • Un mètode d'autenticació. El mes comú és una clau o password, però Oracle 10g suporta altres mètodes (com biomètric, certificat i autenticació per mitjà de token).
  • Un Tablespace default, el qual és on l'usuari va a poder crear els seus objectes per defecte, no obstant això, això no significa que pugui crear objectes, o que tingui una quota d'espai. Aquests permisos s'assignen de forma separada, excepte si utilitza el privilegi RESOURCE el que assigna una quota unlimited, fins i tot en el Tablespace SYSTEM! No obstant això si això ocorre, un. pot posteriorment moure els objectes creats en el SYSTEM a un altre Tablespace.
  • Un Tablespace temporal, on l'usuari crea els seus objectes temporals i fa els sort o ordenaments.
  • Un perfil o profile d'usuari, que són les restriccions que pot tenir el seu compte (opcional).

Per exemple, connectat com l'usuari SYS, pots crear un usuari i la seva clau així:

SQL> CREATE USER ahernandez IDENTIFIED BY ahz
DEFAULT TABLESPACE users;

Si no s'indica un Tablespace per defecte, l'usuari pren el que està definit en la BD (generalment el SYSTEM). Per modificar el Tablespace default d'un usuari es fa de la següent manera:

SQL> ALTER USER jperez DEFAULT TABLESPACE datos;

També podem assignar als usuaris un Tablespace temporal on s'emmagatzemen operacions d'ordenament. Aquestes inclouen les clàusules ORDER BY, GROUP BY, SELECT DISTINCT, MERGE JOIN, o CREATE INDEX (també és utilitzat quan es creen Taules temporals).

SQL> CREATE USER jperez IDENTIFIED BY jpz
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp;

Addicionalment, a cada usuari es pot assignar a un profile o perfil, que té dos propòsits principalment:

  • Limita l'ús de recursos, la qual cosa és recomanable, per exemple en ambients de Desenvolupament.
  • Garanteix i reforça regles de Seguretat a nivell de comptes.


Exemples, quan es crea l'usuari o assignar un perfil existent:

SQL> CREATE USER jperez IDENTIFIED BY jpz
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp
PROFILE resource_profile;

SQL> ALTER USER jperez
PROFILE perfil_desa;

Modificar comptes d'Usuari

Per modificar un usuari creat, per exemple canviar la seva clau, tenim la sintaxis:

SQL> ALTER USER NOMBRE_USUARIO
IDENTIFIED BY CLAVE_ACCESO
[DEFAULT TABLESPACE ESPACIO_TABLA]
[TEMPORARY TABLESPACE ESPACIO_TABLA]
[QUOTA {ENTERO {K | M } | UNLIMITED } ON ESPACIO_TABLA
[PROFILE PERFIL];

Privilegis de Sistema i d'Objectes

En Oracle existeixen dos tipus de privilegis d'usuari.

  • System:
- permet a l'usuari fer certes tasques sobre la BD, com per exemple crear un Tablespace.
- atorgats per l'administrador o per algú que hagi rebut el permís per administrar aquest tipus de privilegi.

Exemples:

- create session: per connectar-se a la base de dades
- create table: per poder crear taules
- create sequence: per poder crear seqüències
- create view: per poder crear vistes
- create trigger: per poder crear disparadors dins del propi esquema
- create procedure: crear poder crear procediments i funcions
- execute any procedure: permet executar qualsevol procediment en qualsevol esquema
- create user: permet crear usuaris i especificar claus
- create role: permet crear rols
- drop user: permet eliminar usuaris
  • Oracle 11g té 208 privilegis de sistema els quals poden ser vists consultant la vista: SYSTEM_PRIVILEGE_MAP
  • Els privilegis de sistema: SYSDBA i SYSOPER. permeten que altres usuaris tinguin privilegis d'administradors de base de dades.
  • Atorgar diversos privilegis alhora:
SQL> GRANT CREATE USER, ALTER USER, DROP USER TO ahernandez;
  • Object:
- permet a l'usuari realitzar certes accions en objectes de la BD, com una Taula, Vista, un Procedure o Funció, etc.
- per defecte un usuari només pot accedir als seus propis objectes (USER_OBJECTS).
- atorgats pel propietari de l'objecte, l'administrador o algú que hagi rebut aquest privilegi explícitament (amb GRANT OPTION).

Per exemple, per atorgar permisos a una taula Vendes per a un usuari particular:

SQL> GRANT SELECT,INSERT,UPDATE ON analista.venta TO jperez;

Addicionalment:

- podem restringir els DML a una columna de la taula.
- podem donar el priveligi de poder donar el privilegi (amb WITH GRANT OPTION).

Exemple:

SQL> GRANT SELECT,INSERT,UPDATE,DELETE ON venta TO mgarcia WITH GRANT OPTION;

Assignar quotes a Usuaris

Per defecte cap usuari té assignada quota en els Tablespaces i es tenen tres opcions per poder proveir a un usuari d'una quota:

  • Sense límit, que permet a l'usuari usar tot l'espai disponible d'un Tablespace.
  • Per mitjà d'un valor, que pot ser en kilobytes o megabytes que l'usuari pot usar. Aquest valor pot ser major o menor que la grandària del Tablespace assignat a ell.
  • Per mitjà del privilegi UNLIMITED TABLESPACE, es té prioritat sobre qualsevol quota donada en un Tablespace pel que tenen disponibilitat de tot l'espai incloent en SYSTEM i SYSAUX.

No es recomana donar quotes als usuaris en els Tablespaces SYSTEM i SYSAUX, doncs normalment només els usuaris SYS i SYSTEM poden crear objectes en aquests. Tampoc donar quotes en els Tablespaces Temporal o del tipus Undo.

Rols

  • Conjunt de privilegis que es poden atorgar a un usuari o a un altre Rol.
  • Simplifiquen el treball dels DBA en l'assignació de privilegis.
  • Per defecte, quan es crea un usuari se li assigna el rol CONNECT, que permet que l'usuari pugui connectar-se a la BD i crear els seus propis objectes en el seu propi esquema. D'una altra manera, hem d'assignar-los en forma manual.

Exemple:

Creació del rol:

SQL> CREATE ROLE appl_dba;   

Opcionalment, es pot assignar una clau al Rol:

SQL> SET ROLE appl_dba IDENTIFIED BY app_pwd;

Per assignar aquest Rol a un usuari:

SQL> GRANT appl_dba TO jperez;

També es poden assignar als rols privilegis sobre Objectes, per exemple en una Taula de Factures on només volem que es puguin fer Consultes i insercions:

SQL> CREATE ROLE consulta;

SQL> GRANT SELECT,INSERT on analista.factura TO consulta;

I finalment assignem aquest rol amb aquest "perfil" a diferents usuaris finals:

SQL> GRANT consulta TO ahernandez;

Nota: Existeixen alguns rols predefinits, tals com:

CONNECT, RESOURCE, DBA, SELECT_CATALOG_ROLE, EXECUTE_CATALOG_ROLE, EXP_FULL_DATABASE, IMP_FULL_DATABASE, etc.

  • DBA: Té la majoria dels privilegis, no és recomanable assignar-ho a usuaris que no són administradors.
  • SELECT_CATALOG_ROLE: No té privilegis de sistema, però té prop de 1600 privilegis d'objecte.

Per consultar els rols definits i els privilegis atorgats a través d'ells, utilitzi les vistes:

SQL> select * from DBA_ROLES;

SQL> select * from DBA_ROLE_PRIVS order by GRANTEE;