SEGURANÇA E ADMINISTRAÇÃO DE BANCOS DE DADOS 5 Felipe Torres
Segurança Conceitos Gerais II
Medidas de controle Para garan:r a segurança de um banco de dados são u:lizadas quatro medidas de controle: Controle de Acesso. Controle de inferência. Controle de fluxo. Criptografia dos dados.
Controle de Acesso O DBA(administrador de banco de dados) é a autoridade central para gerenciar o banco de dados. A conta de superusuário permite que o DBA, execute ro:nas diferenciadas dos demais usuários. Entre as ro:nas diferenciadas estão as ro:nas de conceder e revogar privilégios das contas ou grupos de usuário.
Controle de Acesso Criação de conta Esta ação resulta na criação de um usuário no SGBD. No MySQL essa ação é feita com o comando: CREATE USER torres'@'localhost' IDENTIFIED BY 123';
Controle de Acesso Concessão de privilégio Esta ação resulta na concessão de privilégio para um determinado usuário ou grupo. No MySQL existem diversos privilégios. Alguns são? PRIVILÉGIO ALL TODOS OS PRIVILÉGIOS. DESCRIÇÃO SELECT PRIVILÉGIO DE CONSULTAR UMA DETERMINADA BASE. USAGE PRIVILÉGIO DE NÃO TER PRIVILÉGIOS.
Controle de Acesso Concessão de privilégio Esta ação resulta na concessão de um privilégio para um usuário no SGBD. No MySQL essa ação é feita com o comando: GRANT USAGE ON Ic.* TO torres'@'localhost' WITH MAX_QUERIES_PER_HOUR 90;
Controle de Acesso Revogação de privilégio Esta ação resulta na revogação de um privilégio concedido a umusuário no SGBD. No MySQL essa ação é feita com o comando: REVOKE INSERT ON *.* FROM 'jeffrey'@'localhost';
Controle de Acesso Por mo:vos de segurança cada pessoa que acessa o banco de dados diretamente deve ter um usuário no SGBD. Para facilitar a rastreabilidade das ações de um determinado usuário o sistema deve guardar os registros das ações. Esses registros são chamados de log do sistema.
Log do sistema O log do sistema é uma ferramenta bastante importante quando ocorre uma adulteração no banco de dados. A auditoria no banco de dados é feita nessas situações com base no log do sistema. Que por muitas vezes é chamado também de trilha de auditoria.
Confidencialidade dos dados Os bancos de dados podem armazenar dados que devem possuir uma proteção de acesso devido ao seu grau de confidencialidade. Normalmente mede- se o grau de sensibilidade dos dados que pode conceituado como a importância dos dados para o seu proprietário.
Confidencialidade dos dados Vários fatores devem ser considerados antes de decidir se é seguro ou não a revelação dos dados. Basicamente podemos citar três fatores: Disponibilidade de dados Aceitabilidade de acesso Garan:a de auten:cidade
Disponibilidade de dados Se um usuário es:ver atualizando um campo, então esse campo torna- se inacessível e outros usuários não devem visualizar esses dados. Este bloqueio é temporário e apenas garante a não revelação de dados imprecisos. Esse tratamento normalmente é feito pelo mecanismo de controle de concorrência.
Aceitabilidade de acesso Os dados só devem ser revelados a usuários autorizados. Um DBA pode negar uma solicitação de usuário mesmo que esta não acesse diretamente um item de dados confidenciais. Os dados solicitados podem revelar informações sobre os dados confidenciais.
Garan:a de auten:cidade Antes de conceder acesso, certas caracterís:cas externas sobre o usuário também podem ser consideradas. Por exemplo, um usuário só pode ter acesso permi:do durante as horas de trabalho. O sistema pode rastrear consultas anteriores para garan:r que a combinação de consultas não revele dados confidenciais.
Propagação de privilégios Com a u:lização do comando GRANT OPTION o usuário proprietário da estrutura permite ao outro usuário a concessão de privilégios para aquela estrutura. C DBA B D E
Controle de acesso baseado em papéis O controle de acesso baseado em papéis surgiu nos anos 90 como uma alterna:va para impor e gerenciar a segurança em sistemas em grande escala. Seu conceito é que os privilégios são associados a papéis organizacionais, em vez de usuários individuais. Esses papéis são associados aos usuários.
Controle de acesso baseado em papéis Os comandos CREATE ROLE e DESTROY ROLE são u:lizados para criar e destruir papéis, respec:vamente. Os comandos GRANT E REVOKE são u:lizados para atribuir ou revogar privilégios ao papel. Vários usuários podem ser atribuídos a um único papel.
Controle de acesso baseado em papéis Um papel pode ser raiz de uma hierarquia de papéis, onde um papel superior obtém todos os atributos dos filhos. CONSULTOR DBA GERENTE VENDEDOR