atividade56208
2 pág.

atividade56208


DisciplinaBanco de Dados II1.031 materiais5.980 seguidores
Pré-visualização1 página
____________________________________________ATIVIDADE DA AULA 07
Você deverá responder as questões a seguir e enviá-las por
meio do Portfólio \u2013 ferramenta do ambiente de aprendizagem
UNIGRANET. Em caso de dúvidas, envie mensagem para o
e-mail felipe.perez@unigran.br
Faça uma pesquisa na internet da utilização do Gerenciamento de Usuários e sua 
aplicação no MySQL. Deverá conter as vantagens, utilização e pelo menos um 
exemplo.
Resp.
O MySQL apresenta uma estratégia para controle de acessos bastante flexível e
robusta que permite controlar as ações de cada usuário em diversos níveis dentro do
sistema. Portanto, é possível controlar quais os comandos cada usuário pode executar,
bem como em qual nível de dados: em apenas um banco de dados, tabela ou coluna. 
Além disto, pode-se fazer um controle apurado levando-se em conta o host
(máquina cliente) de onde a conexão com o servidor MySQL foi estabelecida. Desta
forma, é factível que a partir do host local o usuário possua privilégios distintos dos que
estão disponíveis quando o acesso é feito a partir de um host remoto.
Assim, torna-se viável uma definição de privilégios de forma a conceder apenas
os acessos necessários a cada aplicação que utiliza o MySQL, evitando que sejam feitos
acessos indevidos aos dados. 
Para criar um usuário deve ser utilizado o comando SQL CREATE USER: 
CREATE USER 'paulo'@'localhost' IDENTIFIED BY '@[cont12#'; 
Para remover um usuário existente deve ser utilizado o comando DROP USER: 
DROP USER 'paulo'@'localhost';
O sistema de privilégios do MySQL garante que todos usuários possam fazer
exatamente as operações que lhe é permitido. Quando você conecta a um servidor
MySQL, sua identidade é determinada pela maquina de onde você conectou e o nome
de usuário que você especificou. 
O sistema concede privilégios de acordo com sua identidade e com o que você
deseja fazer. 
Ao conceder algum privilégio ao usuário, ele poderá executar o comando que ele
recebeu o privilégio em um determinado local específico. Os mais comuns são:
mailto:felipe.perez@unigran.br
SELECT, INSERT, UPDATE, ALTER, DROP, INDEX e GRANT OPTION. A sintaxe
é:
GRANT priv [(colunas)] [, priv [(colunas)]] ... 
ON {*.* | db.* | db.tabela} 
TO usuario [IDENTIFIED BY 'senha'] 
[, usuario [IDENTIFIED BY 'senha']] ... 
[WITH [GRANT OPTION | 
MAX_QUERIES_PER_HOUR contador | 
MAX_UPDATES_PER_HOUR contador | 
MAX_CONNECTIONS_PER_HOUR contador]] 
Limitando os recursos por usuário 
O gerenciamento de três recursos é introduzido no nível de usuário individual: 
\u2022 Número de todas as consultas por hora: Todos os comandos que podiam ser 
executados por 
um usuário. 
\u2022 Número de todas as atualizações por hora: Qualquer comando que altera qualquer 
tabela ou 
banco de dados.
Número de conexões feitas por hora: Novas conexões abertas por hora. 
Todos os usuários não são limitados por padrão no uso dos recursos acima, a menos que
os limites sejam garantidos a eles. Estes limites podem ser concedidos apenas através do
GRANT (*.*) global, usando esta sintaxe: 
 
GRANT ... WITH MAX_QUERIES_PER_HOUR N1 
MAX_UPDATES_PER_HOUR N2 
MAX_CONNECTIONS_PER_HOUR N3;