Comandos de manipulação de usuários

Propaganda
PERMISSÃO DE USUÁRIOS – Parte 2
Comandos de manipulação de usuários
SHOW GRANTS;
 Retorna todas as permissões existentes no banco de dados para o usuário conectado.
SHOW GRANTS FOR ‘user’@’%’;
 Retorna todas as permissões existentes no banco de dados para o usuário user.
SELECT CURRENT_USER();
 Retorna o usuário conectado.
TRABALHANDO COM A BASE DE DADOS MYSQL
Permissão em nível de usuário
Todas as permissões globais definidas a nível de usuário são listadas na tabela User.
Permissão em nível de base
Todas as permissões definidas a nível de base de dados ficam armazenadas na tabela db.
Permissão em nível de tabela
Todas as permissões definidas a nível de tabela do banco de dados ficam armazenadas na tabela
tables_priv.
Permissão em nível de coluna
Todas as permissões definidas a nível de tabela do banco de dados ficam armazenadas na tabela
columns_priv.
Para efetivar as permissões utilizamos o comando FLUSH PRIVILEGES;
Atividade
Objetivo:
Gerenciar permissão de usuários no banco de dados MySQL.
Necessário ter a base de dados permissao, criada na aula passada.
Forma de entrega: nomealuno.sql com os comandos executados e comentários quando for
necessário
1) Entrar como usuário root via terminal do MySql.
2) Criar um usuário chamado steve com senha “@pp1l&”
3) Sair do usuário root
4) Entrar com o usuário steve
5) Verificar as tabelas existentes na base de dados
•
Colocar como comentário a explicação do que ocorreu.
o Exemplo de comentário em SQL
/* retornou as tabelas pois o usuário está com permissão */
6) Sair e entrar novamente como root
7) Setar para o steve permissão total para base permissao (via comando grant).
8) Repetir os passos de 3 a 6.
9) Criar o usuário bill com senha “pinguim”
10) Setar para o usuário bill permissão para consultar a tabela funcionario.
11) Setar para o usuário bill permissao para acessar a coluna descricao da tabela de
produto.
12) Consultar a tabela user
13) Consultar a tabela db
14) Consultar a tabela tables_priv
15) Consultar a tabela colums_priv
16) Explicar o resultado dessas consultas com as permissões definidas.
17) Remover do usuário bill a permissão para acessar a tabela funcionário.
18) Sair do root
19) Entrar como usuário bill
20) Entrar na base de dados permissao
21) Exibir as tabelas .
22) Estão todas as tabelas? Explique.
23) Executar o comando select * from produto.
24) Executar a consulta válida para o usuário bill na tabela produto.
25) Exibir o usuário conectado.
26) Exibir as permissões do usuário conectado.
27) Logar como root em outro terminal (chamaremos de T2) e o atual T1.
28) T2: Setar para o usuário bill permissão total em outra base de dados já existente.
29) T1: Exibir as permissões do usuário conectado.
30) T2: setar, através de insert na tabela columns_priv, permissão para o usuário bill acessar a
coluna de quantidade da tabela produto.
31) T1: Executar o comando select quantidade, descricao from produto.
32) T2: executar o comando FLUSH PRIVILEGES;
33) T1: Executar o comando select quantidade, descricao from produto
34) Explicar o motivo pelo qual os resultados foram diferentes.
35) T2:Criar um usuário chamado monks com senha a escolher na tabela user com
privilégios de update, insert e delete.
36) T2:Criar permissão para o usuário monks CONSULTAR os registros da tabela produto na
base de dados permissao, via insert na tabela tables_priv.
37) T1: sair do usuário bill;
38) T1: Entrar com o usuário monks;
39) T1: Executar o comando necessário para viabilizar a entrada do usuário monks;
40) Entrar com o usuário monks;
Download