Seguridad Base De Datos Mysql

Páginas: 7 (1569 palabras) Publicado: 17 de junio de 2012
Universidad tecnológica de la selva

Cómo crear un usuario en MySQL: 3 formas diferentes
MySQL es un sistema de gestión de bases de datos claramente orientado a la web, y una de los síntomas en su arquitectura ha venido siendo que la creación de los usuarios se realiza en la misma sentencia que el permiso (grant) de acceso a una o varias bases de datos. La orientación de MySQL va cambiando conel tiempo y el uso que se le da a las bases de datos cada vez trasciende más el entorno web, actualmente hay tres formas de crear un usuario:

La forma clásica, con la sentencia GRANT
- Nos conectamos con un usuario que tenga privilegios, root, como propietario de la base de datos, los tiene.
$ mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is17 Server version: 5.0.67 Source distribution

Nos conectamos utilizando -u para indicarle el usuario y si quisieramos indicarle un password, deberiamos poner -p (sin añadirle la contraseña), en este caso la cuenta root, al ser una máquina de desarrollo, está desprotegida. - Lanzamos la sentencia GRANT, indicando los permisos que otorgamos, la base de datos y los objetos de la misma sobre losque estamos asignando privilegios, el nombre del usuario y el password:
mysql> GRANT SELECT, INSERT ON test.* TO 'rodrigo'@'localhost' IDENTIFIED BY '123456';

En este ejemplo permitimos al usuario rodrigo que seleccione (SELECT) e inserte (INSERT) en todos los objetos (*) de la base de datos test, además indicamos que el contexto sea la máquina local de la base de datos (localhost), lo queimpedirá que el usuario se conecte desde otras máquinas, y finalmente asignamos un password mediante IDENTIFIED BY. Si quisieramos que el usuario no tuviera un password, deberemos omitir la cláusula IDENTIFIED BY. En el caso de que el modo SQL del servidor estuviera en NO_AUTO_CREATE_USER, la creación de usuarios no estaría permitida a no ser que tuvieran asignado un password no vacío. - Una vez hechoesto, podremos conectarnos con nuestro usuario y realizar las acciones para las que hemos asignado permisos:
$ mysql -u rodrigo -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 19 Server version: 5.0.67 Source distribution

Creación y eliminación de usuario en mysql

Universidad tecnológica de la selva

La sentencia CREATE USER
Apartir de la versión MySQL 5.0.2 existe la posibilidad de crear usuarios sin necesidad de asignarles privilegios, utilizando la sentencia CREATE USER. Por ejemplo, para crear el usuario chable:
$ mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 20 Server version: 5.0.67 Source distribution mysql> CREATE USER 'chable'@'localhost' IDENTIFIED BY'gerardo'; Query OK, 0 rows affected (0,00 sec)

Al igual que con la sentencia GRANT, el contexto 'localhost' define que el usuario solamente se puede conectar desde el servidor de MySQL, y el IDENTIFIED BY define el password del usuario, se puede omitir, para un usuario sin password, siempre que el modo SQL no sea NO_AUTO_CREATE_USER. Conexión con el usuario, utilizando la opción -p:
$ mysql -u chable-p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 22 Server version: 5.0.67 Source distribution

Los privilegios necesarios para ejecutar la sentencia CREATE USER son CREATE USER o bien INSERT en la base de datos mysql. El usuario recién creado no tiene privilegio alguno, por lo que deberemos asignarle permisos utilizando sentencias GRANT(esta vez sin la cláusula IDENTIFIED BY).

Modo hardcore: insertando en la tabla users
Este es un método que MySQL no recomienda demasiado, es un poco más complejo que los otros dos, pero va bien a la hora de resolver problemas, como que por ejemplo alguno de las formas anteriores esté dando algún problema extraño. Para ello es necesario un usuario con privilegio INSERT en la base de datos...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Base de datos mysql
  • Base De Datos Mysql
  • Bases de datos con mysql
  • Bases de datos (MySQL)
  • Bases De Datos Mysql
  • enlazar base de datos con mysql
  • Crear base de datos en mysql
  • Base de datos MySQL

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS