Nivel de acesso usuário

Ola para todos! bem fiz um programa no netbeans para controle de estoque para desktop e nele estou utilizando o postgresq, nesse programa de estoque nem todos os usuarios podem ter acesso total e por isso é necessario ter um controle de quais usuarios vão ter acesso tota e outros so leitura.

por favor vcs podem me ajudar como criar essa herarquia de niveis de acesso, pois o jeito que fiz com um colega meu não ficou bom.

Bem você pode cria uma outra tabela onde nela está contido os níveis de acesso ao sistema.

ex: COD NIVEL
1 Total
2 Leitura

Já no sistema quanto o usuário acessar-lo, verifique o tipo de acesso que esse usuário terá,
caso seja o de nível 1, referente a acesso total, abra a janela onde ele terá esse acesso, caso
contrário abra a janela onde ele possa somente fazer a leitura.

Espero que tenha entendido.

Ah e isso é só uma sugestão.

Até.

Pcomo posso fazer, tenho criar outro form e disabilitar as funcoes que o usuario 2 que so e leitura, nao ter acessorios gravar ou fazer alteracoes

Em algum lugar entre o banco de dados e o seu controller vc faz a seguinte pergunta:

  • o usuario atual pode fazer isso?
  • se pode, faz
  • se não pode, lança uma exception.

Ai na hora que vc cria telas bonitas, vc pode fazer algo como

  • o usuario atual pode clicar nesse botao (que ira deletar algo)?
  • se pode, deixa rolar
  • se não, nem mostre o botao ou deixe-o desabilitado.

valeu pelas dicas! o jeito que estou fazendo é criando conexoes e criei dois forms, um para o adm e outro para consulta, so que esse metodo não é eficaz, pos sempre que tenho que adicionar um usuario, tenho que aumentar os forms entendeu!

Boa noite!

Eu tenho o costume de criar uma tabela no banco de dados para controlar isso. A tabela relaciona o usuário cadastrado com uma String que seria a regra… Podem haver N regras para 1 usuário.
Ex:
Tabela usuário:
id (int), nome (String), login (String), password (String) email (String)
Tabela de regras:
ref_usuario (int), regra (String)

Digamos que você tenha um botão que apaga algum registro, como por exemplo o cadastro de um funcionário, então só quem pode fazer esta ação é quem tem a regra “regra.apaga.funcionario” na tabela de regras.
Logo, ao clicar no botão você faz a consulta no banco de dados passando o código (id) do usuário logado no seu sistema e a regra “regra.apaga.funcionario” se ele encontrar o registro o usuário pode efetuar a ação, caso contrário exibe uma mensagem avisando que a operação não é permitida.
Desta forma de regras você pode definir coisas bem específicas como questões mais amplas… apenas definindo as regras (Strings)

Att.
Lucas

Entao pelo banco posso fazer essas regras?

Sim… você vai precisar apenas criar uma interface gráfica onde o usuário pode definir as regras (inserir, remover), se isso ocorrer no seu caso (algum usuário tem permissão de definir regras para outros usuários) … senão os registros podem ser criados diretamente no banco de dados… com comandos insert e delete para controlar as regras. Depois para verificação somente executando o select na tabela.