Controle de Usuários no firebird

Firebird

01/06/2005

Olá pessoal,

estou começando a fazer um controle de usuários(permissões) no meu sistema e eu vi um artigo onde um colega mostrava exemplos desse controle de dentro do firebird integrado com a aplicacao, mas esse controle funciona com as tabelas do banco mas com as views, procedures, fucntions etc... só funciona se o usuário conectado ao sistema for o SYSDBA é o unico usuario q consegue executar as procedures do banco pelo sistema e nas propriedades da procedure naum dá para adicionar outro usuario para executa-la.Alguem tem uma solucao para contornar esse problema?


Tap_pedroso

Tap_pedroso

Curtidas 0

Respostas

Gandalf.nho

Gandalf.nho

01/06/2005

Vc precisa dar permissões de execução para o novo usuário nas procedures.

GRANT EXECUTE ON PROCEDURE nome_procedure TO usuário/role



GOSTEI 0
Tap_pedroso

Tap_pedroso

01/06/2005

ola gandalf.nho se eu criar um role com o nome ´teste´ por exemplo como eu faco para me logar no firebird com esse role teste para q as permissoes desse usuario funcionem?


GOSTEI 0
Gandalf.nho

Gandalf.nho

01/06/2005

No componente de conexão que vc usa vc determina o ROLE que será usado. Não esqueça de atribuir os usuários ao ROLE tb.


GOSTEI 0
Tap_pedroso

Tap_pedroso

01/06/2005

olá gandalf.nho eu fiz oq vc me falou da seguinte maneira:

CREATE ROLE ´PADRAO´;

/* Grant permissions for this database */

GRANT SELECT ON ´TABCLIENTES´ TO ´PADRAO´;
GRANT ´PADRAO´ TO SYSDBA;

deixei o role só com select para testar o bloqueio quando eu for fazer alguma alteracao ou insercao pelo sistema e na aplicacao eu coloquei na propriedade SQlrole DO IBDATABASE o role PADRAO mas quando eu vou a tela de clientes e faco alguma alteracao ele ainda está permitindo a gravacao e a alteracao. falta mas alguma coisa q eu naum fiz ?


GOSTEI 0
Gandalf.nho

Gandalf.nho

01/06/2005

Vc deu permissões pro usuário SYSDBA tb ou ele é o dono do banco?


GOSTEI 0
Tap_pedroso

Tap_pedroso

01/06/2005

ele é o dono do banco é o único usuário q tem no banco.


GOSTEI 0
Gandalf.nho

Gandalf.nho

01/06/2005

Tá explicado. Não adianta limitar o role se o usuário tem permissão total, pq os direitos do usuário se somam aos do role. Crie um usuário comum e atribua o role a ele e depois teste.


GOSTEI 0
Tap_pedroso

Tap_pedroso

01/06/2005

eu criei um usuario ´teste´ e um role ´padrao´ e atribui o role ao usuario mas naum adianta eu colocar as permissoes para o role pq ele pegar as permissoes do ususario a q está associado.Por exemplo: eu coloquei os diretos de exclir e inserir para o usuario ´teste´ e para o role eu dei somente o de select mas quando vou na aplicacao ele tem as mesmas permissoes do usuario q é de excluir e inserir.é assim mesmo q funciona?


GOSTEI 0
Gandalf.nho

Gandalf.nho

01/06/2005

Sim, se vc vai usar roles, atribua permissões somente às roles e não aos usuários, pq como eu expliquei as permissões do usuário e do role se somam.


GOSTEI 0
Tap_pedroso

Tap_pedroso

01/06/2005

ah, ok agora deu certo. muito obrigado gandalf.nho


GOSTEI 0
Mordred

Mordred

01/06/2005

Onde posso encontrar material mais detalhado sobre esse assunto? Uma apostila, tutorial, qualquer coisa...


GOSTEI 0
Sandra

Sandra

01/06/2005

Onde posso encontrar material mais detalhado sobre esse assunto? Uma apostila, tutorial, qualquer coisa...

Boa tarde, Mordred!

Veja estes artigos que se encontram no site Firebase:
- [url=http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=983]Criação de usuários no Firebird[/url];
- [url=http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=248]Aumentando a segurança no isc4.gdb[/url];
- [url=http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=783]Utilizando o componente IBSecurityService[/url];
- [url=http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=614]User Manager - Gerenciando usuários IB/FB com o Delphi[/url].

Espero que lhe seja útil.


GOSTEI 0
Mordred

Mordred

01/06/2005

Puxa vida, mto obrigado, Sandra! Tenho certeza de que vai ser de grande valia!


GOSTEI 0
POSTAR