Usuarios y privilegios
Lo primero que debemos de realizar es entrar con nuestra cuenta de root.
Este ejemplo esta realizado con MyQSL Workbench 6.3:
Introducimos nuestra contraseña de usuario root y presionamos ok
El parte que dice MANAGEMENT seleccionamos Users and Privileges
A continuación nos apararece una lista de usuarios asociados a la conexión de MySQL.
Ahora vamos agregar una nueva cuenta en la parte inferior selecionamos
Add Account
En la pestaña de Login Metemos los siguientes datos:
- Login Name: adminysql
- Authentication Type: Standard
- Limit to Host Matching: localhost
- Password: admin
- Confirm Password: admin
En la pestaña Account Limits.Define límites para la cuenta de usuario,
como el número máximo de consultas, actualizaciones, conexiones y conexiones
simultáneas que una cuenta puede ejecutar en una hora.Lo dejamos igual.
En la parte de Adminstrative Roles.Para ayudar en la asignación de
privilegios a los usuarios de MySQL Server, MySQL Workbench introduce el
concepto de funciones administrativas. Las funciones son una forma rápida de
conceder un conjunto de privilegios a un usuario, en función del trabajo
que el usuario debe llevar a cabo en el servidor.También es posible asignar
múltiples funciones a un usuario. Para asignar funciones, haga clic en la
Cuenta de usuario que desea modificar y, a continuación, haga clic en la
ficha de Funciones administrativas. A continuación, haga clic en las
casillas de verificación de acuerdo con las funciones que desea asignar al
usuario. Después de seleccionar un rol para un usuario, verá los privilegios
acumulados en el panel Privilegios globales asignados al usuario. Por
ejemplo, si selecciona la función BackupAdmin, los privilegios otorgados
incluyen EVENT, LOCK TABLES, SELECT, SHOW DATABASES. Si también selecciona
el rol de ReplicationAdmin, la lista de privilegios se expande para incluir
REPLICATION CLIENT, REPLICATION SLAVE y SUPER.
Estas funciones están disponibles:
- DBA: Concede todos los privilegios
- MaintenanceAdmin: concede privilegios para mantener el servidor
- ProcessAdmin: otorga privilegios para supervisar y eliminar procesos de usuario
- UserAdmin: otorga privilegios para crear usuarios y restablecer contraseñas
- SecurityAdmin: otorga privilegios para administrar los inicios de sesión y conceder y revocar los privilegios del servidor
- MonitorAdmin: concede privilegios para supervisar el servidor
- DBManager: otorga privilegios para administrar bases de datos
- DBDesigner: concede privilegios para crear y realizar ingeniería inversa en cualquier esquema de base de datos
- ReplicationAdmin: concede privilegios para configurar y administrar la replicación
- BackupAdmin: concede privilegios necesarios para realizar copias de seguridad de bases de datos
- Custom: Lista otros privilegios (personalizados) asignados a la cuenta de usuario
Nota:En este ejemplo vamos a asignar todos los roles adminstrativos menos custom.
En la pestaña de Schema Privileges vemos que estan selecionados todos los privilegios y por último
selecionamos Apply
Conclusión
Hasta aquí vimos como se creo el nuevo usuario con todos los privilegios de mysql en adelante mostraremos
la parte de usuario de mysql ya que este tutorial esta enfocado a desarrolladores de software.Algo
muy importante es que usuario de nuestra aplicación web tenga pocos privilegios ya que así, se evita
la inyección de sql.
Referencias
Documetación de Mysql Workbench