roles y privilegios mysql

12
INTEGRANTES MARCELA DIAZ ALVARO BLANCO *Roles y Privilegios MySQL

Upload: jerson-david-betin-pantoja

Post on 20-Jan-2016

51 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Roles y Privilegios MySQL

INTEGRANTES

MARCELA DIAZ

ALVARO BLANCO

*Roles y Privilegios

MySQL

Page 2: Roles y Privilegios MySQL

* Roles

Un rol es una colección de privilegios del

sistema y de objetos que se otorgan a

usuarios y a otras tareas.

Page 3: Roles y Privilegios MySQL

*TIPOS DE ROLES El rol CONNECECT: permite al usuario conectarse a la base

de datos, crear tablas, vistas, secuencias, sinónimos y otros

objetos en el esquema asociado.

El rol RESOURCE: permite al usuario utilizar los recursos

típicos para la programación de aplicaciones (clusters,

disparadores, paquetes, funciones, etc.)

El rol DBA: permite al usuario realizar cualquier función de

base de datos y disponer de cualquier privilegio.

Page 4: Roles y Privilegios MySQL

*CREAR UN ROL

CREATE ROLE rol [ NOT IDENTIFIED | IDENTIFIED {BY password |

USING [usuario.] paquete | EXTERNALLY | GLOBALLY } ];

La sentencia que permite crear roles es CREATE ROL. Su sintaxis

es la siguiente

Page 5: Roles y Privilegios MySQL

*EJEMPLO1

mysql> GRANT ALL PRIVILEGES ON *.* TO

'marcela'@'localhost' IDENTIFIED BY 'marcela' WITH

GRANT OPTION;

Crear un rol y asignarle privilegios:

mysql> GRANT ALL ON prueba.alumno TO 'ana'@'localhost'

IDENTIFIED BY '123456' WITH GRANT OPTION;

se crea un usuario con todos los privilegios pero

a una sola tabla especifca de una sola base de datos

(privilegios a nivel de tablas)

*EJEMPLO2

Page 6: Roles y Privilegios MySQL

*EJEMPLO_3

mysql> GRANT SELECT ON *.* TO

'juan'@'localhost' IDENTIFIED BY

'123456' WITH GRANT OPTION;

creamos un usuario que solo puede listar todo lo que

este en las base de datos es decir solo puede

ejecutar la consulta SELECT

Page 7: Roles y Privilegios MySQL

*PRIVILEGIOS

Es la capacidad de un usuario dentro de la base

de datos a realizar determinadas operaciones o

acceder a determinados objetos de otros

usuarios.

Page 8: Roles y Privilegios MySQL

*NIVELES DE

PRIVILEGIOS

Globales: se aplican al conjunto de todas las bases de datos en

un servidor. Es el nivel más alto de privilegio, en el sentido de

que su ámbito es el más general.

DE BASE DE DATOS: se refieren a bases de datos individuales, y

por extensión, a todos los objetos que contiene cada base de

datos.

DE TABLA: se aplican a tablas individuales, y por lo tanto, a

todas las columnas de esas tabla.

DE COLUMNA: se aplican a una columna en una tabla concreta.

Page 9: Roles y Privilegios MySQL

*CONCEDER

PRIVILEGIOS Para que un usuario pueda hacer algo más

que consultar algunas variables del sistema

debe tener algún privilegio. Lo más simple

es conceder el privilegio para seleccionar

datos de una tabla concreta. Esto se haría

así:

La misma sentencia GRANT se usa para

añadir privilegios a un usuario existente.

Page 10: Roles y Privilegios MySQL

*EJEMPLO CONCEDER

PRIVILEGIOS

mysql> GRANT SELECT ON prueba.gente TO anonimo;

Query OK, 0 rows affected (0.02 sec)

Esta sentencia concede al usuario 'anonimo' el

privilegio de ejecutar sentencias SELECT sobre la

tabla 'gente' de la base de datos 'prueba'.

Page 11: Roles y Privilegios MySQL

*Revocar privilegios

REVOKE priv_type [(column_list)] [, priv_type [(column_list)]] ...

ON FROM user [, user] ...

mysql> REVOKE SELECT ON prueba.gente FROM anonimo; Query

OK, 0 rows affected (0.05 sec)

Para revocar privilegios se usa la sentencia REVOKE.

La sintaxis es similar a la de GRANT, por ejemplo, para revocar el privilegio

SELECT de nuestro usuario 'anonimo', usaremos la sentencia

Page 12: Roles y Privilegios MySQL

*GRACIAS