Está en la página 1de 14

GUÍA ESTRUCTURADA DE EVALUACIÓN

División: (1) Ingeniería de Sistemas Computacionales


Docente: (2) ING.OSCAR OLIVARES LOPEZ
Asignatura: (3) Tópicos Avanzados de Programación
C3 Implementar mecanismos de seguridad básicos para el acceso a datos mediante
Unidad: (4)
otorgamiento o denegación de privilegios
Alumno(s): (5) Zamudio Franco Luis Jesús 193107070 Grupo: (6) 352-M
Competencia específica Implementar mecanismos de seguridad básicos para el acceso a datos mediante
evaluada: (7) otorgamiento o denegación de privilegios

Evidencia: (8) INVESTIGACION


Indicaciones generales: (9)
 La investigación debe ser entregado en tiempo y forma, en las fecha y horas indicados por el profesor.
 La investigación deberá entregarse de forma individual.
 La investigación del reporte debe ser nítida y pulcra.
 No debe incluir faltas de ortografía
Criterios de evaluación: (10)

No. CRITERIO VALOR SI NO


1 La investigación contiene portada e índice 10%
2 La investigación contiene la introducción respectiva 10%
3 La investigación contiene objetivos 10%
4 La investigación contiene la justificación correspondiente. 10%
La investigación contiene manejo de imágenes menores a media cuartilla
5 10%
respectivo al texto tratado.
6 La investigación contiene ejemplos claros a cada tema tratado 10%
7 La investigación es clara, precisa al tema en SQLServer 30%
8 Maneja al final de la investigación min 3 referencias bibliográficas 5%
9 La investigación se encuentra sin faltas de ortografía. 5%
Total 100%

Puntuación 1ª oportunidad 2ª oportunidad


Alcanzada(11)
DIVISIÓN DE INGENIERÍA EN SISTEMAS COMPUTACIONALE

INVESTIGACIÓN DOCUMENTAL C3
Asignatura:
Taller de Base de Datos

Elaborado por:
Zamudio Franco Luis Jesús / 193107070

Docente:

Oscar Olivares Perez

Grupo:

352-M

Período:
2021-2
Contenido
INTRODUCCIÓN....................................................................................................................................3

3.1 Tipos de Usuarios...........................................................................................................................4

3.2 Creación de usuarios......................................................................................................................8

3.4 Roles.............................................................................................................................................13

CONCLUSIÓN......................................................................................................................................15

FUENTES BIBLIOGRAFICAS..................................................................................................................15

INTRODUCCIÓN
En el siguiente trabajo se hablará un poco nuestra tercera competencia, lo cual tiene
como nombre “Control de acceso”, pero nosotros nos enfocaremos más en los
subtemas de nuestra competencia, en este caso los subtemas son: “Tipos de usuario”,
“Creación de usuarios”, “Privilegios de usuarios” y “roles”.
Antes de empezar con la información de nuestros subtemas, primero hablaremos un
poco acerca del “control de acceso” en una base de datos.
El Control de acceso es un componente fundamental de seguridad de datos que nos dice quién
tiene permiso para acceder y usar información y/o recursos.
El control de acceso identifica a los usuarios a base de verificar distintas credenciales de inicio de
sesión, que pueden incluir nombres de usuarios y contraseña, PIN, escaneos biométricos y tokens
de seguridad, una vez autenticado un usuario, el control de acceso autoriza luego el nivel de
acceso adecuado y las acciones permitidas asociadas a las credenciales y la dirección IP de ese
usuario.
Existen cuatro diferentes tipos de control de acceso principales, los cuatro modelos de control de
acceso son:
 Control de acceso discrecional (DAC) 
 Control de acceso discrecional (DAC) 
 Control de acceso basado en roles (RBAC) 
 Control de acceso basado en atributos (ABAC)

Una vez dicho esto, comenzaremos los subtemas de nuestra investigación, al finalizar podremos
encontrar una conclusión y las fuentes bibliográficas.

