> Manuales > Tutorial de Oracle

Conceptos básicos para la gestión de seguridad de una base de datos en Oracle.

Un administrador de Oracle puede controlar dos tipos de seguridad;

Seguridad del sistema

En lo referente a la seguridad del sistema es bastante importante saber que el administrador puede crear perfiles para limitar los recursos de la base de datos.

Los factores más importantes que puede limitar son:


RecursoDescripción
SESSION_PER_USEREl número de sesiones concurrentes que un usuario puede tener en una instancia.
CPU_PER_SESSIONEl tiempo de CPU, en centenas de segundos, que una sesión puede utilizar.
CONNECT_TIMEEl número de minutos que una sesión puede permanecer activa.
IDLE_TIMEEl número de minutos que una sesión puede permanecer sin que sea utilizada de manera activa.
LOGICAL_READS_PER_SESSIONEl número de bloques de datos que se pueden leer en una sesión.
LOGICAL_READS_PER_CALLEl número de bloques de datos que se pueden leer en una operación.
PRIVATE_SGALa cantidad de espacio privado que una sesión puede reservar en la zona de SQL compartido de la SGA.
COMPOSITE_LIMITEl número de total de recursos por sesión, en unidades de servicio. Esto resulta de un calculo ponderado de CPU_PER_SESSION, CONNECT_TIME, LOGICAL_READS_PER_SESSION y PRIVATE_SGA, cuyos pesos se pueden variar con el comando ALTER RESOURCE COST.

La sintaxis para la creación de un perfil con varias limitaciones seria:

create profile nombre_perfil limit
    {Entero [K|M] | unlimited | default};

Donde unlimited significa que no hay limite sobre un recurso particular y default significa que coge el limite del perfil DEFAULT

Para activar los perfiles el administrador debe ejecutar la siguiente orden:

alter system set resource_limit=true;

Para borrar un perfil tenemos que ejecutar la siguiente orden:

drop profile nombre_perfil [cascade];

Es importante saber si este perfil esta asignado a algún usuario ya que, si es así, tendremos que poner "cascade", para que lo elimine de esos usuarios también.

Otro factor importante en la seguridad a nivel de sistema es la gestión de tablespaces. Un tablespace es un espacio de la base de datos que contiene tablas o como su definición oficial nos dice, es una unidad lógica de almacenamiento de datos compuesta por uno o más archivos. En Oracle antes de introducir los datos en la base de datos tenemos que crear un tablespace para que nos deje trabajar.
Es importante tener un tablespace para cada tipo de datos es decir, un tablespace para cada aplicación.

La sintaxis de la creación de un tablespace es la siguiente:

create tablespace nombre_tablespace
   datafile 'nombre_Archivo' [size entero [K|M]] [reuse]
   [autoextend {off|on clausulas}]
   [,'nombre_archivo' [size entero [K|M]] [reuse]
   [autoextend {off|on clausulas}] ] ...
   [ default storage {
    initial tamaño
    next tamaño
    minextents tamaño
   maxextents tamaño
   pctincrease valor }] [online|offline];

Donde:

Por defecto Oracle crea los siguientes tablespace:

Para modificar un tablespace cambiamos el create por el alter mientras que para borrarlo basta con hacer drop tablespace nombre_tablespace;

Sara Alvarez

Equipo DesarrolloWeb.com

Manual