Algu... pode.. me expl.. com.. eu faç.. pra limitar tal usu.

07/02/2003

0

Alguém poderia me explicar como eu faço .para qdo eu for cadastrar um usuario no meu sistema . EX:
o usuario admin tem acesso total
o usuario atendente só consulta
o usuario caixa só inclusão ..
Muito Obrigado !!!


Anonymous

Anonymous

Responder

Posts

07/02/2003

Anonymous

dentro da tabela de usuarios que voce criou...crie tbm campos para as permissoes...por ex.:

um campo chamado ACESSO...que pode ser numerico....aí vc convenciona..quem é ZERO tem acesso total...quem é UM tem um tipo de acesso e assim por diante....depois é só ficar testando esta campo para cada tela que voce cria e liberar opções...


Responder

07/02/2003

Anonymous

mais ai ..essa logica eu tenho ..mas na pratica que ta dificil..se vc tiver alguma rotina ..parecida ..muito obrigado pela atenção


Responder

08/02/2003

Skaarj

Eu faço assim.. Crio uma tabela USUARIOS com os campos:

USUARIO VARCHAR(10)
SENHA VARCHAR (6)
NIVEL INTEGER

Agora digamos que tenha 3 usuários de niveis 1,2 e 3 [o maior é maior acesso]

Dae na tela de senhas assim:
[uso um dblookupcombobox pra colocar o nome dos usuários]

if dblookupcombobox1.text=IBTable1USUARIO.asstring then
begin
if edit1.text=ibtable1SENHA.asstring then
begin
if ibtable1nivel.asinteger=1 then
begin
form1.show;
form1.button2.enabled:=false;
form1.button3.enabled:=false;
form1.button1.enabled:=true;
frmsenha.hide;
end;
if ibtable1nivel.asinteger=2 then
begin
form1.show;
form1.button2.enabled:=true;
form1.button3.enabled:=false;
form1.button1.enabled:=true;
frmsenha.hide;
end;

if ibtable1nivel.asinteger=3 then
begin
form1.show;
form1.button2.enabled:=true;
form1.button3.enabled:=true;
form1.button1.enabled:=true;
frmsenha.hide;
end;
end
else
begin
application.messagebox(´Senha incorreta´,´Exemplo´,0);
end;
end
else
begin
application.messagebox(´Usuário invalido´,´Exemplo´,0);
end;

Nesse exemplo bem simples ele vai verificar se a senha e o usuário estao corretos, dae vai olhar qual o nível foi definido e liberar 1, 2 ou 3 botoes no form1..
Se for algo diferente, me fala no ICQ q a gnt tnta resolver.. Blz?


Responder

08/02/2003

Anonymous

Você cria uma tabela com todas as permissões de um usuário, isso te dá um ótimo controle sobre os acessos, pois imagine que normalmente um caixa tem os acessos pré-definidos pelo sistema e você queira dar um acesso que não estava previsto para aquele nível de usuário. Bem aí você teria que mudar o nível dele dando acessos que você não precisava dar, então a solução é conceder acesso por acesso. Ex.:

TABELA: acessos
==========================
usuario VARCHAR(10) CHAVE PRIM.
modulo VARCHAR(4) CHAVE PRIM.
==========================

Ex.

EDUARDO CX01
EDUARDO FIN0
EDUARDO REL8
EDUARDO MANU
EDUARDO PARM
MARIA CX02
MARIA CX03
...

E aí você faz uma função que lê, quando o usuário entra no sistema, todos os acessos e coloca em um ARRAY para o acesso ficar mais rápido e marca todas as opções permitidas (em botões, menus...) como True. por ex.:

mnuCaixaVenda.Enabled := FuncaoQualquerProcAcesso(´CX01´);


Responder

08/02/2003

Anonymous

Valeu ..muito obrigado pela ajuda !!!


Responder

09/02/2003

Qmd

Se vc NAO estiver usando BDE, tabelas paradox /xBase ou similares de uma olhada em http://usercontrol.da.ru. Trata-se de um pacote de componentes freeware justamente pra controlar usuarios e permissoes de acesso.

Veja esse demo: http://pessoal.onda.com.br/qmd/ADODemo.zip

Falow

QmD


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar