Logo Studenta

DABD-U2-A3-ALMM

¡Este material tiene más páginas!

Vista previa del material en texto

Universidad Abierta y a Distancia
de México
División de Ciencias Exactas, Ingeniería y Tecnología
Desarrollo de software
Semestre: 4
Asignatura: Administración de bases de datos
Unidad de aprendizaje: 2
Actividad: 3	
Ciudad de México, Noviembre del 2022
Diseño: DL-CPL
 
ÍNDICE
INTRODUCCIÓN	3
INSTRUCCIONES	3
DESARROLLO DE LA ACTIVIDAD	5
CONCLUSIONES	13
REFERENCIAS BIBLIOGRÁFICAS	13
INTRODUCCIÓN 
En el siguiente trabajo con el objetivo de examinar el uso de las sentencias de la DCL, para administrar roles y usuarios, para llevar a cabo la correcta asignación y revocación de permisos a la base de datos, que permitan garantizar la seguridad de la información almacenada. Por medio de casos de estudio donde se identificaran los muchos niveles de usuario que existen en una base de datos, con el fin de poder aplicar las sentencias correspondientes a la DCL por medio de la creación de roles y permisos de usuarios.
INSTRUCCIONES
1. Diferencia entre las características de Data Control Language (DCL) y las de Data Manipulation Language (DML). 
2. Explica la función principal de los comandos GRANT y REVOKE. 
3. Realiza una base de datos que tenga como nombre tu matricual UNADM. 
4. Crea dentro de la base de datos las siguientes tablas: 
Docente
	Folio
	Nombre
	Sexo
	Bloque
	Fecha_inicio
	Fecha_final
	ID_evidencia
	86439
	Yolotzin
	F
	2
	26/09/2022
	04/12/2022
	3
	62964
	Tenampi
	M
	1
	05/01/2022
	29/03/2022
	1
	39141
	Tonantzin
	F
	2
	26/09/2022
	04/12/2022
	2
	72152
	Tlaloc
	M
	1
	05/01/2022
	29/03/2022
	5
	88665
	Quetzali
	F
	2
	26/09/2022
	04/12/2022
	4
Evidencia
	Evidencia
	ID_evidencia
	Prioridad
	Clave_loc
	Informe
	1
	Alta
	112768
	Reporte
	2
	Normal
	772412
	Bitacora
	3
	Baja
	559841
	Cronograma
	4
	Alta
	330720
	Manual
	5
	Baja
	003192
