Jasypt Encrypting the database password in hibernate.cfg.xml
来源:互联网 发布:数据交换技术要求 编辑:程序博客网 时间:2024/06/06 02:27
For those applications that define datasources in Hibernate's hibernate.cfg.xml file, Jasypt provides two Connection Provider (org.hibernate.connection.ConnectionProvider) implementations which let the user declare the datasource parameters (driver, url, username and password) in an encrypted manner:
- org.jasypt.hibernate3|hibernate4.connectionprovider.EncryptedPasswordDriverManagerConnectionProvider, which extends Hibernate's Driver Manager connection provider (a very simplistic pool implementation).
- org.jasypt.hibernate3|hibernate4.connectionprovider.EncryptedPasswordC3P0ConnectionProvider, which extends Hibernate's C3P0-based connection provider.
They are used like this in hibernate.cfg.xml:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="connection.provider_class"> org.jasypt.hibernate4.connectionprovider.EncryptedPasswordDriverManagerConnectionProvider </property> <property name="connection.encryptor_registered_name"> configurationHibernateEncryptor </property> <property name="connection.url">jdbc:mysql://localhost/reportsdb</property> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.username">reportsUser</property> <property name="connection.password">ENC(G6N718UuyPE5bHyWKyuLQSm02auQPUtm)</property> <property name="connection.pool_size">12</property> <property name="show_sql">true</property> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- Mappings etc... --> </session-factory></hibernate-configuration>
In this configuration, Hibernate is told to use Jasypt's DriverManager-based connection provider and is passed a set of configuration parameters which contain an encrypted value, the connection.password property. Then, Hibernate is also told about which is the encryptor object to be used for decrypting the encrypted parameters (connection.encryptor_registered_name).
This encryptor object should have been registered beforehand as a Hibernate Encryptor, as explained in the 'Transparent data encryption' section.
注:本文转载自:http://www.jasypt.org/hibernate.html
- Jasypt Encrypting the database password in hibernate.cfg.xml
- Encrypting columns in a database using jasypt
- Encrypting Goldengate Password
- Encrypting Password using md5() function
- hibernate.cfg.xml
- 关于hibernate.cfg.xml
- hibernate.cfg.xml配置
- hibernate.cfg.xml
- hibernate.cfg.xml 配置文件
- hibernate-cfg.xml
- hibernate.cfg.xml
- hibernate.cfg.xml模板
- hibernate.cfg.xml
- hibernate.cfg.xml
- hibernate.cfg.xml模板
- hibernate.cfg.xml
- hibernate.cfg.xml
- hibernate.cfg.xml
- php有关error的处理
- linux下用chmod修改文件权限详解(文件权限与特殊权限)
- Halfway to go, though I have finished 145 questions of leetcode online judge
- 项目总结——项目方法
- 处处都是坑
- Jasypt Encrypting the database password in hibernate.cfg.xml
- Android UI(五)云通讯录项目之联系人列表,带侧滑选择,带搜索框
- PHP学习 session 重写的高级
- openblas+lapack numpy scipy
- c++学习书籍推荐
- 开源 免费 java CMS - FreeCMS1.7 操作日志
- css 菜单, 但不兼容IE8
- Linux内核编译与安装
- 【黑马程序员】C语言学习笔记之结构体(十二)