Buscar

CEA440-10-permissoes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

* Criando o usuário DBA */ 
CREATE USER 'dba'@'%' IDENTIFIED BY 'senhaMuitoDificil'; 
GRANT ALL ON *.* TO 'dba'@'%' WITH GRANT OPTION; 
 
/* Criando o usuário FULANO */ 
CREATE USER 'fulano'@'localhost' IDENTIFIED BY 'outraSenha'; 
GRANT SELECT,UPDATE,DELETE,INSERT ON BD01.* TO 'fulano'@'localhost'; 
 
/* Criando o usuário CICLANO */ 
CREATE USER 'ciclano'@'192.168.0.45' IDENTIFIED BY 'ehOutraSenha'; 
GRANT ALL ON BD01.* TO 'ciclano'@'192.168.0.45'; 
 
/* Recarregando as permissões na memória do servidor */ 
FLUSH PRIVILEGES; 
 
 
Sintaxe do comando GRANT 
A sintaxe completa do statement GRANT pode ser vista aqui. A sintaxe 
simplificada é: 
GRANT <privilégios> ON <banco de dados>.<tabela> TO 
'<usuario>'@'<origem>' IDENTIFIED BY '<senha>'; 
A definição de senha por IDENTIFIED BY '' é opcional, não sendo necessária 
se o usuário já existe. 
Os privilégios, que podem ser definidos separados por vírgula no espaço 
indicado, são: 
 ALL Equivalente ao conjunto de todos os privilégios abaixo, sem contar 
o privilégio de GRANT 
 ALTER Permite alterar as tabelas e criar índices 
 ALTER ROUTINE Permite alterar as stored procedures 
 CREATE ROUTINE Permite criar novas stored procedures 
 EXECUTE Permite executar stored procedures 
 CREATE Permite criar tabelas e bancos de dados 
 CREATE TEMPORARY TABLES Permite criar tabelas temporárias 
 CREATE USER Permite criar, remover, alterar e inclusive remover os 
privilégios de usuários (não é possível conceder novos privilégios) 
 CREATE VIEW Permite criar e alterar views 
 DELETE Permite apagar linhas 
 DROP Permite apagar views, tabelas, e bancos de dados 
 EVENT Permite manipular os eventos 
 FILE Permite com que o usuário crie e leia arquivos armazenados no 
servidor do banco de dados 
 GRANT OPTION Permite remover e conceder privilégios aos usuários 
 INDEX Permite criar ou apagar índices 
 INSERT Permite inserir novas linhas no banco de dados 
 LOCK TABLES Permite bloquear tabelas onde o usuário possui 
permissão de leitura 
 PROCESS Concede permissões para ler a lista de processos 
executando no servidor 
 RELOAD Permite a utilização de comandos FLUSH 
 SELECT Concede permissão de leitura ao banco de dados ou tabelas 
 SHOW DATABASES Permite ler a lista de bancos no servidor 
 SHOW VIEW Permite ler a estrutura (query geradora) das views 
 SUPER Concede poderes administrativos avançados 
 TRIGGER Permite criar, alterar e apagar triggers 
 UPDATE Permite a atualização de linhas no banco de dados 
 USAGE É equivalente a nenhuma permissão 
 
Caso você altere as permissões de todos os usuários, inclusive do usuário 
ROOT e não consiga mais acessar o banco de dados, você pode iniciar o 
serviço com a opção --skip-grant-tables, conectar com qualquer usuário e 
senha e executar UPDATE mysql.user SET 
Password=PASSWORD('NovaSenhaAqui') WHERE User='root';. 
Note que com esta opção o serviço do MySQL vai ignorar qualquer privilégio e 
dará acesso total a todos que conectarem ao banco de dados, após trocar a 
senha reinicie o serviço sem o parâmetro o quanto antes por razões óbvias. - 
shell> mysql --user=root mysql 
mysql> INSERT INTO user 
 -> VALUES('localhost','monty',PASSWORD('some_pass'), 
 -> 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y'); 
mysql> INSERT INTO user 
 -> VALUES('%','monty',PASSWORD('some_pass'), 
 -> 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y', 
 -> 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y', 
 -> '','','','',0,0,0,0); 
mysql> INSERT INTO user SET Host='localhost',User='admin', 
 -> Reload_priv='Y', Process_priv='Y'; 
mysql> INSERT INTO user (Host,User,Password) 
 -> VALUES('localhost','dummy',''); 
mysql> FLUSH PRIVILEGES; 
 
 
shell> mysql --user=root mysql 
mysql> CREATE USER 'custom'@'localhost' IDENTIFIED BY 'obscure'; 
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP 
 -> ON bankaccount.* 
 -> TO 'custom'@'localhost'; 
mysql> CREATE USER 'custom'@'host47.example.com' IDENTIFIED BY 'obscure'; 
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP 
 -> ON expenses.* 
 -> TO 'custom'@'host47.example.com'; 
mysql> CREATE USER 'custom'@'server.domain' IDENTIFIED BY 'obscure'; 
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP 
 -> ON customer.* 
 -> TO 'custom'@'server.domain';

Outros materiais