Conexão ao SQLServer
Bom Dia Pessoal,
estou fazendo uma tela de login para o meu sistema conectando a uma tabela já existente no SQLServer.
mas ao inserir login e senha, ele da sempre incorreto, mesmo colocando corretamente os dados de LOGIN. O que pode estar acontecendo?
Classe de Conexao
METODO PARA ACESSAR
estou fazendo uma tela de login para o meu sistema conectando a uma tabela já existente no SQLServer.
mas ao inserir login e senha, ele da sempre incorreto, mesmo colocando corretamente os dados de LOGIN. O que pode estar acontecendo?
Classe de Conexao
public class FabricaDeConexao {
public static Connection conn;
public static Statement stmt;
public static ResultSet rs;
//String url = "jdbc:sqlserver://servidorsimula:1433/TrimboxTeste";
String url = "jdbc:sqlserver://servidorsimula:1433;TrimboxTeste=TrimboxTeste";
//String driver = "com.sqlserver.jdbc.Driver";
String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String user = "sopasta_ti";
String password = "ti_sopasta";
public void abrirConexao(){
try{
Class.forName(driver);
conn = DriverManager.getConnection(url, user, password);
stmt = (Statement) conn.createStatement();
}catch(Exception e){
System.out.println(e.getMessage() + "\n" + e.getCause());
}
}
/*public static void main(String[]args){
FabricaDeConexao fab = new FabricaDeConexao();
fab.abrirConexao();*/
}
METODO PARA ACESSAR
public void acessarSistema(){
try {
FabricaDeConexao fab = new FabricaDeConexao();
fab.abrirConexao();
//fab.stmt = (Statement) fab.conn.createStatement();
fab.stmt = fab.conn.createStatement();
String login = jTextField1.getText();
String sql = "SELECT * FROM dbo.usuario WHERE nome = '" + login + "'";
fab.rs = fab.stmt.executeQuery(sql);
fab.rs.next();
if(jTextField1.getText().equals(fab.rs.getString("nome")) && jPasswordField1.getText().equals(fab.rs.getString("senha"))){
Tela_Principal tel = new Tela_Principal();
tel.setVisible(true);
this.setVisible(false);
// InformacaoCorrente.setNivelacesso(Integer.parseInt(rs.getString("nivelacesso")));
}else{
jTextField1.setText("");
jPasswordField1.setText("");
JOptionPane.showMessageDialog(null, "Login ou Senha Incorretos. Tente Novamente!");
}
}catch (Exception e){
System.out.println(e.getMessage() + "\n" + e.getCause());
}
}
Marcio Morando
Curtidas 0
Respostas
Marcio Morando
04/04/2014
Problema Resolvido já pessoal, OBRIGADO!
GOSTEI 0
Carlos Proença
04/04/2014
Opa marcio rssr mals por n ter visto antes... mas posta o codigo com a solução.....
sua dificuldade de hoje pode ajudar alguem amanha....
att
sua dificuldade de hoje pode ajudar alguem amanha....
att
GOSTEI 0
Marcio Morando
04/04/2014
O problema era que a senha no banco esta criptografada e eu estou mando a senha sem criptografar. Agora to pesquisando como criptografar a senha antes de autenticar!
Obrigado pelo retorno.
Obrigado pelo retorno.
GOSTEI 0
Eduardo Pessoa
04/04/2014
chegando atrasado, então problema só era esse, mas vc resolveu com o java ou no proprio banco?
GOSTEI 0
Marcio Morando
04/04/2014
Não resolvi ainda, só descobri o problema! kkkkkkkk
Alias, alguém pra ajudar como faço para criptografar a senha?
Estou utilizado o método que citei acima.
Alias, alguém pra ajudar como faço para criptografar a senha?
Estou utilizado o método que citei acima.
GOSTEI 0
Carlos Proença
04/04/2014
qual o tipo de criptografia?? MD5?? é só mandar criptografar com o msm metodo a msm string e assim na teoria dara o mesmo resultado.... e vc compara o valor criptografado do banco com o que vc acabou de criptografar... nos meus sisteminhas em PHP eu usava muito MD5 rsrs
att.
att.
GOSTEI 0
Eduardo Pessoa
04/04/2014
o que é esse MD5?
GOSTEI 0
Carlos Proença
04/04/2014
um tipo de algoritmo de criptografia....
GOSTEI 0
Marcio Morando
04/04/2014
é MD5 sim, vou pesquisar aqui como fazer. Muito Obrigado amigo!
GOSTEI 0
Carlos Proença
04/04/2014
Marcio não é dificil n.... da uma procurada na net sobre a MessageDigest com ela vc pega os algoritmos para criptografia.....
no seu caso é bem simples
tem um exemplo aqui no Devmedia
segue link MD5
att.
no seu caso é bem simples
tem um exemplo aqui no Devmedia
segue link MD5
att.
GOSTEI 0
Marcio Morando
04/04/2014
Carlos, veja se você pode me ajudar!
Esta tabela do banco que estou pegando, é uma tabela de outro sistema. O que estou querendo fazer é utilizar o mesmo usuário e senha desse outro sistema para logar no meu sistema em JAVA. Criei a classe de criptografia como você me falou, mas ele não autentica, porque a senha criptografada fica diferente da senha criptografada do banco. O que posso fazer ?
Esta tabela do banco que estou pegando, é uma tabela de outro sistema. O que estou querendo fazer é utilizar o mesmo usuário e senha desse outro sistema para logar no meu sistema em JAVA. Criei a classe de criptografia como você me falou, mas ele não autentica, porque a senha criptografada fica diferente da senha criptografada do banco. O que posso fazer ?
GOSTEI 0
Carlos Proença
04/04/2014
Seguinte... primeiramente vc consegue conectar nesse outro banco??? a conexao JDBC vai sem problemas??
para a autenticação voce precisa usar a msm criptografia.... e colocar a senha original se for a mesma ira gerar o mesmo hash e vc compara os hash pra ver se eh =....
mas uma pergunta.... se vc n usar criptografia no seu sistema... e copiar a senha que ja esta criptografada no outro banco... e tentar logar com o usuario e essa senha vc consegue??
não sei se deu pra entender....
pois deveria... se n der eh algum problema de tipo de formatação dos caracteres....
att
para a autenticação voce precisa usar a msm criptografia.... e colocar a senha original se for a mesma ira gerar o mesmo hash e vc compara os hash pra ver se eh =....
mas uma pergunta.... se vc n usar criptografia no seu sistema... e copiar a senha que ja esta criptografada no outro banco... e tentar logar com o usuario e essa senha vc consegue??
não sei se deu pra entender....
pois deveria... se n der eh algum problema de tipo de formatação dos caracteres....
att
GOSTEI 0
Marcio Morando
04/04/2014
Sim, a conexão está OK.
Sim, eu fiz esse teste, colocando o usuário e copiando a senha criptografada, e ele acessa normal!
Agora criptografando com o MD5, ele me retorna null sempre, pode esse que o tipo de criptografia não seja o MD5?
Sim, eu fiz esse teste, colocando o usuário e copiando a senha criptografada, e ele acessa normal!
Agora criptografando com o MD5, ele me retorna null sempre, pode esse que o tipo de criptografia não seja o MD5?
GOSTEI 0
Carlos Proença
04/04/2014
cria um usuario com uma senha nova de teste....no banco antigo... para ver qual o hash que é gerado e compara com o seu... pois se for o msm algoritmo a msm entrada da a mesma saida....
cria tipo um usuario teste senha teste e ve se a chave gerada é a mesma nos 2 bancos... se for MD5 vai ser sim....
caso n seja entao voce tem que saber qual a forma que é feita a criptografia no banco antigo.... em qual app faz isso e qual a maneira.... e assim voce usa da msm forma na sua...
srsr mas seria isso msm..
att.
cria tipo um usuario teste senha teste e ve se a chave gerada é a mesma nos 2 bancos... se for MD5 vai ser sim....
caso n seja entao voce tem que saber qual a forma que é feita a criptografia no banco antigo.... em qual app faz isso e qual a maneira.... e assim voce usa da msm forma na sua...
srsr mas seria isso msm..
att.
GOSTEI 0
Eduardo Pessoa
04/04/2014
Marcio não é dificil n.... da uma procurada na net sobre a MessageDigest com ela vc pega os algoritmos para criptografia.....
no seu caso é bem simples
tem um exemplo aqui no Devmedia
segue link MD5
att.
no seu caso é bem simples
tem um exemplo aqui no Devmedia
segue link MD5
att.
vlw Carlos, estudando.
GOSTEI 0
Marcio Morando
04/04/2014
Obrigado Carlos, consegui fazer com o modelo que me passou. Muito Obrigado.
GOSTEI 0
Carlos Proença
04/04/2014
Fala marcio... de nada man.... estamos aqui para isso mesmo.... um ajudando o outro
e Eduardo... ai sim... gogo estudar qualquer outra coisa só chamar....
e Eduardo... ai sim... gogo estudar qualquer outra coisa só chamar....
GOSTEI 0
Eduardo Pessoa
04/04/2014
Carlos, vou ser sincero, não entendi bem o codigo, kkkkkk
GOSTEI 0
Carlos Proença
04/04/2014
que codigo??
de geração de criptografia??
de geração de criptografia??
GOSTEI 0