Programação  
 
Rede de conhecimento computador >> Programação >> Programação PHP /MySQL >> Content
Como você cria um usuário público que exige senha para visualizar o banco de dados no MySQL?
Veja como criar um usuário público no MySQL com autenticação de senha, especificamente para acesso somente leitura a um banco de dados:

1. Conecte -se ao MySQL como um usuário privilegiado:

Primeiro, você precisa se conectar ao seu servidor MySQL como usuário com privilégios administrativos (como `root`). Use o cliente MySQL:

`` `BASH
Mysql -u Root -p
`` `

Digite a senha root quando solicitado.

2. Crie o usuário:

Use a instrução `Create User` para criar o novo usuário. Substitua `'public_user' e` 'your_password' 'pelo nome de usuário e senha desejados. A cláusula `identificada por 'define a senha do usuário. O `%` significa de qualquer host.

`` `SQL
Crie usuário 'public_user'@'%' identificado por 'your_password';
`` `

Nota de segurança importante: O uso de `'%'` permite que o usuário se conecte de * qualquer host *. Isso geralmente é * não * uma boa ideia por razões de segurança. Se você souber que o usuário estará conectando apenas a partir de um endereço IP específico ou nome do host, substitua `'%'` com esse endereço (por exemplo, `'public_user'@'192.168.1.100' 'ou' 'public_user'@'yourDomain.com'). Por exemplo:

`` `SQL
Crie o usuário 'public_user'@'192.168.1.100' identificado por 'your_password';
`` `
Isso permitiria apenas ao usuário se conectar do endereço IP `192.168.1.100`.

3. Conceda privilégios somente leitura:

Use a instrução `Grant` para fornecer ao usuário acesso somente leitura ao banco de dados específico. Substitua `your_database` pelo nome do banco de dados ao qual deseja conceder acesso.

`` `SQL
Grant Selecione em seu_database.* Para 'public_user'@'%';
`` `

* `Select`:permite que o usuário leia dados das tabelas no banco de dados.
* `your_database.*`:especifica que o privilégio se aplica a todas as tabelas em `your_database`.
* `Para 'public_user'@'%'`:especifica o usuário e o host para o qual o privilégio é concedido.

4. Privilégios de descarga:

Depois de conceder privilégios, você precisa liberar as tabelas de privilégio para fazer as alterações entrarem em vigor.

`` `SQL
Privilégios descarregados;
`` `

5. Saia mysql:

`` `SQL
saída;
`` `

Exemplo completo:

`` `BASH
MySQL -u Root -p # Connect como root

Digite sua senha root quando solicitado



Crie o usuário 'public_user'@'%' identificado por 'mySecurePassword123!';
Grant Selecione em seu_database.* Para 'public_user'@'%';
Privilégios descarregados;
saída;
`` `

Explicação e considerações importantes:

* `Criar usuário`: Cria uma nova conta de usuário do MySQL.
* `concessis ': Atribui permissões específicas (privilégios) a um usuário.
* `Flush Privileges`: Recarregue as tabelas de concessão. Isso é * essencial * depois de fazer alterações nos privilégios do usuário; Caso contrário, as alterações podem não entrar em vigor imediatamente.
* `identificado por`: Define a senha do usuário. Escolha uma senha forte!
* Práticas recomendadas de segurança:
* Limite o acesso do host: Como mencionado, evite usar `'%'` para o host, se possível. Restringir o usuário a conectar -se apenas a endereços IP conhecidos e confiáveis.
* Princípio do menor privilégio: Conceda apenas os privilégios mínimos que o usuário precisa. Nesse caso, `select` é suficiente para acesso somente leitura. Evite conceder 'todos os privilégios', a menos que seja absolutamente necessário.
* Complexidade da senha: Aplicar políticas de senha fortes. Use uma mistura de letras, números e símbolos superiores e minúsculos. Considere usar o plug -in de validação de senha do MySQL para aplicação de senha mais forte.
* ssl/tls: Para ambientes de produção, sempre criptografa as conexões entre o cliente e o servidor MySQL usando SSL/TLS para proteger a senha e os dados transmitidos pela rede.
* Privilégios alternativos: Em vez de conceder `selecione` em todo o banco de dados (` your_database.*`), Você pode conceder` selecione` apenas em tabelas específicas:

`` `SQL
Grant Selecione em seu_database.table1 para 'public_user'@'%';
Grant Selecione em seu_database.table2 para 'public_user'@'%';
`` `
Isso é ainda mais seguro, pois limita o acesso apenas às tabelas necessárias.
* Auditoria: Considere ativar o log de auditoria do MySQL para rastrear quem está acessando o banco de dados e quais consultas elas estão executando.

Conectando -se com o novo usuário:

Para conectar usando o novo usuário:

`` `BASH
mysql -u public_user -p -h your_mysql_host -d your_database
`` `

* `-U Public_User`:especifica o nome de usuário.
* `-p`:solicita a senha.
* `-H Your_mysql_host`:especifica o nome do host ou o endereço IP do seu servidor MySQL. Se conectar -se da mesma máquina, você pode omitir isso ou usar `localhost` ou` 127.0.0.1`.
* `-D your_database`:especifica o banco de dados para se conectar.

Depois de executar este comando, você será solicitado a inserir a senha do `public_user`.

Seguindo estas etapas e considerando as recomendações de segurança, você pode criar um usuário público com acesso somente leitura ao seu banco de dados MySQL de maneira segura e controlada. Sempre priorize a segurança ao conceder acesso aos seus dados.

Anterior :

Próximo :
  Os artigos relacionados
·Como escrever um comando Informix SQL Update 
·Como executar um arquivo em lotes em PHP 
·Como você conecta o DB2 e o MySQL? 
·O código HTML para vários logins de usuários 
·Como remover uma declaração XML no PHP 
·Titanium PHP Tutorial 
·Como usar o PHP com uma impressora térmica 
·Qual é a maneira correta de conectar um banco de dados…
·Como projetar um banco de dados on-line Livraria 
·Como testar FFmpeg em PHP 
  Artigos em destaque
·Como executar um relógio em uma página da Web usando …
·Como alterar BGs em Basic Game Maker 
·Como construir aplicações Flash 
·Como analisar XML em Ruby on Rails 
·Como converter HEX para RGB em Java 
·Como Fazer um Botão Tkinter Inativo 
·Como imprimir um documento usando o Visual Basic 6.0 
·Como editar um arquivo UDF 
·Como consertar uma JVM encerrado. Código de saída = 1…
·Como criar um projeto VBA para e-mail 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados