Foros del Web » Programación para mayores de 30 ;) » Java »

Jasypt y hibernate

Estas en el tema de Jasypt y hibernate en el foro de Java en Foros del Web. Hola he querido encriptar la clave que tengo hacia la base de datos en el archivo hibernate.cfg.xml, y encontre Jasypt lo puede hacer, he seguido ...
  #1 (permalink)  
Antiguo 01/04/2016, 15:48
 
Fecha de Ingreso: noviembre-2010
Mensajes: 13
Antigüedad: 13 años, 5 meses
Puntos: 0
Jasypt y hibernate

Hola he querido encriptar la clave que tengo hacia la base de datos en el archivo hibernate.cfg.xml, y encontre Jasypt lo puede hacer, he seguido estos tutoriales.

Código PHP:
http://www.jasypt.org/hibernate.html

http://java-rd.blogspot.mx/2012/07/encrypting-hibernate-configuration-file.html 
He usado el encrypt.bat y metiendole los parametros para que me devuelva la clave de la base de datos encriptada, la configuracion de mi archivo hibernate.cfg.xml quedo de esta manera.

Código PHP:
<property name="connection.provider_class">org.jasypt.hibernate4.connectionprovider.EncryptedPasswordDriverManagerConnectionProvider</property>
        <
property name="connection.encryptor_registered_name">configurationHibernateEncryptor</property>
        <
property name="dialect">org.hibernate.dialect.MySQLDialect</property>
        <
property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <
property name="connection.url">jdbc:mysql://localhost:3306/aprendiendojsf?autoReconnect=true</property>
        
<property name="connection.username">root</property>
        <
property name="connection.password">ENC(lhFCMXdRkAw7Cz5JU17lvg==)</property>
        <
property name="show_sql">true</property>
        <
property name="current_session_context_class">thread</property
Mi clase HibernateUtil de esta manera

Código PHP:
public class HibernateUtil {

    private static 
SessionFactory sessionFactory null;

    static {
        try {
            
// Create the SessionFactory from standard (hibernate.cfg.xml) 
            // config file.
            
sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();

            
StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor();
            
encryptor.setAlgorithm("PBEWithMD5AndDES");
            
encryptor.setPassword("clave");
            
HibernatePBEEncryptorRegistry registry HibernatePBEEncryptorRegistry.getInstance();
            
registry.registerPBEStringEncryptor("configurationHibernateEncryptor"encryptor);
            } catch (
Throwable ex) {
            
// Log the exception. 
            
System.err.println("Initial SessionFactory creation failed." ex);
            
ex.printStackTrace();
        }
    }

    public static 
SessionFactory getSessionFactory() {
        return 
sessionFactory;
    }

Mi proyecto levanta de manera correcta, pero al momento de hacer el login, en el log aparece esto
Código PHP:
INFOHHH000046Connection properties: {user=rootencryptor_registered_name=configurationHibernateEncryptorpassword=****}

WARNHHH000342Could not obtain connection to query metadata Could not create connection to database serverAttempted reconnect 3 timesGiving up
Por lo que veo no esta bien desencriptada la clave.

Alguien que tenga experiencia y me pueda echar la mano,

Gracias

Etiquetas: clase, hibernate
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:32.