Fórum Dúvida com banco de dados #44912
17/06/2004
0
Cláudiogyn
Curtir tópico
+ 0Posts
17/06/2004
Vinicius2k
Vc pode criar os objetos apenas q forem necessários à sua aplicação... eu por exemplo uso muito roles, algumas views e não uso domains... muitas triggers e pouquissimas Stored Procedures... vai realmente ser de acordo com suas necessitades...
T+
Gostei + 0
17/06/2004
Cláudiogyn
Gostei + 0
17/06/2004
Vinicius2k
Basicamente eu uso roles para determinar níveis de acesso aos objetos do banco de dados e consequentemente aos módulos e telas da aplicação, por exemplo, crio as roles :
OperadorVendas c/ os GRANTS inerentes às operações básicas de vendas.
SecretariaVendas c/ os GRANTS inerentes à Role OperadorVendas + às operações Inerentes à Secretaria.
GerenteVendas c/ os GRANTS inerentes à todas as operações com o módulo de vendas.
Quando é efetuado o cadastro de algum usuário no SGBD são atribuídas à ele as roles às quais ele tem direito...
Como vc pode perceber as roles servem para dar direitos em massa para determinado usuário, porque seria muito trabalhoso, em sistemas com muitos usuários, atribuir os direitos aos objetos que lhe dizem respeito à cada usuário...
Um exemplo de View associado a isso é que, supondo que exista uma coluna ´PrecoCusto´ na sua tabela ´Produtos´, a Role OperadorVendas precisa acessar a tabela Produtos, isso é basico, mas vc não quer que ele veja a coluna ´PrecoCusto´, então vc cria uma View sem esta coluna e dá direito à Role OperadorVendas sobre a View_Produtos e não sobre a Tabela produtos...
Bem, a realidade para que vc possa usar destes recursos vc trabalhar como eu : segurança à nivel de SGDB... se vc usar na sua conexão o usuário SYSDBA e o controle de acessos for através da aplicação, tudo isso não lhe serve para nada... o SYSDBA pode fazer qualquer coisa mesmo...
Penso que esta seja uma questão que deveria ser mais discutida e com mais material dicas, artigos e etc, pois a maioria dos desenvolvedores não usam nenhuma técnica de segurança... nem mesmo trocam a senha do SYSDBA... um usuário de nível um pouco mais alto pode simplesmente baixar o IBExpert na sua estação e fazer o que quiser no Banco de Dados... até dar um DROP...
Espero ter ajudado...
T+
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)