Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Materia:
Base de Datos II
Ciclo:
M5A
Transacciones y
Seguridad
Trabajo Investigativo
Presentado por:
ABEL ORDOÑEZ
Ciudad: Cuenca, Ecuador
Fecha: 25 de marzo de 2020
Periodo: noviembre–abril 2020
Contenido
Transacciones SQL ........................................................................................................................3
Características de las transacciones en SQL Server ......................................................................3
Atomicidad: ..............................................................................................................................3
Consistencia: ............................................................................................................................3
Aislamiento: .............................................................................................................................3
Durabilidad: ..............................................................................................................................3
Sentencias para una transacción ..................................................................................................3
Control de las transacciones ........................................................................................................3
COMMIT. ..................................................................................................................................3
ROLLBACK. ................................................................................................................................3
SAVEPOINT. ..............................................................................................................................3
Control de Concurrencia ..............................................................................................................4
Manejo de transacciones en SQL .............................................. ¡Error! Marcador no definido.
Niveles de aislamiento en SQL .................................................. ¡Error! Marcador no definido.
dirty read: .................................................................................. ¡Error! Marcador no definido.
nonrepeatable read: ................................................................. ¡Error! Marcador no definido.
phantom read: .......................................................................... ¡Error! Marcador no definido.
Técnicas de control de concurrencia ............................................................................................4
Control de concurrencia pesimista ...........................................................................................4
Control de concurrencia optimista ...........................................................................................4
Dos técnicas de fase de bloqueo ..............................................................................................4
Control de concurrencia basado en la marca de tiempo ..........................................................4
Técnicas de recuperación de bases de datos ...............................................................................5
Técnica Actualización diferida ..................................................................................................5
Técnica de recuperación Actualización Inmediata ...................................................................5
Mecanismos de Seguridad ...........................................................................................................5
Usuarios y esquemas ................................................................................................................6
Dominio de Seguridad ..........................................................................................................6
Privilegios .............................................................................................................................6
Roles .....................................................................................................................................6
Configuración del almacenamiento y cuotas........................................................................7
Límites a los recursos ...........................................................................................................7
Monitoreo ............................................................................................................................7
Auditoría ......................................................................................................................................7
TABLAS Y VISTAS ......................................................................................................................8
Transacciones SQL
Una transacción es una unidad de trabajo compuesta por diversas tareas, cuyo resultado final
debe ser que se ejecuten todas o ninguna de ellas.
Consistencia: significa que las instrucciones en una transacción tienen un estado consistente.
La transacción lleva la base de datos subyacente de un estado estable a otro,
Los comandos de control de transacciones se usan sólo con INSERT, DELETE y UPDATE. No
pueden utilizarse creando tablas o vaciándolas porque las operaciones se guardan
automáticamente en la base de datos.
EJEMPLO
Control de Concurrencia
El control de transacciones concurrentes en una base de datos brinda un eficiente desempeño
del Sistema de Base de Datos, puesto que permite controlar la ejecución de transacciones que
operan en paralelo, accesando a información compartida y, por lo tanto, interfiriendo
potencialmente unas con otras.
Una transacción T nunca puede alcanzar el commit hasta que grabó todas sus operaciones de
actualización en el Log y el log fue grabado en el disco.
seguridad
La seguridad de la información se ocupa de proteger la confidencialidad, disponibilidad e
integridad en base de datos de todos los activos de conocimiento de la organización.
Confidencialidad: se trata del aspecto más importante de la seguridad de base de datos. Este
objetivo se alcanza a través de La encriptación ha de aplicarse a datos en reposo
Integridad en base de datos: busca garantizar que sólo las personas autorizadas a ello podrán
acceder a información privilegiada de la empresa.
Disponibilidad: hace referencia a la necesidad de que las bases de datos y toda la información
que contienen estén listas para su uso.
Mecanismos de Seguridad
El sistema de base de datos ORACLE provee control de acceso discrecional, el cual es un medio
de restricción de acceso basado en privilegios
• Usuarios y esquemas
• Privilegios
• Roles
• Configuración del almacenamiento y cuotas
• Límites a los recursos
• Monitoreo
Usuarios y esquemas
Cada base de datos tiene una lista de nombres de usuarios. Para acceder a la base de datos, un
usuario debe usar una aplicación e intentar entablar una conexión con un nombre de usuario
válido de la base de datos.
Dominio de Seguridad
Cada usuario tiene un dominio de seguridad,
Privilegios
Los privilegios de una base de datos ORACLE pueden ser divididos en dos categorías distintas:
Privilegios de sistema y Privilegios de objetos.
Privilegios de sistema
Los Privilegios de sistema permiten a los usuarios desempeñar una acción particular dentro del
sistema o una acción particular sobre un tipo determinado de objeto. Por ejemplo, el privilegio
para crear un tablespace o para borrar filas de una tabla en la base de datos son privilegios de
sistema.
Privilegios de objetos
Los privilegios de objetos permiten a los usuarios desempeñar acciones sobre un esquema
específico. Por ejemplo, el privilegio para borrar filas de una tabla específica es un privilegio de
objetos. Los privilegios de objetos son asignados a usuarios finales.
Roles
ORACLE provee los roles para una administración más fácil y controlada de los privilegios. Los
roles son un grupo con nombre de privilegios, que son asignados a usuarios o a otros roles.
default tablespaces
Cuando un usuario crea una tabla, índice, o cluster y no se especifica ningún tablespace que
contenga físicamente al objeto, el default tablespace es utilizado si el usuario tiene privilegio
para crear el objeto.
temporay tablespaces
Cuando un usuario ejecuta una sentencia SQL que requiere la creación de objetos temporarios
tablespaces quotas.
Las tablespace quotas permiten un control selectivo sobre el espacio en disco que es
consumido por cada objeto de cada esquema.
El tiempo de CPU:
disponible para una simple llamada a ORACLE realizada por una sentencia SQL.
Cantidad de I/O:
Monitoreo
un monitoreo selectivo de las acciones de los usuarios para ayudar en la investigación de usos
maliciosos de la base de datos. El monitoreo puede realizarse a tres niveles distintos:
Auditoría
auditoría es un conjunto de características que permite al administrador de la base de datos y
a los usuarios hacer un seguimiento del uso de la base de datos. El administrador de base de
datos puede definir la actividad de auditoría predeterminada. La información de las auditorías
se almacena en el diccionario de datos, en la tabla SYS.AUD$ o en la pista de auditoría del
sistema operativo (si lo permite).
TABLAS Y VISTAS
Oracle almacena en la tabla SYS.AUD$ o en la pista de auditoría del sistema operativo (si lo
permite)
o ALL_AUDIT_POLICIES
o ALL_AUDIT_POLICY_COLUMNS
o ALL_DEF_AUDIT_OPTS
o ALL_REPAUDIT_ATTRIBUTE
o ALL_REPAUDIT_COLUMN
o APEX_DEVELOPER_AUDIT_LOG
o DBA_AUDIT_EXISTS
o DBA_AUDIT_OBJECT
o DBA_AUDIT_POLICIES
o DBA_AUDIT_POLICY_COLUMNS
o DBA_AUDIT_SESSION
o DBA_AUDIT_STATEMENT
o DBA_AUDIT_TRAIL
o DBA_COMMON_AUDIT_TRAIL
o DBA_FGA_AUDIT_TRAIL
o DBA_OBJ_AUDIT_OPTS
o DBA_PRIV_AUDIT_OPTS
o DBA_REPAUDIT_ATTRIBUTE
o DBA_REPAUDIT_COLUMN
o DBA_STMT_AUDIT_OPTS
o GV_$XML_AUDIT_TRAIL
o KU$_AUDIT_DEFAULT_VIEW
o KU$_AUDIT_OBJ_BASE_VIEW
o KU$_AUDIT_OBJ_VIEW
o KU$_AUDIT_VIEW
o KU$_PROC_AUDIT_VIEW
o KU$_PROCDEPOBJ_AUDIT_VIEW
o KU$_PROCOBJ_AUDIT_VIEW
o KU$_10_1_AUDIT_VIEW
o MGMT$AUDIT_LOG
o MGMT$ESA_AUDIT_SYSTEM_REPORT
o SM$AUDIT_CONFIG
o USER_AUDIT_OBJECT
o USER_AUDIT_POLICIES
o USER_AUDIT_POLICY_COLUMNS
o USER_AUDIT_SESSION
o USER_AUDIT_STATEMENT
o USER_AUDIT_TRAIL
o USER_OBJ_AUDIT_OPTS
o USER_REPAUDIT_ATTRIBUTE
o USER_REPAUDIT_COLUMN
o V_$XML_AUDIT_TRAIL
Estas vistas se pueden ver ejecutando la consulta SQL:
o SELECT view_name
o FROM dba_views
o WHERE view_name LIKE '%AUDIT%'
o ORDER BY view_name
from v$parameter
Activar la auditoria
ALTER SYSTEM SET audit_trail = "DB" SCOPE=SPFILE;
Desactivar la auditoria
ALTER SYSTEM SET audit_trail = "NONE" SCOPE=SPFILE;
Bibliografía
(s.f.). Obtenido de https://www.monografias.com/trabajos908/oracle/oracle2.shtml#mecan