Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当使用Jaspyt加密Spring属性文件时,环境变量真的是存储主密码的安全场所吗?_Java_Spring_Configuration Files_Jasypt - Fatal编程技术网

Java 当使用Jaspyt加密Spring属性文件时,环境变量真的是存储主密码的安全场所吗?

Java 当使用Jaspyt加密Spring属性文件时,环境变量真的是存储主密码的安全场所吗?,java,spring,configuration-files,jasypt,Java,Spring,Configuration Files,Jasypt,我在Java项目中使用Jaspyt和Spring3。我当前将数据库连接属性存储在属性文件中。用户名和密码是纯文本,所以我一直在研究如何使用Jaspyt的EncryptablePropertyPlaceHolderConfigure 文档和教程建议将用于解密的主密码存储在环境变量中。这真的比在属性文件中存储纯文本值更安全吗?如果有人破坏了该框,主密码在(1)环境变量或(2)服务器启动脚本中不可见吗?我想您可以手动设置环境变量,并在服务器启动后将其取消设置,但手动设置的过程似乎无法管理 我只是多疑吗

我在Java项目中使用Jaspyt和Spring3。我当前将数据库连接属性存储在属性文件中。用户名和密码是纯文本,所以我一直在研究如何使用Jaspyt的EncryptablePropertyPlaceHolderConfigure

文档和教程建议将用于解密的主密码存储在环境变量中。这真的比在属性文件中存储纯文本值更安全吗?如果有人破坏了该框,主密码在(1)环境变量或(2)服务器启动脚本中不可见吗?我想您可以手动设置环境变量,并在服务器启动后将其取消设置,但手动设置的过程似乎无法管理


我只是多疑吗?是否有一种方法可以保护您的连接用户名和密码

存储明文密码从来都不是一个安全的过程。接管服务器的攻击者在任何情况下都可以访问您的密码。 如果手动输入不是一个选项(通常),您只能为您的团队的一部分隐藏密码。如果不想公开数据库密码,请使用JNDI数据库连接。这使得密码仅对应用程序服务器管理员可见。

Jasypt建议使用来解决此问题。但正如他们在本节中所说,每次在web控制台中重新部署应用程序时,都必须重置密码。