5. Selecciona las sentencias necesarias para realizar las siguientes acciones: 
a. Asigna al docente Tlaloc permisos para insertar valores en tablas. 
b. Comprueba el permiso al docente Tlaloc creado en el punto anterior. 
c. Asigna a la docente Tenampi solo permisos para ver la información de las tablas. 
d. Valida el permiso a la docente Tenampi creado en el punto anterior. 
e. Asigna a la docente Tonanzin todos los privilegios. 
f. Verifica que los privilegios de la docente Tonanzin fueron actualizados. 
g. Permite a los docentes Yolotzin y Quetzali el permiso de ver la información de las tablas. 
h. Verifica que los permisos a los docentes Yolotzin y Quetzali fueron 
actualizados. 
i. Quita todos los privilegios a la docente Tonanzin. 
j. Verifica que los privilegios a la docente Tonanzin fueron actualizados. 
6. Explica en la conclusión, la importancia de otorgar, revocar privilegios y el manejo de roles, como parte de las funciones de un administrador. 
7. Carga tu archivo en la sección correspondiente
.
DESARROLLO DE LA ACTIVIDAD
1. Diferencia entre Data Control Language (DCL) y Data Manipulation Language (DML). 
DCL incluye comandos como GRANT y se relaciona principalmente con derechos, permisos y otros controles del sistema de base de datos.
GRANT - permite a los usuarios acceder a los privilegios de la base de datos
REVOKE: retira los privilegios de acceso de los usuarios otorgados mediante el uso del comando GRANT
DML incluye las declaraciones SQL más comunes, como: SELECT, INSERT, UPDATE, DELETE, etc y se utiliza para almacenar, modificar, recuperar, eliminar y actualizar datos en una base de datos.
SELECT - recuperar datos de una base de datos
INSERT - insertar datos en una tabla
UPDATE - actualiza los datos existentes dentro de una tabla
DELETE - Eliminar todos los registros de una tabla de base de datos
MERGE - Operación UPSERT (insertar o actualizar)
CALL - llamar a un subprograma PL/SQL o Java
EXPLAIN PLAN - interpretación de la ruta de acceso a datos
LOCK TABLE - Control de concurrencia
2. Explica la función principal de los comandos GRANT y REVOKE. 
Las sentencias GRANT y REVOKE permiten a los administradores del sistema crear cuentas de usuario MySQL y conceder y revocar derechos de esas cuentas
El administrador de la base de datos define el comando GRANT en SQL para otorgar el acceso o los privilegios a los usuarios de la base de datos
El comando REVOKE en SQL se define para quitar los privilegios otorgados del usuario de la base de datos. El que tiene la autoridad para retirar los privilegios es el administrador de la base de datos
3. Base de datos que tenga mi matricula UNADM. 
4. Crea dentro de la base de datos las siguientes tablas: 
CREATE TABLE `es162002721`.`docente` (`Folio` INT(6) NOT NULL , `Nombre` VARCHAR(20) NOT NULL , `Sexo` VARCHAR(2) NOT NULL , `Bloque` INT(2) NOT NULL , `Fecha_inicio` DATE NOT NULL , `Fecha_final` DATE NOT NULL , `ID_evidencia` INT(2) NOT NULL );
CREATE TABLE `es162002721`.`evidencia` (`Evidencia` VARCHAR(20) NOT NULL , `ID_evidencia` INT(2) NOT NULL , `Prioridad` VARCHAR(10) NOT NULL , `Clave_loc` INT(7) NOT NULL );
INSERT INTO `docente` (`Folio`, `Nombre`, `Sexo`, `Bloque`, `Fecha_inicio`, `Fecha_final`, `ID_evidencia`) VALUES ('86439', 'Yolotzin', 'F', '2', '2022-09-26', '2022-12-04', '3'), ('62964', 'Tenampi', 'M', '1', '2022-01-05', '2022-03-29', '1'), ('39141', 'Tonantzin', 'F', '2', '2022-09-26', '2022-12-04', '2'), ('72152', 'Tlaloc', 'M', '2', '2022-01-05', '2022-12-04', '5'), ('88665', 'Quetzali', 'F', '2', '2022-09-26', '2022-12-04', '4');
INSERT INTO `evidencia` (`Evidencia`, `ID_evidencia`, `Prioridad`, `Clave_loc`) VALUES ('Informe', '1', 'Alta', '112768'), ('Reporte', '2', 'Normal', '772412'), ('Bitacora', '3', 'Baja', '559841'), ('Cronograma', '4', 'Alta', '330720'), ('Manual', '5', 'Baja', '003192');
5. Sentencias necesarias para realizar las siguientes acciones: 
a. Asigna al docente Tlaloc permisos para insertar valores en tablas. 
GRANT SELECT, INSERT ON es162002721.docente TO 'Tlaloc'@'localhost';
b. Comprueba el permiso al docente Tlaloc creado en el punto anterior. 
SHOW GRANTS FOR 'Tlaloc'@'localhost';
c. Asigna a la docente Tenampi solo permisos para ver la información de las tablas.
GRANT SELECT, SHOW VIEW ON docente TO "Tenampi"@"localhost";
d. Valida el permiso a la docente Tenampi creado en el punto anterior. 
SHOW GRANTS FOR 'Tenampi'@'localhost';
e. Asigna a la docente Tonantzin todos los privilegios. 
GRANT ALL ON *.* TO 'Tonantzin'@'localhost';
f. Verifica que los privilegios de la docente Tonantzin fueron actualizados. 
SHOW GRANTS FOR 'Tonantzin'@'localhost';
g. Permite a los docentes Yoltzin y Quetzali el permiso de ver la información de las tablas. 
GRANT SELECT,SHOW VIEW ON *.* TO "Yoltzin"@"localhost", "Quetzali"@"localhost";
h. Verifica que los permisos a los docentes Yoltzin y Quetzali fueron actualizados. 
GRANT SELECT,SHOW VIEW ON *.* TO "Yoltzin"@"localhost";
GRANT SELECT,SHOW VIEW ON *.* TO "Quetzali"@"localhost";
i. Quita todos los privilegios a la docente Tonantzin. 
REVOKE ALL ON *.* FROM 'Tonantzin'@'localhost';
j. Verifica que los privilegios a la docente Tonantzin fueron actualizados. 
SHOW GRANTS FOR "Tonantzin"@"localhost";
CONCLUSIONES
La implementación de privilegios en las Bases de datos es indispensable para el administrador de base de datos ya que nos ayudan a limitar o aumentar el alcance que puede tener un usuario, ya que en muchos proyectos habrá el caso de que se tengan distintos tipos de usuario que necesiten acceder a la B.D. sea para consultar, editar, crear o eliminar un registro, es por ello que con base al rol del usuario se deba determinar su privilegio. Los privilegios en una B.D. nos ayudan a controlar la creación de objetos y la administración de sistema. Algunos privilegios de administrador son globales en cuanto al alcance, independientemente de la base de datos actual. El emplear roles de base de datos para gestionar con mayor orden y facilidad los privilegios de los grupos de usuarios, y los roles de base de datos nos ayudan en el proceso de gestión de privilegios, ya que se pueden otorgar privilegios a un rol y luego otorgar el rol a usuarios.Y cuando desee revocar los privilegios para un usuario, solamente se tiene que revocar la autorización de rol del usuario, en vez de revocar cada privilegio individual.
REFERENCIAS BIBLIOGRÁFICAS
· MySQL :: MySQL 8.0 Reference Manual :: 13.2.10 SELECT Statement. (s. f.). Recuperado 31 de octubre de 2022, de https://dev.mysql.com/doc/refman/8.0/en/select.html
· MySQL :: MySQL 8.0 Reference Manual :: 13.7.1.6 GRANT Statement. (s. f.). Recuperado 2 de noviembre de 2022, de https://dev.mysql.com/doc/refman/8.0/en/grant.html
· MySQL :: MySQL 8.0 Reference Manual :: 13.7.1.8 REVOKE Statement. (s. f.). Recuperado 2 de noviembre de 2022, de https://dev.mysql.com/doc/refman/8.0/en/revoke.html

Continuar navegando