MySQL: criando um usuário que pode se conectar a partir de múltiplos hosts

27

Estou usando o MySQL e preciso criar uma conta que possa se conectar a partir do host local ou de outro servidor, ou seja, 10.1.1.1. Então estou fazendo:

CREATE USER 'bob'@'localhost' IDENTIFIED BY 'password123';
CREATE USER 'bob'@'10.1.1.1' IDENTIFIED BY 'password123';
GRANT SELECT, INSERT, UPDATE, DELETE on MyDatabse.* to 'bob'@'localhost', 'bob'@'10.1.1.1';

Isso funciona bem, mas existe alguma maneira mais elegante de criar uma conta de usuário que esteja vinculada a vários IPs ou que precise ser feita dessa maneira?

Minha principal preocupação é que, no futuro, as permissões sejam atualizadas na conta 'bob' e não na outra.

    
por DrStalker 30.09.2010 / 04:13

3 respostas

17

Se você deseja restringir o host e não deseja especificar com base em uma sub-rede ou curinga usando % , essa é a única maneira de fazer isso. Mais detalhes estão disponíveis na documentação do MySQL .

Ainda estou tentando encontrar maneiras de eliminar a sobrecarga ao gerenciar a autenticação em grandes instalações do MySQL e ainda não encontrei uma solução perfeita.

    
por 30.09.2010 / 04:40
6

Vamos começar fazendo um novo usuário chamado "chaminda" dentro do shell do MySQL:

CREATE USER 'chaminda'@'%' IDENTIFIED BY 'password';

A primeira coisa a fazer é fornecer ao usuário a permissão necessária e aqui eu dei toda a permissão para o usuário em particular.

GRANT ALL PRIVILEGES ON * . * TO 'chaminda'@'%';

Recarregue todos os privilégios.

FLUSH PRIVILEGES;

Se você quiser permitir o intervalo de IPs para um usuário em particular, use o seguinte 10.1.1.%

GRANT ALL PRIVILEGES ON * . * TO 'chaminda'@'10.1.1.%';

Nota: Aqui o nome do host =% e isso significa que você pode acessar este servidor de banco de dados a partir de qualquer host. Conceder todos os privilégios ao usuário é um grande risco e essa não é uma prática recomendada. Além disso, você pode substituir o usuário 'chaminda' por 'bob'.

    
por 27.06.2016 / 10:06
-3

O MySQL permite vários curingas em uma linha. Uma possível solução é configurar o Host para o usuário Bob para ser

locahost/10.1.1.1

Referência:

link

    
por 27.05.2014 / 04:47