Está en la página 1de 27

Administracin de Oracle

Gestin de seguridad

Raquel Alcalde Rico


Marta Dacal Asn

Gestin de seguridad
1.
2.
3.
4.
5.

Introduccin
Usuarios
Privilegios
Roles
Perfiles

1.Introduccin
Administrador permite o deniega acceso a

BD.
Seguridad BD:
Seguridad del sistema: usuario-sistemaBD
Seguridad de los datos: usuario-objetos BD

2.Usuarios
Acceso: ejecutan aplicacin de BD

(SQL *Plus, Oracle Forms navegador web)


Al instalar BD:
SYS: propietario del diccionario de datos
SYSTEM: administracin BD (crear otros usuarios)

Prefijos vistas:
USER y ALL: accesibles para todos los usuarios
DBA: solo el administrador
Vistas con informacin de usuarios:
USER_USERS
ALL_USERS
4

Usuarios
1. Creacin:
CREATE 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];
Ejemplo:
CREATE USER PEPITO
IDENTIFIED BY PEPITO_PASSWORD
QUOTA 500K ON USERS;

Usuarios
2. Modificacin:
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];
Ejemplo:
ALTER USER PEPITO
IDENTIFIED BY PEPITO_NUEVA_PASSWORD;

Usuarios
3. Borrado:
DROP USER usuario [CASCADE];

Ejemplo:
DROP USER PEPITO;

3.Privilegios
Privilegios sobre los objetos
Privilegio

Tabla

ALTER

DELETE

Vista

Secuencia

Procedure

EXECUTE

INDEX

INSERT

REFERENCE
S

SELECT

UPDATE

Privilegios
Para dar privilegios sobre los objetos:
GRANT
{priv_objeto [,priv_objeto] ...
| ALL [PRIVILEGES]}
[(columna [,columna]...)]
ON [usuario.]objeto
TO
{usuario|rol|PUBLIC}
[, {usuario|rol|PUBLIC}...]
[WITH GRANT OPTION];
Ejemplos:

GRANT ALL ON PINTORES TO PEPITO;


GRANT UPDATE (N_PINTOR) ON PINTORES TO PUBLIC;
9

Privilegios
Para retirar privilegios sobre los objetos:
REVOKE {priv_objeto [,priv_objeto] ...
| ALL [PRIVILEGES]}
ON [usuario.]objeto
FROM
{usuario|rol|PUBLIC }
[, {usuario|rol|PUBLIC}]...;
Ejemplos:

REVOKE UPDATE ON PINTORES FROM PEPITO;

10

Privilegios
Privilegios sobre el sistema:
Sobre determinados objetos como TABLE, SESSION, TABLESPACES, USER...

USER
Privilegio del
sistema
CREATE USER

Operaciones autorizadas

ALTER USER

Modificar cualquier usuario. Este


privilegio autoriza al que lo recibe a
cambiar la contrasea de otro usuario, a
cambiar cuotas sobre cualquier espacio
de tablas, a establecer espacios de
tablas por omisin, etc

DROP USER

Eliminar usuarios.

Crear usuarios y cuotas sobre cualquier


espacio de tablas, establecer espacios
de tablas por omisin y temporales.

11

Privilegios
PRIVILEGE
Privilegio del
sistema
GRANT ANY
PRIVILEGE

Operaciones autorizadas

Privilegio del
sistema
CREATE SESSION

Operaciones autorizadas

ALTER SESSION

Manejar la orden ALTER SESSION.

RESTRICTED SESSION

Conectarnos a la BD cuando se ha
levantado con STARTUP RESTRICT.

Todos los privilegios de sistema.


SESSION

Conectarnos a la BD.

12

Privilegios
TABLE
Privilegio del
sistema
CREATE TABLE

Operaciones autorizadas

CREATE ANY TABLE

Crear una tabla en cualquier esquema.

ALTER ANY TABLE

Modificar una tabla en cualquier esquema.

DROP ANY TABLE

Borrar una tabla en cualquier esquema.

LOCK ANY TABLE

Bloquear una tabla en cualquier esquema.

SELECT ANY TABLE

Hacer SELECT en cualquier tabla.

INSERT ANY TABLE

Insertar filas en cualquier tabla.

UPDATE ANY TABLE

Modificar filas en cualquier tabla.

DELETE ANY TABLE

Borrar filas de cualquier tabla.

Crear tablas en nuestro esquema y generar


ndices sobre las tablas del esquema.

13

Privilegios
ROLE
Privilegio del sistema

Operaciones autorizadas

CREATE ROLE

Crear roles.

ALTER ANY ROLE

Modificar roles.

DROP ANY ROLE

Borrar cualquier rol.

GRANT ANY ROLE

Dar permisos para cualquier rol de la BD.


PROFILE

Privilegio del sistema

Operaciones autorizadas

CREATE PROFILE

Crear un perfil de usuario.

ALTER PROFILE

Modificar cualquier perfil.

DROP PROFILE

Borrar cualquier perfil.


14

INDEX

Privilegios

Privilegio del
sistema
CREATE ANY INDEX

Operaciones autorizadas

ALTER ANY INDEX

Modificar cualquier ndice de la BD.

DROP ANY INDEX

Borrar cualquier ndice de la BD.


SEQUENCE

Privilegio del
sistema
CREATE SEQUENCE

Operaciones autorizadas

ALTER ANY SEQUENCE

Modificar cualquier secuencia de la BD.

DROP ANY SEQUENCE

Borrar secuencias de cualquier esquema.

SELECT ANY SEQUENCE

Referenciar secuencias de cualquier


esquema.

Crear un ndice en cualquier esquema, en


