Niveles de Seguridad en Bases de Datos Oracle: Protección y Gestión de Usuarios

Enviado por sergi y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 6,24 KB

Niveles de Seguridad y Sanciones

Este documento describe los distintos niveles de seguridad, las sanciones asociadas a cada nivel y las medidas de seguridad obligatorias.

Nivel Bajo

Sanciones leves: Entre 600 y 60.000 €

Tipo de datos:

  • Nombre
  • Apellidos
  • Direcciones de contacto
  • Teléfonos

Medidas de seguridad obligatorias:

  • Documento de seguridad
  • Régimen de funciones del personal
  • Registro de incidencias
  • Identificación y autenticación de usuarios
  • Control de acceso
  • Gestión de soportes
  • Copias de respaldo y recuperación

Nivel Medio

Sanciones graves: Entre 60.000 y 300.000 €

Tipo de datos:

  • Infracciones penales
  • Infracciones administrativas
  • Información de Hacienda Pública
  • Información de servicios financieros

Medidas de seguridad obligatorias:

  • Medidas de seguridad del nivel básico
  • Tener un responsable de seguridad
  • Auditoría bianual
  • Medidas adicionales de identificación y autenticación de usuarios
  • Control de acceso físico

Nivel Alto

Sanciones muy graves: Entre 300.000 y 600.000 €

Tipo de datos:

  • Ideología
  • Religión
  • Creencias
  • Origen racial
  • Salud
  • Vida

Medidas de seguridad obligatorias:

  • Medidas de seguridad de nivel básico y medio
  • Seguridad de distribución de soportes
  • Registro de accesos
  • Medidas adicionales de copias de respaldo

Estado de Cuenta de Usuario en Oracle

El estado de una cuenta de usuario en Oracle se puede consultar en la columna ACCOUNT_STATUS de la vista DBA_USERS. Los posibles valores son:

  • OPEN: Cuenta disponible para ser utilizada.
  • LOCKED: El DBA ha bloqueado la cuenta. No puede ser utilizada.
  • EXPIRED: La contraseña ha caducado y necesita ser cambiada.
  • EXPIRED & LOCKED: La cuenta ha sido bloqueada y la contraseña ha caducado.
  • EXPIRED(GRACE): La contraseña está a punto de caducar y se recuerda al usuario que debe cambiarla.
  • LOCKED (TIMED): La cuenta se ha bloqueado temporalmente debido a múltiples intentos fallidos de inicio de sesión.
  • EXPIRED & LOCKED (TIMED): Contraseña caducada y cuenta bloqueada temporalmente.
  • EXPIRED (GRACE) & LOCKED: Contraseña a punto de caducar y cuenta bloqueada.
  • EXPIRED (GRACE) & LOCKED (TIMED): Contraseña a punto de caducar y cuenta bloqueada temporalmente.

Privilegios de Sistema en Oracle

Existen cerca de 200 privilegios de sistema en Oracle. Algunos de los más comunes son:

  • CREATE SESSION: Permite al usuario conectarse a la base de datos.
  • ALTER DATABASE: Permite modificar la estructura física de la base de datos.
  • ALTER SYSTEM: Permite modificar los parámetros de instancia y las estructuras de memoria.
  • CREATE/ALTER/DROP TABLESPACE: Permite gestionar los tablespaces.
  • CREATE TABLE: Permite crear, modificar y borrar tablas dentro de su esquema. Incluye permisos para operaciones DML y SQL contra estas tablas.
  • CREATE ANY TABLE: Permite crear tablas que pertenezcan a otro usuario.
  • DROP ANY TABLE: Permite eliminar tablas que pertenecen a otro usuario.
  • INSERT/UPDATE/DELETE/SELECT ANY TABLE: Permite realizar estas operaciones contra tablas que no son propiedad del usuario.

Roles Predefinidos en Oracle

Existen al menos 50 roles predefinidos en Oracle. Algunos de los más importantes son:

  • CONNECT: Solo tiene el privilegio CREATE SESSION. Se mantiene por compatibilidad con versiones anteriores.
  • RESOURCE: Permite crear tablas y procedimientos. Incluye UNLIMITED TABLESPACE.
  • DBA: Tiene todos los privilegios del sistema.
  • SELECT_CATALOG_ROLE: Contiene permisos de lectura sobre objetos del diccionario de datos. Se utiliza para administradores junior para monitorizar la base de datos.
  • PUBLIC: Rol asignado a todos los usuarios por defecto. Si se asigna un privilegio a este rol, se asigna a todos los usuarios.

Gestión de Perfiles: Contraseñas (Passwords)

Oracle permite un control detallado sobre las contraseñas a través de perfiles. Algunas opciones de configuración son:

  • FAILED_LOGIN_ATTEMPS: Número de intentos fallidos de inicio de sesión antes de que la cuenta sea bloqueada.
  • PASSWORD_LOCK_TIME: Número de días que la cuenta permanece bloqueada después de alcanzar el límite de intentos fallidos.
  • PASSWORD_LIFE_TIME: Tiempo de vida de una contraseña (en días).
  • PASSWORD_GRACE_TIME: Días después de que la contraseña caduque durante los cuales se permite al usuario cambiarla.
  • PASSWORD_VERIFY_FUNCTION: Nombre de una función que verifica la complejidad de la contraseña.

Gestión de Perfiles: Recursos

También se pueden limitar los recursos que un usuario puede consumir a través de perfiles:

  • SESSIONS_PER_USER: Número máximo de sesiones simultáneas para un usuario.
  • CPU_PER_SESSION: Tiempo máximo de CPU (en centésimas de segundo) que puede consumir una sesión.
  • CPU_PER_CALL: Tiempo máximo de CPU (en centésimas de segundo) que puede consumir una sentencia SQL.
  • CONNECT_TIME: Número máximo de minutos que puede durar una sesión.
  • IDLE_TIME: Número máximo de minutos de inactividad antes de que la sesión se cierre.

Entradas relacionadas: