Está en la página 1de 4

Carrera: Base de datos II

Ciclo:
Nombre del mó dulo: Seguridad y autorización en bases de datos
3.1 Introducció n y autorizació n en bases de datos
3.2 Control de acceso direccional basado en concesió n/renovació n de
Tema: privilegios
3.3 Control de acceso obligatorio para seguridad multinivel
3.4 Introducció n a la seguridad de base de datos estadística.

Nombre:
Tarea4:

Instrucción: Utiliza el sistema manejador de Base de Datos GNU MySQL versió n 5.0 y realiza la
definició n de los roles de los usuarios y definició n de los permisos por nivel de usuario del estudio
de caso. Guarda tu archivo tarea4TuprimernombreTuprimerapellido.doc y sú belo como tarea.

I. Realiza la tarea en un archivo con Word.


II. Utiliza el sistema manejador de Base de Datos GNU MySQL versió n 5.0 la cual no tiene
costo y puede descargarse.
III. Al ingresar a la pá gina sigue los siguientes pasos:
1. Entra a la direcció n http://dev.mysql.com/downloads/mysql/5.0.html
2. Dar clic en la opció n Windows que se encuentra en la parte inferior.
3. Dar clic en la fila donde se encuentra la opció n Windows ZIP/Setup.EXE (x86) en Pick
a mirror
4. Posteriormente aparece una pantalla que pide registrarse, si no desean registrarse dar
clic en No thanks, just take me to the downloads!
5. Selecciona el país de donde deseas bajarlo con el link de HTTP o FTP, te
recomendamos North America.
6. Guarda.
7. Descomprímelo e instala.

IV. Realiza la definició n de los roles de los usuarios y definició n de los permisos por nivel
de usuario del estudio de caso.
V. Debe contener lo siguiente:

1. Define la base de datos “nomina”


2. Crea las tablas que a continuació n se muestran.
3. Define por medio de vistas (Create View), permisos (Grant) los privilegios que a
continuació n se solicitan:
 Requieres un usuario el cual solo pueda consultar a los empleados de la
categoría 3. (Select)
 Requieres un usuario el cual solo pueda consultar a los empleados de la
categoría 2. (Select)
 Requieres un usuario el cual solo pueda actualizar a todos los usuarios.
(Update)
 Requieres un usuario que tenga permiso para modificar, eliminar a todos
los usuarios de la tabla NominaEmpleados. (Update, Select, Insert y
Delete).

Estudio de caso:

La Secretaria de Desarrollo Comercial, debido a su crecimiento requiere que mayor nú mero


de personas tengan acceso a la nomina, pero las políticas internas de dicha secretaria
prohíben que los empleados con menor nivel puedan observar las prestaciones y sueldo de los
de mayor nivel, es por ello que se requiere crear a los usuarios con sus privilegios necesarios.

Estructura de la tabla NominaEmpleados


Id Identificador Entero
Nombre Nombre Texto
Apellido
ApellidoP Paterno Texto
Apellido
ApellidoM Materno Texto
Categoría No de Categoría Entero
Sueldo Sueldo Neto Numérico

Tabla NominaEmpleados
Id Nombre ApellidoP ApellidoM Categoría Sueldo
1 Vicente Pérez Méndez 1 30000
2 Josefina Ponce Sarabia 2 10000
3 Ernesto Vá zquez Leó n 2 20000
4 Rosario Palacios Mota 3 6000
5 Sebastiá n Camacho Molina 3 4000
Se mostrará el có digo SQL que utilizo para la construcció n de sus bases de datos, tablas, vista
y permisos, y a su vez mostrará la captura de las pantallas de có mo realizo sus actividades y la
descripció n de có mo realizo las actividades, teniendo en consideració n de que deberá de
probar que sus permisos funcionan utilizando por lo menos una consulta desde la línea de
comandos.

DROP DATABASE IF EXISTS nomina;


CREATE DATABASE nomina CHARACTER SET utf8mb4;
USE nomina;

CREATE TABLE NominaEmpleados (


id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
nombre VARCHAR(100) NOT NULL,
apellidop VARCHAR(100) NOT NULL,
apellidom VARCHAR(100),
categoría INT UNSIGNED,
sueldo INT UNSIGNED
);

INSERT INTO NominaEmpleados VALUES(1, 'Vicente', 'Pérez', 'Méndez', 1, 30000);


INSERT INTO NominaEmpleados VALUES(2, 'Josefina', 'Ponce', 'Sarabia', 2, 10000);
INSERT INTO NominaEmpleados VALUES(3, 'Ernesto', 'Vázquez', 'León', 2, 20000);
INSERT INTO NominaEmpleados VALUES(4, 'Rosario', 'Palacios', 'Mota', 3, 6000);
INSERT INTO NominaEmpleados VALUES(5, 'Sebastián', 'Camacho', 'Molina', 3, 4000);

Para nuestra tarea, utilizaremos los siguientes comandos:

 Para registrar un usuario

CREATE USER 'nuevo_usuario'@'localhost' IDENTIFIED BY 'contraseña';

 Para que un usuario pueda consultar algo en especifico

GRANT SELECT ON * . * TO 'nombre_usuario'@'localhost';

 Para que el usuario pueda actualizar

GRANT UPDATE ON * . * TO 'nombre_usuario'@'localhost';

 Para otorgarle todos los permisos

GRANT ALL PRIVILEGES ON * . * TO 'nuevo_usuario'@'localhost';

Entonces nuestro Có digo ejecutable quedará de la siguiente manera:

use <nomina>;
GO
create user ‘usuario1’@‘localhost’ identified by ‘contraseña’
GRANT SELECT ON *nomina* TO 'categoria=3’@'localhost';
create user ‘usuario2’@‘localhost’ identified by ‘contraseña’
GRANT SELECT ON *nomina* TO 'categoria=2’@'localhost';
create user ‘usuario3’@‘localhost’ identified by ‘contraseña’
GRANT UPDATE ON *nomina* TO ‘id’@'localhost';
create user ‘usuario4’@‘localhost’ identified by ‘contraseña’
GRANT ALL PRIVILEGES ON *nomina* TO ‘id’@'localhost';
GO

Referencia:

Deyimar, A. (2022, 16 de febrero). Cómo crear un usuario MySQL y otorgar privilegios: una
guía para principiantes. Hostinger. www.hostinger.mx/tutoriales/como-crear-usuario-
mysql

También podría gustarte