Gestión de permisos MySQL en VPS CentOS6 de forma sencilla

  • Autor Autor hanschrome
  • Fecha de inicio Fecha de inicio
hanschrome

hanschrome

Alfa
Programador
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Buenos días a todos,

Ayer contratamos yo y unos amigos un VPS anual, y estamos dividiendo recursos: Hemos creado hosts virtuales para Apache, hemos creado usuarios en linux con sus correspondientes permisos etc. Pero ahora nos hemos tropezado con que queremos crear bases de datos, y tener permisos únicamente sobre las que hemos creado nosotros, ¿Cómo hacemos eso sin tener que entrar como root en MySQL y sin ningún otro usuario diferente al nuestro cada vez que creamos una base de datos?

Nunca se me había planteado una estructura de permisos de esa manera en MySQL, y no sé cómo hacerlo. Al final acabaré creando un programa que cree bases de datos por línea de comandos con root y le de permisos al usuario en cuestión...

Saludos y muchas gracias a todos.
 
Buenos días a todos,

Ayer contratamos yo y unos amigos un VPS anual, y estamos dividiendo recursos: Hemos creado hosts virtuales para Apache, hemos creado usuarios en linux con sus correspondientes permisos etc. Pero ahora nos hemos tropezado con que queremos crear bases de datos, y tener permisos únicamente sobre las que hemos creado nosotros, ¿Cómo hacemos eso sin tener que entrar como root en MySQL y sin ningún otro usuario diferente al nuestro cada vez que creamos una base de datos?

Nunca se me había planteado una estructura de permisos de esa manera en MySQL, y no sé cómo hacerlo. Al final acabaré creando un programa que cree bases de datos por línea de comandos con root y le de permisos al usuario en cuestión...

Saludos y muchas gracias a todos.

De hecho, si. Primero tienes que crear los usuarios y después asignarle los permisos que requiera. Evidentemente esto lo tienes que hacer como administrador, pero una vez creados, lo más seguro es que usen siempre esas cuentas de usuario.

La referencia: https://dev.mysql.com/doc/refman/5.0/es/create-user.html y https://dev.mysql.com/doc/refman/5.0/es/grant.html
 
El objetivo es ese, pero no consigo que cuando un usuario cree una base de datos, sólo él tenga acceso a ella sin que un administrador esté de por medio, también es un poco chiquismiquis esto, porque en el sistema tenemos sudo activado para todos, pero bueno, si se pueden hacer las cosas limpias, mejor supongo.
 
Para que un usuario pueda crear bases de datos debe tener los permisos para ello.

Por ejemplo, si tienes un usuario que se llama hanschrome, dale estos permisos:


Insertar CODE, HTML o PHP:
GRANT ALL PRIVILEGES hanschrome_[COLOR=#000000][FONT=Arial]%[/FONT][/COLOR].  * TO 'hanschrome'@'%';

de este modo, este usuario solo podrá crear tablas que empiecen con hanschrome_
 
Me gusta esa solución, muchas gracias.
 
Atrás
Arriba