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.