Criar restrição de acesso

7 respostas
F

Olá, boa tarde!
Estou com uma dúvida sobre como posso fazer uma restrição de acesso em meu sistema. Eu fiz uma tabela no banco com o nome da tela e tipo de acesso, sim ou não.
Agora o problema é como fazer os bloqueios na tela principal do sistema… como posso fazer isso? Um método por frame?
Obrigada!

7 Respostas

L

Antes de carregar sua tela principal, faça o select no banco e verifique quais as telas o usuário logado deve ter acesso.
Baseado no resultado, você carrega sua tela e desabilita as funcionalidades que ele não tem acesso.

web_designer

tmb tenho essa duvida, tem alguma video aula falando sobre isso?

igrsantos

amigo crie uma tela de logon onde vc entre com informações de login,
com essas informacoes preenchidas busque na base se o usuário existe
e se a senha é a digitada, se for tudo ok, direciona ele para outra tela,
caso contrário mantenha ele na tela dizendo que algo aconteceu.

qualquer dúvida no sql ou no código poste aqui !

F

então pessoal, o meu problema é justamente esse, faço um while com o resultset onde nao tem acesso, agora como desabilito as telas? Ou melhor, como comparo com as telas para saber como desabilitar os menus?
Obrigada!

painhoo2

Acho que o você ta precisando é mais ow menos isso!

/* TRATA SE O USUARIO DIGITOU REALMENTE */
        if(tf_login.getText().equals("")||tf_senha.getText().equals(""))
        { 
            JOptionPane.showMessageDialog(null, "Preencha Todos os campos");
        }
        else
        { 
            try
            { 
                /* SELECIONA O USUARIO */
                String sql = "SELECT * FROM sua_tabela WHERE coluna_login like '"+tf_login.getText()+"' and coluna_senha like '"+tf_senha.getText()+"'";
                con_user.executeSQL(sql);
                if(con_user.resultSet.first())
                { 
                    /* PEGA O CODIGO DO USUARIO SELECIONADO */
                    int tipo = con_user.resultSet.getString("tipo");
                   if(tipo == administrador){
                         new TelaAdministracao().show();
                          JOptionPane.showMessageDialog(null, "Olá "+tf_login.getText()+", bom trabalho e boas vendas");
                          this.dispose();
                   }
                 else{
                        new TelaUser().show();
                         JOptionPane.showMessageDialog(null, "Olá "+tf_login.getText()+", bom trabalho e boas vendas");
                         this.dispose();
                      }
                }
                else
                { 
                    JOptionPane.showMessageDialog(null, "Usuário ou senha Incorretos\nInforme um usuário válido!");
                }
            }
            catch(SQLException erro)
            { 
                JOptionPane.showMessageDialog(null, "Erro ao tentar procurar os usuários do sistema/n erro: "+erro);
            }
        }

eu não compilei o código acima, então pode conter n erros,
mais a logica deve ser essa se eu entendi a sua pergunta…
espero ter ajudado! ;D

igrsantos

então fernanda.silva,

tente fazer algo do jeito que você imagina ser, com o que você conhece.

vá postando os erros, ou problemas que você vier encontrando para podermos
auxiliar você no seu projeto :smiley:

painhoo2

Se seu tópico já foi resolvido edite o titulo e coloque um: [RESOLVIDO]
antes do titulo, assim estará ajudando quem estiver procurando algum assunto relacionado. ;D

Criado 4 de junho de 2013
Ultima resposta 17 de jun. de 2013
Respostas 7
Participantes 5