TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

User Account Control no MySQL

Seminário: User Account Control no MySQL. Pesquise 859.000+ trabalhos acadêmicos

Por:   •  18/11/2013  •  Seminário  •  692 Palavras (3 Páginas)  •  321 Visualizações

Página 1 de 3

Gerenciamento de Permissão em Base de dados

Prof. Marcelo Siedler

Objetivos do documento:

• Apresentar os conceitos relacionados a permissão de usuários em bases de dados.

Gerenciando contas de usuários no MYSQL

O MySQL permite o gerencimanto de contas de usuários de forma que, dependendo da aplicação que irá utilizar o sistema, pode-se definir permissões de acessos adequadas, visando evitar que o usuário realize operações que o mesmo não está apto ou visualize dados não disponíveis para ele.

CRIANDO USUÁRIOS

O comando "create user" é a forma mais rápida de criar um usuário e definir sua senha.

mysql> CREATE USER fulano IDENTIFIED BY 'senha';

Saia do prompt MySQL e entre com o usuário novo:

# mysql –u fulano -p

mysql>

O usuário é criado mas o mesmo não tem permissão nenhuma na base de dados, podemos tentar visualizar o conteúdo das bases de dados ou criar nossa base de dados específica que não será possível realizar as operações.

Para isso precisamos gerenciar as permissões de usuário através dos comandos GRANT e REVOKE que veremos posteriormente.

Para excluir o usuário:

mysql> DROP USER fulano;

Alterar senha do usuário (exceto root):

SET PASSWORD FOR 'estagiario' = PASSWORD('nova_senha');

Comandos GRANT e REVOKE

Os comandos GRANT e REVOKE permitem aos administradores do sistema criar usuários e conceder e revogar direitos aos usuários do MySQL em quatro níveis de privilégios:

• Nível Global: Privilégios globais aplicam para todos os bancos de dados em um determinado servidor. Estes privilégios são armazenados na tabela mysql.user. GRANT ALL ON *.* e REVOKE ALL ON *.* concederão e revogarão apenas privilégios globais.

• Nível dos bancos de dados: Privilégios de bancos de dados aplicam-se a todas as tabelas em um determinado banco de dados. Estes privilégios são armazenados nas tabelas mysql.db e mysql.host. GRANT ALL ON db.* e REVOKE ALL ON db.* concederão e revogarão apenas privilégios de banco de dados.

• Nível das tabelas: Privilégios de tabelas aplicam-se a todas as colunas em uma determinada tabela. Estes privilégios são armazenados na tabela mysql.tables_priv. GRANT ALL ON db.table e REVOKE ALL ON db.table concederão e revogarão apenas privilégios de tabelas.

• Nível das colunas: Privilégios de colunas aplicam-se a uma única coluna em uma determinada tabela. Estes privilégios são armazenados na tabela mysql.columns_priv.

Para instruções de níveis de tabela e coluna estão disponíveis os seguintes níveis de privilégios:

ALL [PRIVILEGES]

Configura todos os privilégios simples exceto WITH GRANT OPTION

ALTER

Permite o uso de ALTER TABLE

CREATE

Permite o uso de CREATE TABLE

CREATE TEMPORARY TABLES

Permite o uso de CREATE TEMPORARY TABLE

DELETE

Permite o uso de DELETE

DROP

Permite o uso de DROP TABLE.

EXECUTE

Permite que o usuário execute stored procedures (MySQL 5.0)

FILE

Permite o uso de SELECT ... INTO OUTFILE e LOAD DATA INFILE.

INDEX

Permite o uso de CREATE INDEX e DROP INDEX

INSERT

Permite o uso de INSERT

LOCK TABLES

Permite o uso de LOCK TABLES em tabelas nas quais se tem o privilégio SELECT.

PROCESS

Permite o uso de SHOW FULL PROCESSLIST

REFERENCES

Para o future

...

Baixar como (para membros premium)  txt (5 Kb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com