cualquier tabla.

Crear secuencias en nuestro esquema.

15

Privilegios
TABLESPACES
Privilegio del sistema Operaciones autorizadas
CREATE TABLESPACE
Crear espacios de tablas.
ALTER TABLESPACE
Modificar tablespaces.
MANAGE TABLESPACES

Poner on-line u off-line a cualquier


tablespace.

DROP TABLESPACE

Eliminar tablespaces.

UNLIMITED TABLESPACE

Utilizar cualquier espacio de cualquier


tablespace.

16

Privilegios
PROCEDURE
Privilegio del sistema
CREATE ANY PROCEDURE

Operaciones autorizadas

CREATE PROCEDURE

Crear procedimientos almacenados, funciones


y paquetes en nuestro esquema.

ALTER ANY PROCEDURE

Modificar procedimientos almacenados,


funciones y paquetes en cualquier esquema.

DROP ANY PROCEDURE

Borrar procedimientos almacenados,


funciones y paquetes en cualquier esquema.

EXECUTE ANY PROCEDURE

Ejecutar procedimientos, funciones o


referencias a paquetes pblicos en cualquier
esquema.

Crear procedimientos almacenados, funciones


y paquetes en cualquier esquema.

17

Privilegios
SYNONYM
Privilegio del sistema

Operaciones autorizadas

CREATE SYNONYM

Crear sinnimos en nuestro esquema.

CREATE PUBLIC SYNONYM

Crear sinnimos pblicos.

DROP PUBLIC SYNONYM

Borrar sinnimos pblicos.

CREATE ANY SYNONYM

Crear sinnimos en cualquier esquema.

DROP ANY SYNONYM

Borrar sinnimos de cualquier esquema.

18

Privilegios
TYPE
Privilegio del
sistema
CREATE TYPE

Operaciones autorizada

CREATE ANY TYPE

Crear tipos de objeto y cuerpos de tipos de objeto


en cualquier esquema.

ALTER ANY TYPE

Modificar tipos de objeto en cualquier esquema.

DROP ANY TYPE

Eliminar tipos de objeto y cuerpos de tipos de


objeto en cualquier esquema.

EXECUTE ANY TYPE

Utilizar y hacer referencia a tipos de objeto y tipos


de coleccin en cualquier esquema.

UNDER ANY TYPE

Crear subtipos a partir de cualquier tipo de objeto


no final.

Crear tipos de objeto y cuerpos de tipos de objeto


en el propio esquema.

19

Privilegios
VIEW
Privilegio del sistema Operaciones autorizadas
CREATE VIEW

Crear vistas en el esquema propio.

CREATE ANY VIEW

Crear vistas en cualquier esquema.

DROP ANY VIEW

Borrar vistas en cualquier esquema.

OTROS
Privilegio del
sistema
SYSDBA

Operaciones autorizadas

SYSOPER

Ejecutar operaciones STARTUP y SHUTDOWN, ALTER


DATABASE, ARCHIVELOG y RECOVERY, CREATE
SPFILE.

Ejecutar operaciones STARTUP y SHUTDOWN, ALTER


DATABASE, CREATE DATABASE, ARCHIVELOG y
RECOVERY, CREATE SPFILE.

20

Privilegios
Para asignar privilegios del sistema:
GRANT
{privilegio|rol} [,{privilegio|
rol},....]
TO
{usuario|rol|PUBLIC}
[, {usuario|rol|PUBLIC} ...]....
[WITH ADMIN OPTION];
Ejemplos:

GRANT CREATE SESSION TO PEPITO;


GRANT SELECT ANY TABLE TO PUBLIC;

21

Privilegios
Para retirar privilegios del sistema:
REVOKE
[,
FROM
[,

{privilegio|rol}
{privilegio|rol},...]
{usuario|rol|PUBLIC}
{usuario|rol|PUBLIC} ...]...;

22

Privilegios
Vistas con informacin de los privilegios:
SESSION_PRIVS

23

4.Roles
Roles (funciones)

Privilegios

CONNECT

ALTER SESSION, CREATE DATABASE


LINK, CREATE SEQUENCE, CREATE
SESSION, CREATE SYNONYM, CREATE
TABLE y CREATE VIEW

RESOURCE

CREATE
CREATE
CREATE
CREATE

DBA

Todos los privilegios de sistema

CLUSTER, CREATE INDESTYPE,


OPERATOR, CREATE PROCEDURE,
TABLE, CREATE SEQUENCE,
TRIGGER y CREATE TYPE

24

Roles
Para crear un rol se requiere el privilegio del sistema

CREATE ROLE:
CREATE ROLE NombreRol;
Ejemplo:
CREATE ROLE ALUMNOS;

Dar privilegios a los roles:


Ejemplo:
GRANT SELECT, INSERT ON PINTORES TO ALUMNOS;
GRANT INSERT ON PINACOTECAS TO ALUMNOS;
GRANT CREATE SESSION TO ALUMNOS;

Para conceder un rol a un usuario:


Ejemplo:
GRANT ALUMNO TO PEPITO;
25

Roles
Supresin de privilegios en los roles
Ejemplo

REVOKE INSERT ON PINTORES FROM ALUMNO;

Supresin de roles a los usuarios


Ejemplo

REVOKE ALUMNO FROM PEPITO;

Supresin de un rol
DROP ROLE NombreRol;
Ejemplo
DROP ROLE ALUMNO;
26

Roles
Establecer un rol por defecto
ALTER USER Nombre_usuario
DEFAULT ROLE Nombre_rol;

Vistas con informacin sobre roles en el diccionario de datos


ROLE_SYS_PRIVS

27

También podría gustarte