Páginas

terça-feira, 27 de agosto de 2013

Atribuindo permissões para usuário MySQL


O MySQL trabalha com as seguintes permissões:

Manipulação de Dados
SELECT
Somente Leitura
INSERT
Inserção de Dados
UPDATE
Atualização de Dados
DELETE
Remoção de Dados

Manipulação de Tabelas
CREATE
Criação de novas Tabelas/Bases
ALTER
Modificação de Tabelas/Colunas
DROP
Remocação de Tabelas/Bases

Para definirmos as devidas permissões a um usuário utilizamos o comando GRANT, ex.:
GRANT <permissao> ON <base>.<tabela> TO '<user>'@'localhost' IDENTIFIED BY '<senha>' WITH GRANT OPTION;
Para adicionar permissão de leitura, inserção e modificação:
GRANT select, insert, update ON gaudencio.* TO 'emerson'@'%' WITH GRANT OPTION;
E para visualizar as permissões que acabamos de aplica usamos o comando:
SHOW GRANTS FOR 'emerson'@'%';


 Obs.: O * representa tudo, no exemplo acima definimos as permissões de SELECT, INSERT e UPDATE na base de dados gaudencio em todas as suas tabelas.

Obs[2].: Para definir as mesmas permissões para conexões externas, devemos repetir o comando e substituir o localhost por % .

Para definirmos todas as permissões para um usuário e o tornar DBA(Administrador) de sua base de dados podemos utilizar o parametro ALL PRIVILEGES em permissões, ex.:
GRANT ALL PRIVILEGES ON gaudencio.* TO 'emerson'@'%' WITH GRANT OPTION;


Para remover uma permissão é utilizado o comando REVOKE, ex.:
REVOKE DROP, DELETE ON gaudencio.* FROM 'emerson'@'%';
No exemplo acima estamos revogando/removendo as seguintes permissões: DROP e DELETE do usuário emerson sobre a base de dados gaudencio.


Obs.: Podemos ver que o SHOW GRANTS muda a visualização das permissões quando revogamos uma permissão do usuário, com isso ele lista quais as permissões que este usuário possui.

Também podemos revogar/remover todas as permissões do usuário utilizando o parâmetro ALL PRIVILEGES, ex.:

REVOKE ALL PRIVILEGES ON gaudencio.* FROM 'emerson'@'%';



Obs.: A permissão USAGE significa Sem Privilégios.

Bom pessoal, espero que essa dica para atribuição de permissão de usuários no MySQL possa ajudar aqueles que estejam procurando por este conteúdo. Que a Graça e Paz estejam com todos.

Fonte:

3 comentários:

  1. Um exemplo de como postar um conteúdo de utilidade. Simplicidade nas palavras, direto ao assunto, sem complicações. Muito bem explicado. Muito obrigado!!!

    ResponderExcluir
  2. Digno de um Mestre, simples, claro e direto! Parabéns

    ResponderExcluir