Busca de usuário utilizando o Criteria

Bom dia pessoal!

Estou fazendo uma tela de login em meu projeto e irei utilizar hibernate como ferramenta de persistência. Eu gostaria de saber como utilizo o criteria para buscar o usuário e senha. Vale ressaltar que no banco de dados a senha está criptografada. Aí que está o meu embrolho.

Vejam o meu código:

Criteria criteria = session.createCriteria(UsuarioBean.class).add(Restrictions.like("username", usuarioBean.getUsername())). add(Restrictions.like("senha", UsuarioBean.getSenha()));

Pergunta: Como faço para passar na restrição de senha um parâmetro do tipo String criptografado???

Obrigado.

Fiz o seguinte…

Query query = session.createSQLQuery("select * from usuario where username = '"+ usuarioBean.getUsername()+"'" + " and senha = password('"+ usuarioBean.getSenha() +"')");

Não vi outra forma…

Se alguém tiver uma idéia melhor… poste… :slight_smile:

Como você utilizou o próprio banco para criptografar a senha, então acho que via Critéria você não consegue fazer a busca.
Agora se você tivesse usado alguma ferramenta e mandar os dados já criptografados, então no seu UsuarioBean.getSenha(), ele deveria retornar a senha já criptografada, para o banco testar.

Sim… mas estou utilizando um banco legado para fazer data minning em java… estava observando que o Jasypt faz isso muito bem…

Abraço…