instalei um mysql um uma instancia, defeni uma senha nela, no root, porém eu consigo entrar nela apenas digitando "sudo mysql", isto é um problema gravissimo de segurança, alguem sabe como resolver isto
instalei um mysql um uma instancia, defeni uma senha nela, no root, porém eu consigo entrar nela apenas digitando "sudo mysql", isto é um problema gravissimo de segurança, alguem sabe como resolver isto
Oii, Erick! Tudo bem?
Realmente é perigoso, isso acontece devido às permissões de administrador cedidas aos usuários.
Nessa caso, uma das soluções é configurar essas permissões para apenas usuários autorizados. Segue o exemplo com os passos:
sudo mysql -u root -p
Ao inserir a senha do root
, estaremos dentro do shell do MySQL.
CREATE USER 'seu_usuario'@'localhost' IDENTIFIED BY 'sua_senha';
Conceder todos os privilégios
GRANT ALL PRIVILEGES ON seu_banco_de_dados.* TO 'seu_usuario'@'localhost';
No comando acima, é um exemplo de concessão de privilégios ao novo usuário em todas as tabelas do meu banco de dados.
Conceder privilégios restritos e necessários Ao conceder, é preciso identificar quais operações o usuário precisa realizar para permitir apenas o necessário para desenvolver o trabalho.
FLUSH PRIVILEGES;
EXIT;
Feito isso, vamos aos testes. Digite o seguinte comando para checar se as permissões ocorreram de forma certa conforme as suas escolhas:
mysql -u seu_usuario -p
Contudo, será permitido entrar no MySQL como o seu usuário sem usar o SUDO
solicitando a senha criada para o usuário.
Aproveito para recomendar o nosso curso de Curso de Administração do MySQL: segurança e otimização do banco, por lá é abordado o conteúdo de como criar novos usuários, concessão das permissões e dentre outros temas de forma mais aprofundada.
Espero ter ajudado com a orientação acima.
Bons estudos, Erick!