java - 加密属性文件和持久性 xml

标签 java hibernate encryption spring-data jasypt

我正在尝试加密 J2EE 应用程序中的所有纯文本 key 和密码。 我正在尝试找出最好的方法。

我知道 JASYPT 有一个非常好的库和实用程序来加密属性文件,但在 persistence.xml 中似乎不起作用,它包含所有数据库用户名和密码。

以下是开发堆栈:

  1. Spring MVC
  2. Spring
  3. Spring DATA JPA
  4. hibernate
  5. MYSQL 和 POSTGRESS 数据库

最佳答案

Jasypt本身对于上述问题有很好的解决方案。

通过使用 org.jasypt.properties.EncryptableProperties 对象,应用程序将能够正确读取和使用 .properties 文件,如下所示:

 datasource.driver=com.mysql.jdbc.Driver
 datasource.url=jdbc:mysql://localhost/reportsdb
 datasource.username=reportsUser
 datasource.password=ENC(G6N718UuyPE5bHyWKyuLQSm02auQPUtm)

请注意,数据库密码已加密(事实上,任何其他属性也可以加密,无论是否与数据库配置相关)。

更多信息:

http://www.jasypt.org/encrypting-configuration.html

http://appfuse.org/display/APF/Database+Encryption+with+Jasypt-Hibernate

关于java - 加密属性文件和持久性 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23375989/

相关文章:

javascript - 始终解密为纯文本的加密功能,即使使用不正确的 key 也是如此

java - 如何从servlet获取 "jboss server binding address"

java - FHIR 搜索中类似 GROUP BY 的功能

java - Spring MVC : No qualifying bean of type [org. hibernate.SessionFactory] ​​发现依赖项

java - hibernate 中的部分架构导出

sql - 如何使用 hibernate 记录最终的 SQL 查询

java - 是否有任何开源库可以获取java bean的getters的所有值?

java - EnversSchemaGenerator 无法解析为类型

java - 从 Diffie-Hellman 输出中选择加密 key

Ruby AES CBC 解密的 Java 等效项