Gestión de roles

Los roles son entidades que agrupan conjuntos de permisos y privilegios. Permiten simplificar la administración de permisos al asignar roles específicos a usuarios en lugar de configurar permisos individuales para cada usuario. Esto simplifica la gestión de permisos, especialmente en sistemas con muchos usuarios y complejas estructuras de permisos.

La asignación de permisos a un rol se hace igual que a los usuarios.

Creación de roles

CREATE ROLE '<rolename>'@'<host>';

Por ejemplo, si quiero crear un role llamado employee

CREATE ROLE 'employee'@'%';

Eliminación de roles

Para eliminar un role, primero debemos revocar todos sus permisos. Una vez revocados los permisos, ya podemos eliminarlo.

DROP ROLE '<rolename>';

Por ejemplo, si quiero eliminar un role llamado employee

DROP ROLE 'employee';

Asignar / revocar roles a usuarios

Para asignar un role a un usuario se utiliza el comando GRANT y después activar el role

GRANT '<rol_name>' TO '<username>';
SET DEFAULT ROLE <rol_name> TO '<username>';

Para quitar un rol a un usuario se utiliza el comando REVOKE

REVOKE '<rol_name>' FROM '<username>';

Por ejemplo

# Añade el role employee al usuario mikel
GRANT 'employee' TO 'mikel';
SET DEFAULT ROLE 'employee' TO 'mikel';
# Quita el role employee del usuario mikel
REVOKE 'employee' FROM 'mikel';

Last updated