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

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?

quer criar isso dinamicamente?

quantos papeis diferentes você terá?

se for poucos, compensa criar paginas separadas para cada um

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?

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.

[quote]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. [/quote]

como seria isso?

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…

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

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

[quote=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.
[/quote]

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.

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

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