Un es un conjunto de privilegios que se asigna a un usuario o grupo de usuarios para permitir realizar determinadas tareas y gestionedeterminadas sesiones.
Los roles controlan a que secciones del panel del administrador puedan acceder los distintos tipos de usuarios.
· Puede usar los roles de sistema para signar subconjuntos de privilegios administrativos a otrosusuarios. De este modo podrá delegar tareas administrativas rutinarias a otros usuarios.
Por ejemplo:
Puede otorgar a un profesor acceso a las páginas de administración de usuarios.
· Solo un usuario con todos los privilegios de administrador puede asignar privilegios a los roles del sistema.
· Los múltiples roles del sistema conceden al usuario la suma de sus privilegios.
ACERCA DE LOS ROLES PREDETERMINADOS DEL SISTEMA
Cada rol de sistema tiene un grupo de privilegios predefinidos. Se pueden agregar o eliminar privilegios en todos estos roles exceptoen los de administrador del sistema e invitado.
Los Roles, que son simplemente un conjunto de privilegios que se pueden otorgar a un usuario o a otro Rol. De esa forma sesimplifica el trabajo del DBA en esta tarea.
Por default cuando creamos un usuario desde el Enterprise Manager se le asigna el permiso de connect, lo que permite al usuario conectarse al BD y crear sus propios objetos en su propio esquema. De otra manera, debemos asignarlos en forma manual.
Para crear un Rol y asignarlo a un usuario se hace de la siguiente manera: SQL> CREATE ROLE appl_dba;
Opcionalmente, se puede asignar una clave al Rol:
SQL> SET ROLE appl_dba IDENTIFIED BY app_pwd;
Para asignar este Rol a un usuario:
SQL> GRANT appl_dba TO jperez;
Otro uso común de los roles es asignarle privilegios a nivel de Objetos, por ejemplo, en una Tabla de Facturas en donde sólo queremos que se puedan hacer Querys e Inserts:
SQL> CREATE ROLE consulta;
SQL> GRANT SELECT,INSERT on analista.factura TO consulta;
Y finalmente asignamos ese rol con este “perfil” a distintos usuarios finales:
SQL> GRANT consulta TO ahernandez;
Nota: Existen algunos roles predefinidos, tales como:
CONNECT, CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE SYNONYM, CREATE SEQUENCE, CREATEDATABASE 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.
SELECT_CATALOG_ROLE: No tiene privilegios de sistema, pero tiene cerca de 1600 privilegios de objeto.
Para consultar los roles definidos y los privilegios otorgados a través de ellos, utilice las vistas:
SQL> select * from DBA_ROLES;
SQL> select * from DBA_ROLE_PRIVS order by GRANTEE;
Importancia al momento de crear una base de datos
Es importante que a la hora de crear una BD el DBA configure y asigne el espacio de disco que ocupara la BD para que así no haya complicaciones en caso de que la cantidad de información almacenada sea en volumen muy grande y llegara a faltar espacio en eldisco para ese volumen de información, así como la importancia de tener
bien administrada la BD ya que de no ser así pueden existir errores que causarían el
colapso de dicha BD.
Porque el administrador debe contemplar la configuración y administración del espacio El DBA debe de contemplar estos aspectos ya que de lo contrario no estaría bien el BD ya que no se tiene considerado el espacio de disco que se ocupara y en dado caso que se requiera más espacio no se podría tener más espacio ya que en un principio no se consideró ni la configuración ni la administración delespacio en disco, se tendría que volver a generar un BD con las especificaciones necesarios para empresa causando pérdidas dedinero y tiempo para dicha empresa