Preciso de uma ajudinha com o meu Controle de usuários

10 respostas
Hermanitto

Pessoal, preciso de fazer um controle de usuários do meu sistema da seguinte maneira.
O meu usuário poderá não ver alguns botões, textbox, selects e outras propriedades dos meus fomulários, porem outros usuários poderam ter acesso a ver essas propriedades.

Estou pensando em fazer um gerenciador de acessos de usuários, onde eu criaria uma flag para cada propriedade defininindo se o usuário tem ou não acesso.

Feito isso qndo esse usuário entrasse numa jsp ele iria ver apenas um botão por exemplo, e um outro usuário poderia ver 5 botões.

O problema eh q eu num tenho nem noção de como fazer isso :frowning: . Será que alguem pode me ajudar?

10 Respostas

Zakim

quer criar isso dinamicamente?

quantos papeis diferentes você terá?

se for poucos, compensa criar paginas separadas para cada um

Hermanitto

pois eh, ae q ta o problema…
eu queria criar dinamicamente, pq eu não sei qntos papéis eu iria ter…

já q isso eh um sistema genérico
entedeu?
uma vez eu ouvi falar q tem como fazer isso usando as ( td ) das tables html
mas… nem tenho noçao de como q isso seria feito
como eu trataria isso…
sabe?

F

Uma boa ideias seria vc criar um tabela de permissoes por grupo por exemplo… caso o usuario logado tivesse cadastrado na tabela voce mostra o botao caso contrario não.

seria o mais simples a ser feito.

espero ter ajudado.

Hermanitto

Uma boa ideias seria vc criar um tabela de permissoes por grupo por exemplo… caso o usuario logado tivesse cadastrado na tabela voce mostra o botao caso contrario não.

seria o mais simples a ser feito.

como seria isso?

maiconramones

Bom eu não sei se essa seria a melhor maneira mas vamos lá, dá pra cadastrar no banco os usuários subdividos em grupo por adm, user, etc…
Dai no jsp tu pode usar jstl… poe lá um if(adm)… e vai mostrando os campos conforme o grupo, a deficiência desta técnica me parece ser o seguinte: quando tu tiver muitos campos no jsp o código começa ficar muito grande muito poluido…

Hermanitto

endendi…
o problema dessa forma nem seria o tamanho do codigo, mas sim as divisões em grupos
ja que eu não sei quais serao os grupos q o cidadão vai poder acessar sabe?

isso precisaria de ser dinamico mesmo. Tipo cada usuario teria seu acesso, o que não quer dizer um vendedor, teria o mesmo acesso q outro vendedor saca?

mas… se não tiver como, vai ter q ser desse jeito q vc disse mesmo
por grupos ae eu crio la um monte de grupo e pronto

vlws

Zakim

aconselho-te então a analisar novamente os requisitos e procurar saber pelo menos os papeis mais importantes, para que possa ter uma base de como e com o que implementar

sergiotaborda

Hermanitto:
Pessoal, preciso de fazer um controle de usuários do meu sistema da seguinte maneira.
O meu usuário poderá não ver alguns botões, textbox, selects e outras propriedades dos meus fomulários, porem outros usuários poderam ter acesso a ver essas propriedades.

Estou pensando em fazer um gerenciador de acessos de usuários, onde eu criaria uma flag para cada propriedade defininindo se o usuário tem ou não acesso.

Faça em java, não em clipper.

A cada usuário estão associadas 2 operações: autenticação e autorização.
Autenticação é a possibilidade de identificar o usuário com a identidade que ele diz ter. Ou seja, é comprovar que ele é quem diz ser. Isso é feito com a famosa password e username, mas existem outras formas.
Autorização é a capacidade do sistema se proteger dos usuários. O usuário tem acesso a recursos da aplicação.
Recurso pode ser muita coisa: item de menu, botão, campo, etc…

O usuário é relacionado a um ou mais papeis ( role) Esses papeis representam o que o usuário diz ser.
A cada papel é relacionado um ou mais perfis. Um perfil é um conjunto de permissões.
A cada permissão é relacinoado um recurso e um nivel de acesso. Normalmente existem dois niveis: acessa ou não acessa. Se o seu numero de niveis é 2 vc pode despresar o campo nivel e assumir que se o perfil tem o recurso, ele tem permissão de acessar o recurso.

Role podem ainda ser hirarquicos de forma que o role “maior” tem todas as permissões do conjunto dos seus roles “menores”. Mas isso pode ser complicado.

Basicamente vc precisa de 3 cadastros : usuário, role e perfil. Os recursos são ditados pela aplicação ( são fixos , mas podem aumntar conforme as capcidade da aplicação aumentam).

Existe a figura do guarda. O guarda é quem decide se o usuário tem ou não permissão para acessar o recurso, e caso não tenha ele resguarda o recurso ( por exemplo, se o recurso é um botão e o usuário não tem acesso, o botão é tornado invisivel). Mantenha na cabeça que um recurso pode ter várias “apresentações”. Por exemplo : pode ser um item de menu, um botão na toolbar e um botão num tela especial. Os 3 componentes representam o mesmo recurso e estão sujeitos às mesmas regras. Se o usuário não tem acesso ao recurso, ele não deve ver nenhum dos 3 componentes.

B

Colega, eu estou desenvolvendo um sistema de login parecido com o que vc tem ae.

Eu faço o seguinte : O usuário loga, o programa verifica na tabela quais os sistemas que ele tem direito a acesso.
O usuário escolhe o sistema que vai acessar, neste momento o programa verifica na tabela qual a autorização deste usuário no sistema escolhido : Adm,Comum ou Restrito.
Coloco o Bean do usuário na Session.

Lá no Menu, eu busco na Session a sua permissão e, em tempo de execução, eu mostro ou não o link do programa para ele acessar.
Isso também farei no Form pois ele pode acessar o programa mas não pode excluir (um exemplo) ae eu coloco o botão Excluir oculto.

Estou também na mesma batida que a sua.

abs

Bob

Hermanitto

Obrigado pessoal

foi top a dica de vcs, axo que vou seguir o mesmo caminho, vamos ver no que vai dar
vou fazer como o sergiotaborda esta falando ae a cima, e vou tentar colocar meus controles no STRUTS no FormBean como o Bob esponja disse ae…

vlw mesmo galera vou mandar ver esse fds e vamos ver no q vai dar…
obrigado

Criado 29 de fevereiro de 2008
Ultima resposta 29 de fev. de 2008
Respostas 10
Participantes 6