3.1 Tipos de Usuarios

Los usuarios son individuos o grupos que están involucrados en las operaciones de un
sistema de base de datos.

Podemos definir a los usuarios como toda persona que tenga todo tipo de contacto con el sistema
de base de datos desde que este se diseña, elabora, termina y se usa.
Existen diferentes tipos de usuario, a continuación, se dirán los tipos de usuarios:

֎ Usuarios normales: Son los usuarios no sofisticados que interactúan con el


sistema mediante un programa de aplicación con una interfaz de formularios,
también estos usuarios pueden simplemente leer informes generados de la
base de datos.

֎ Programadores de aplicaciones: Son profesionales informáticos que crean


los programas de aplicación, para poder crear los programas utilizan
herramientas para el desarrollo de interfaces de usuario, al utilizar la
herramienta de desarrollo rápido de aplicaciones (DRA) facilitan el poder
crear los formularios e informes sin escribir directamente en el programa.

֎ Usuarios Sofisticados: Son los usuarios que interactúan con el sistema sin
programar escritos, usando el lenguaje de consulta de base de datos para hacer
sus consultas. Los analistas que envían las consultas para explorar los datos en
la base de datos entran en esta categoría, usando ellos las herramientas
de procesamiento analítico en línea o herramientas de recopilación de datos.

֎ Usuarios Especializados: Son usuarios muy sofisticados que escriben


aplicaciones de bases de datos especializadas y adecuadas para el
procesamiento de datos tradicional. Entre estas aplicaciones están los sistemas
de diseño asistido por computadora, sistemas de base de conocimientos y
sistemas expertos,  sistemas que almacenan datos de tipos de datos complejos
y sistemas de modelado de entorno.

֎ Usuarios Ingenuos: Los usuarios no sofisticados interactúan con el sistema


invocando a uno de los programas de aplicación permanentes que se han
escrito con anterioridad en el sistema de la base de datos.
֎ Administradores de la base de datos (ABD): Son aquellas que tienen el control central
del SGBD. Entre las funciones del ABD se encuentran:
 Definición del esquema de la base de datos.
 Definición de la estructura y el método de acceso.
 Modificación del esquema y la organización física.
 Concesión de autorización para el acceso a los datos.
 Mantenimiento rutinario.

֎ Usuarios Finales: Son las personas que necesitan tener acceso a la base de
datos para consultarla, actualizarla y generar informes; la base de datos existe
primordialmente para que los usuarios la usen.

֎ Usuarios Finales esporádicos: Las personas tiene acceso de vez en cuando a la base de
datos, pero es posible que requieran información diferente para cada ocasión . Utilizan un
lenguaje de consulta de base de datos avanzado para especificar a sus solicitudes y suelen
ser gerentes de nivel medio o alto.

֎ Usuarios Finales Simples o Paramétricos: Constituyen una porción apreciable de la


totalidad de los usuarios finales. La función de su trabajo gira en torno a consultas y
actualizaciones de la base de datos, utilizando tipos estándar de estas operaciones que se
han programado y probado con mucho cuidado.

֎ Usuarios Finales Avanzados: Se cuenta ingenieros, científicos, analista de negocio etc,


quienes conocen los recursos del SGBD para así poder satisfacer los requerimientos.
֎ Usuarios Autónomos: Aquí se emplean bases de datos personalizados gracias a los
paquetes de programas comerciales que cuentan con interfaces de fácil uso, basadas en
menús o en gráficos.

3.2 Creación de usuarios

La creación de usuarios es un paso muy importante, ya que si cometemos un error ejecutando


sentencias SQL o si la aplicación hace lo que no esperamos.

Para crear un usuario en MySQL necesitamos saber el nombre de usuario, la contraseña y la IP


desde la que estará permitido su acceso (o si se debe dejar abierto desde cualquier dirección).

Para poder crear un usuario con SSMS es necesario realizar los siguientes pasos:

1. En el Explorador de objetos, debemos expandir la carpeta Bases de datos .

2. Expandimos la base de datos en la que se va a crear el usuario de esta.

3. Hacemos clic con el botón derecho en la carpeta Seguridad, seleccionamos Nuevo y


después Usuario... .

4. En el cuadro de diálogo Usuario de base de datos – seleccionamos Nuevo, en la


página General, seleccionamos uno de los tipos de usuario siguientes de la lista Tipo de
usuario:
 usuario SQL con inicio de sesión
 usuario SQL con contraseña
 Usuario SQL sin inicio de sesión
 Usuario asignado a un certificado
 Usuario asignado a una clave asimétrica
 usuario de Windows

5. Cuando se selecciona una opción, las demás opciones del cuadro de diálogo podrían
cambiar. Algunas opciones solo se aplican a tipos específicos de usuarios de base de
datos. Algunas opciones pueden dejarse en blanco y usarán un valor predeterminado.

6. Haga clic en OK.

Crear un usuario con T-SQL

Para crear un usuario con T-SQL es necesario realizar los siguientes:

1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.

2. En la barra Estándar , haga clic en Nueva consulta.

3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar.

-- Creates the login AbolrousHazem with password '340$Uuxwp7Mcxo7Khy'.

CREATE LOGIN AbolrousHazem

WITH PASSWORD = '340$Uuxwp7Mcxo7Khy';

GO

-- Creates a database user for the login created above.

CREATE USER AbolrousHazem FOR LOGIN AbolrousHazem;

GO
3.3 Privilegios de Usuarios

Un privilegio es un derecho para ejecutar un tipo particular de sentencia o para acceder un objeto
de otro usuario.

Una vez creada los usuarios es necesario dotarlos de privilegios para que se puedan realizar
operaciones especificas en la base de datos. Esos privilegios suelen clasificarse de la siguiente
manera:

ᴥ Privilegios del Sistema(System privileges): Permisos a niveles de la base de


datos como pueden ser conexión a la base de datos, creación de usuarios y limitar
cuentas.
ᴥ Privilegios sobre objetos (Object privileges): Aquí se encuentran las vistas,
tablas, secuencias, procedimientos y paquetes.
 Privilegios sobre objetos

Aquí se encuentran los siguientes comandos:

 ALTER, EXECUTE, INDEX, INSERT, READ, REFERENCES, SELECT, UPDATE,


ALL ó ALL PRIVILEGES
 Privilegios del sistema

aquí se encuentran los siguientes comandos:

 ALTER ANY INDEX, ALTER ANY ROLE, ALTER ANY TABLE ,ALTER
DATABASE, ALTER PROFILE, ALTER USER, BACKUP ANY TABLE, BECOME
USER, COMMENT ANY TABLE, CREATE PROFILE, CREATE ROLE, CREATE
TABLE, CREATE USER, CREATE VIEW, DELETE ANY TABLE, DROP ANY
INDEX, DROP ANY ROLE, DROP ANY VIEW, DROP PROFILE, DROP USER,
EXECUTE ANY PROCEDURE, EXECUTE ANY TYPE, FORCE ANY
TRANSACTION, FORCE TRANSACTION, GRANT ANY PRIVILEGE, GRANT
ANY ROLE, INSERT ANY TABLE, LOCK ANY TABLE, UPDATE ANY TABLE
Para otorgar privilegios utilizaremos la sentencia GRANT, para quitar un privilegio o un permiso
a un usuario utilizamos la sentencia REVOKE.

COMANDO GRANT

Se utiliza para crear usuarios y concederle privilegios. La sintaxis general del comando GRANT
es de la siguiente manera:

Comando REVOKE

Es la cláusula predefinida para la remoción de un privilegio. Se utiliza la siguiente sentencia para


remover un privilegio a un usuario:

