Fórum controle login 3 camadas? #323235

12/06/2006

0

bom dia!
Tenho um sistema em delphi 7 em 3 camadas, o usuario quando se loga...eu faço a autenticação direto no banco de dados! o problema que quando um usuario so tem permissão para fzer select no banco de dados, os demais usuarios, que tem permissão para fzer inserts e updates, ele perdem a permissão...pelo que estou entendo...fica sempre valendo o ultimo usuario logado no sistema!
como eu faço para que isso não aconteca utilizando desenvolvimento 3 camadas?

obrigado


Airto

Airto

Responder

Posts

12/06/2006

Thomaz_prg

Na verdade o controle deve ser feito no banco, mas a forma de se controlar o acesso na aplicação é que se deve tomar alguns cuidados. A instancia normalmente é a mesma, e se você fica verificando em uma tabela aberta o que o usuário tem ou não privilégio pra fazer, quando um outro usuário logar, serão as do último usuário que estarão valendo. O que você pode fazer é, sempre que for criar um form ou processo, enviar para o servidor de aplicação o identificador do usuário, para que sejam feitos os devidos tratamentos de privilégios e restrições. Como pegar o identificador ? No ato do login a sua aplicação cliente receberia esse valor, que seria ´armazenado´ em uma variável da aplicação (cliente). Dessa forma você poderia fazer o controle tranquilamente.


Responder

Gostei + 0

12/06/2006

Airto

eu tenho ja essa variavel no client? então toda ação de select insert update ou delete....! irei precisarei fecha e abri a conexão com o banco....seria isso??


Responder

Gostei + 0

21/06/2006

Airto

quando tem 2 usuario, fazendo o mesmo processo, mas com permissões diferente, tambem fica valendo o ultimo logado?

Obrigado


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar