Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 6 
 
 
 
: 
Em um sistema gerenciador de banco de dados, a segurança da 
informação se dá em dois níveis: interno e externo. No nível externo, a 
proteção dos dados é exercida pelos mecanismos de segurança de rede, 
providos pelo sistema operacional e outras ferramentas acopladas, como 
firewall, antivírus, entre outros. Já no nível interno, a segurança é 
exercida pelo próprio SGBD, no que diz respeito aos níveis de acesso aos 
dados, que são concedidos por meio da linguagem DCL. Com essa 
linguagem, é possível definir quem tem permissão de visualizar ou 
atualizar cada coluna de cada tabela criada no âmbito de um ba nco de 
dados. Cabe ao administrador de dados, também conhecido como DBA, 
definir esses níveis de permissão, e não ao programador, que estará 
limitado a esses níveis de permissão. 
 
 
1.1 Criando novos usuários 
 
Antes de falarmos em segurança da informação e m um banco de dados, 
precisamos ter um elenco de usuários ativos para gerenciar seus acessos 
e privilégios quanto ao banco de dados em tela. 
 Para ter acesso ao formulário de criação de novos usuários, bem como a 
configuração de seus acessos, abra o PhpMyAdmin, clique no banco de 
dados desejado (“EscolaPrime”, por exemplo), e acione a aba “Privileges”. 
 
Ao término desta aula você será capaz de gerenciar a segurança e o 
compartilhamento de dados no SGBD. 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 7 
 
 
 
Figura 1 - Formulário de criação de usuários e configuração de seus privilégios. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Para adicionar uma nova conta de usuário, siga este passo a passo: 
 Clique no link “Add user acount” (adicione conta de usuário) e observe a 
formação de uma página contendo um formulário de usuários: 
 
Figura 2 - Campos cadastrais do novo usuário que está sendo criado. 
Por default, o usuário “root”, que é criado 
automaticamente no ato da instalação do MySQL, recebe 
todos os privilégios possíveis para acesso aos bancos de 
dados criados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 8 
 
 
 Na sequência, pelo menos, preencha o nome do usuário e clique por 
sobre o botão “Generate” para que uma nova senha seja 
automaticamente gerada pelo PhpMyAdmin. Caso queira de fato gerar 
uma senha manualmente, basta preencher os demais campos antes 
deste botão. 
 Rolando a página um pouco para baixo, vemos que ainda há campos a 
serem preenchidos neste formulário. O próximo conjunto de campos se 
refere às permissões de acesso deste usuário que está sendo criado. 
Veja, na figura abaixo, que podemos estabelecer exatamente que 
comandos esse usuário pode executar neste banco de dados. 
 
Figura 3 - Continuação do formulário anterior. 
 
 
 
 
 
Observe que o PhpMyAdmin divide os comandos em três 
grupos. O da esquerda engloba os comandos DML. Na 
parte central, ele concentra os comandos DDL e, por fim, 
os comandos DCL e demais comandos de administração 
do banco de dados, mais à direita. 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 9 
 
 
 
 
 Rolando um pouco mais para baixo (ou mais à direita, dependendo da 
responsividade de seu navegador), vemos mais um conjunto de campos a 
serem preenchidos. Este grupo de campos se refere a eventuais limites 
de acessos por parte do usuário que está sendo criado. Como podemos 
observar na figura abaixo, o PhpMyAdmin permite estabelecer limites de 
consultas (“queries”), atualizações (“updates”), e conexões 
(“connections”) por hora, além do número máximo de conexões 
simultâneas (“max user connections”). 
 
 
Figura 4 - Continuação do formulário anterior. 
 
 
 
 
 
 
 
 
 Por fim, role a página até o fim e perceba que o PhpMyAdmin ainda 
oferece a oportunidade de estabelecermos alguns requisitos de 
segurança para o banco de dados. A primeira opção (vide figura a seguir) 
suprime qualquer requisito de segurança adicional. As outras opções, 
porém, forçam que o programa ou comando que i rá interagir com o banco 
O valor “zero”, quando informado em quaisquer desses 
campos, remove o limite dos respectivos requisitos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 10 
 
 
de dados forneça um dos protocolos especificados, inclusive outro 
protocolo a ser informado nos três últimos campos de texto. Dependendo 
do tipo de banco de dados que se esteja definindo, este requisito pode 
ser fundamental, como é o caso dos bancos de dados que lidam com 
cartões de crédito e contas bancárias. 
 
Figura 5 – Continuação do formulário anterior. 
 
 Finalmente, chegamos ao término da definição de segurança deste 
banco de dados. Para executar todos os parâmetros informados neste 
formulário, basta clicar no botão “Go”, como ilustrado na figura acima. 
 Considerando que 
demos total privilégio 
ao João Marcelo, o 
PhpMyAdmin executou 
o seguinte comando 
DCL: 
CREATE USER 'João 
Marcelo Lyra'@'%' 
IDENTIFIED WITH 
mysql_native_pass
word AS 
'***';GRANT 
SELECT, SHOW 
DATABASES, CREATE 
VIEW, SHOW VIEW 
Figura 6 - Página de feedback da criação do usuário. 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 11 
 
 
ON *.* TO 'João Marcelo Lyra'@'%' REQUIRE NONE WITH 
MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 
MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;GRANT 
ALL PRIVILEGES ON `escolaprime`.* TO 'João Marcelo 
Lyra'@'%'; 
Você pode ainda editar os privilégios concedidos no formulário seguinte, 
como podemos visualizar ao lado. 
 
1.2 Editando privilégios de usuários 
 
Experimente editar as permissões, desmarcando todas as caixas de 
verificação dos comandos das colunas do meio e da direita, deixando 
apenas as permissões para os comandos DML. Depois de clicar no botão 
“Go”, você deverá visualizar a seguinte página, contendo os comandos 
REVOKE e GRANT. 
 
Figura 7 - Desmarcando as permissões para comandos de estrutura ( Structure) e administração 
(Administrat ion). 
 
Na prática, o PhpMyAdmin executou dois comandos DCL: 
REVOKE ALL PRIVILEGES ON `escolaprime`.* FROM 'João 
Marcelo Lyra'@'%'; 
GRANT SELECT, INSERT, UPDATE, DELETE ON 
`escolaprime`.* TO 'João Marcelo Lyra'@'%'; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 12 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 8 - Painel de privilégios dos usuários. 
Agora é com você. Exercite o comando REVOKE, DENY e 
GRANT experimentando editar os privilégios desse usuário. 
Use o painel de privilégios ilustrado abaixo.

Mais conteúdos dessa disciplina