REVOKE privilegio FROM usuario;


 Los privilegios se almacenan en cuatro tablas del sistema, dentro de la base de datos en
MYSQL, las cuatro tablas se denominan de la siguiente manera:

Un usuario puede realizar cualquier tarea dentro de la base de datos, entre las que se incluyen
son:

 Procesar objetos de base de datos


 Leer datos de base de datos
 Leer metadatos de base de datos
 Agregar usuarios a funciones de base datos existentes
 Crear funciones de base de datos nuevas.
 Definir permisos para funciones de base de datos.

3.4 Roles

Un rol es una colección de privilegios del sistema y de objetos que se otorgan a usuarios y otras
tareas. En general los roles se emplean para asignar los privilegios con los usuarios finales de las
aplicaciones de un sistema o para roles a otros roles.
Es posible definir un rol como un conjunto identificado de permisos. Para facilitar la gestión de
los permisos, SQL Server ofrece los roles predefinidos, también llamados fijos, ya que no es
posible añadir o eliminar privilegios en estos roles.

Estos roles fijos se definen en dos niveles:

 Servidor.
 Base de datos.

También los roles se pueden definir en tres niveles:

 Servidor.
 Base de datos.
 Aplicación.

Los roles de la base de datos tienen la siguiente funcionalidad:

ᴥ Un rol puede tener privilegios del sistema y privilegios de objetos del schema.
ᴥ Un rol se puede asignar a otros roles(excepto a sí mismo directa o indirectamente).
ᴥ A cualquier usuario de la base de datos se le puede asignar cualquier rol.
ᴥ Un rol asignado a un usuario se puede habilitar o inhabilitar en cualquier momento.
ᴥ Un rol garantizado indirectamente puede ser explícitamente habilitado o inhabilitado al
usuario.

 Para asignar o retirar privilegios de un rol se utiliza una sentencia similar a cuando se desea
asignar o retirar privilegios a un usuario.
 CREATE ROLE role;
 GRANT SELECT, INSERT, UPDATE, DELETE ON table TO user;

 Para asignar un rol a un usuario se utiliza la siguiente sentencia:


 GRANT role_name TO user;

 Para eliminar un rol se utiliza se utiliza la sentencia:


 DROP ROLE role_name;
Debido a que es una estructura definida y uno un dato almacenado se utiliza DROP.

 En Oracle, los roles predefinidos y más utilizados son CONNECT, RESOURCE y DBA.

CONCLUSIÓN

Como conclusión puedo decir que es importante el saber este tipo de información ya que nos
puede ayudar a tener seguridad en nuestra base de datos, nos puede ayudar a resguardar la
información en contra de los usuarios no admitidos o no reconocidos y nos puede ayudar a evitar
la pérdida y alteración de los datos. También esta información nos puede ayudar para saber los
tipos de usuarios que pueden controlar las operaciones de la base de datos,

FUENTES BIBLIOGRAFICAS

Ortega, G. N. (s. f.). Tipos de usuarios de base de datos diapositivas. SlidShare.com.


https://es.slideshare.net/andersonjesuslopezortega/tipos-de-usuarios-de-base-de-datos-
diapositivas
V. (2021, 14 septiembre). Crear un usuario de base de datos - SQL Server. Microsoft Docs.
https://docs.microsoft.com/es-es/sql/relational-databases/security/authentication-
access/create-a-database-user?view=sql-server-ver15
R. (2020, 29 septiembre). Gestión de usuarios en MySQL. Arteco. https://www.arteco-
consulting.com/gestion-de-usuarios-en-mysql/

Nuñez, S. R. (2018, 18 septiembre). USUARIOS, PRIVILEGIOS Y ROLES DE LAS BASES DE


DATOS. Prezi.Com. https://prezi.com/lgtxy00p1gwa/usuarios-privilegios-y-roles-de-las-bases-
de-datos/

También podría gustarte