¡Hola, bienvenidos y bienvenidas! Continuando con el curso de MySQL 8 Desde Cero, hoy veremos la configuración de contraseñas y permisos en PhpMyAdmin.
La implementación de políticas de seguridad en una base de datos, garantiza la integridad y seguridad de los datos y solo pueda ser accesible únicamente por los usuarios autorizados. A continuación, veremos algunos aspectos de seguridad básica que podemos aplicar a una base de datos en MySQL.
¡Empecemos!
Aspectos de seguridad a una base de datos
Cuando se realiza una nueva instalación de MySQL desde Xampp, se crea un usuario raíz (administrador) con el nombre de root por defecto; pero no se crea una contraseña, esto está pensado así porque la herramienta de Xampp es utilizada principalmente en entornos de desarrollo de software, así facilitar la accesibilidad y fácil manejo a los desarrolladores de software. Sin embargo, en entornos de producción esto sería una vulnerabilidad.
A Continuación, veremos cómo implementar políticas de seguridad de una base de datos en MySQL desde phpMyadmin.
Modificar contraseña desde phpMyadmin
Para modificar la contraseña del usuario root, en primer lugar, se debe iniciar los servicios de Apache y MySQL desde Xampp. Una vez iniciados los servicios, existen dos maneras de cambiar la contraseña del usuario root.
La primera, es desde la línea de comandos de Windows: en el panel de control de Xampp hacemos clic en el botón “Shell“, se abrirá la línea de comandos de Windows.

Escribimos la siguiente línea de código:
mysqladmin --user=root password "newPassword"

La segunda, forma de modificar la contraseña es desde la ventana de inicio de phpMyAdmin, hacemos clic en el botón “Cuentas de usuarios”.
Seguidamente, en la misma ventana se nos mostrará todos los usuarios creados de MySQL, hacemos clic en “Editar privilegios” del usuario root del servidor localhost.

En esta ventana debemos introducir la nueva contraseña del usuario root (administrador), hacemos clic en el botón “continuar” para guardar los cambios.

Una vez que apliquemos uno de los dos métodos de cambiar contraseña. Seguidamente, debemos configurar el archivo “config.inc.php” para que la nueva contraseña sea reconocida por el servicio de MySQL cuando se inicie en phpMyAdmin; el archivo se encuentra en el directorio xampp/phpMyAdmin.

Una vez en el archivo, buscamos el modo de autenticación, allí editamos la siguiente información:
- auth_type = cookie
- password = newPassword
- AllowNoPassword = false

Para aplicar los cambios realizados debemos reiniciar “Apache” y “MySQL” en el panel de control de Xampp. Abrimos nuestro navegador e ingresamos a phpMyAdmin, aquí nos solicitará el usuario y la contraseña.

Crear un nuevo usuario
En muchas ocasiones necesitaremos crear nuevos usuarios que cuenten con privilegios y asimismo restricciones a ciertas funcionalidades de la base de datos; para esto se crea un nuevo usuario con privilegios restringidos.
Para crear un nuevo usuario desde phpMyAdmin, hacemos clic en cuentas de usuario. Seguidamente, hacemos clic en “agregar cuenta de usuario”. En el formulario registramos los datos del nuevo usuario administrador de la base de datos.

Asignar permisos a un usuario
Asimismo, se deben seleccionar los permisos que se quieren otorgar. En este caso solo seleccionaremos los permisos necesarios para que el usuario pueda sacar copias de seguridad de la información.

Una vez creada la cuenta, podemos ingresar a phpMyAdmin con el nombre y la contraseña asignados del nuevo usuario.
Conclusiones
MySQL es una base de datos muy popular y segura, se vuelve aún más segura al asignar contraseñas de usuario sólidas, con roles y permisos a cada usuario. Estas configuraciones actúan como la primera línea de defensa contra posibles ataques que amenacen la seguridad de nuestra información. Es fundamental reconocer la importancia de establecer contraseñas seguras para garantizar la protección de nuestros datos y mantenerlos fuera del alcance de amenazas potenciales.
En la próxima clase veremos cómo Configurar Contraseñas, Roles y Permisos en MySQL Workbench.
¡Te espero!
Saludos y éxitos.

Victor Peña
Desarrollador de software Backend Developer, experto en Laravel Framework, PHP, JavaScript y MySQL. Creador de contenidos de emprendimiento y desarrollo de software.