13. Administración de Usuarios



Administración de Usuarios

Crear Usuario:

Para crear un usuario en MySQL utilizamos la sentencia GRANT, antes de crear un usuario debes iniciar sesión con un usuario que tenga los permisos necesarios:

-- Crear usuario sin privilegios
GRANT USAGE ON *.* TO cajero IDENTIFIED BY 'cajero1234';

En la instrucción anterior usamos *.* lo cual estamos indicando que el usuario tendrá acceso a todas las bases de datos y todas sus tablas.

Asignar Privilegios:

-- Asignar privilegios a usuario para una tabla
GRANT SELECT ON basededatos.tabla TO cajero;

-- Asignar privilegios a usuario para todas las tablas de la base de datos
GRANT SELECT ON basededatos.* TO cajero;

-- Actualizar Privilegios
FLUSH PRIVILEGES;

-- Visualizar privilegios de usuario
SHOW GRANTS FOR cajero;

Privilegios que se pueden asignar a usuarios:

Privilegio Característica
ALL Para conceder todos los privilegios.
CREATE permite crear nuevas tablas.
DROP Permite borrar tablas.
SELECT Permite seleccionar datos de tablas.
INSERT Permite insertar datos en tablas.
UPDATE Permite usar la sentencia UPDATE.
DELETE Permite usar la sentencia DELETE.

Cambiar Password:

SET PASSWORD FOR cajero@'%' = PASSWORD('cajero123456');

Quitar Privilegios:

Para quitar permisos a un usuario utilizamos la sentencia REVOKE, la sintaxis es similar a la de GRANT:

REVOKE SELECT ON basededatos.tabla FROM cajero;

Eliminar Usuario:

Para eliminar usuarios se utiliza la sentencia DROP USER, antes de eliminar algún usuario debemos quitarle todos los permisos que tenga ya que si intentamos eliminarlo con permisos nos enviara un mensaje de error y no permitirá la eliminación:

DROP USER cajero;