Esta es una entrada corta pero útil. A veces viene de maravilla saber cómo darle permisos a un usuario en MySQL de tal modo que realice las operaciones básicas de un CRUD o ABC.
Veamos cómo crear un usuario y darle permisos de:
Esto lo haremos con el comando GRANT en MySQL. Vamos allá.
Nota antes de todo: recuerda que, para crear usuarios y dar permisos, debes tener los permisos para dar permisos. Suena raro, pero en conclusión debes poder crear usuarios y administrar privilegios.
Recomiendo hacerlo con el usuario root si es que tienes acceso a él.
También recomiendo leer una introducción a la CLI de MySQL en caso de que no sepas usarla.
Este paso es opcional si tú ya tienes el usuario, pero de todos modos mostraré cómo crearlo. Recuerda siempre usar contraseñas seguras, aleatorias y largas en caso de que tu app esté en internet o en un lugar público.
Creamos el usuario con:
CREATE USER 'tu_usuario'@'localhost'
IDENTIFIED BY 'una_contraseña_muy_larga';
Cambia el usuario y la contraseña, así como el host si lo requieres. En mi caso lo hice así para un proyecto escolar:
No está de más mencionar que le tomé una foto al código gracias a Polacode, una extensión de Visual Studio Code.
Ahora simplemente le asignamos permisos a ese usuario sobre una base de datos o tabla. El código es:
GRANT SELECT, INSERT, UPDATE, DELETE
ON base_de_datos.tabla TO
'usuario_que_creaste'@'localhost'
IDENTIFIED BY 'la_contraseña_que_pusiste';
Aquí viene algo importante y lo explicaré detalladamente. Sobre todo en lo que va después de ON
.
Si quieres darle permisos en todas las bases de datos a todas las tablas, usa ON *.*
En caso de que sea únicamente a una base de datos, pero a todas las tablas dentro de ella, usa ON nombre_de_la_base_de_datos.*
Por otro lado, si deseas que sea únicamente una base de datos y una tabla, escribe ON nombre_de_la_base_de_datos.nombre_de_la_tabla
.
Para mi caso específico tuve que darle permisos sobre todas las tablas de la base de datos maquila_escuela. Quedó así:
De esta manera le di permisos a mi usuario que hube creado anteriormente.
Esto fue una recomendación de mi profesor y ahora que lo pienso tenía razón. No existe la seguridad absoluta y tal vez un atacante pueda apoderarse de nuestra app o hacer una inyección SQL.
Si restringimos el usuario y le damos únicamente los permisos básicos, no podrá dañar otras bases de datos.
También podemos pensarlo desde el enfoque de un administrador de una base de datos: puede que haya otros usuarios que no deben ver información de otra base de datos o tabla.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.
Ver comentarios
Excelente amigo me salvaste!!!!