使用外部配置进行部署的战争

时间:2018-10-26 12:02:48

标签: spring-boot tomcat configuration-files

出于安全原因,我必须将密码存储在外部application.yml(在war外部)中,该密码应由部署的war在运行时加载。

您知道我必须在哪里放置外部配置文件吗?我必须配置一些属性吗?

提前谢谢!

2 个答案:

答案 0 :(得分:3)

我假设您有一个包含spring-boot应用程序的war文件,通常有更多选项可以管理您的属性,请在此处查看文档:{​​{3}}

我将为您推荐2种不同的方法:

  1. 将属性设置为环境变量,如果您为应用程序使用单独的容器,则可以更轻松地管理属性。
  2. 否则,spring为您提供了使用命令行参数覆盖属性的可能性,您可以执行以下操作:java -jar myproject.war --spring.config.location=file:/default.properties

答案 1 :(得分:0)

如果您要将机密数据存储在服务器中,请在服务器端将<Environment>添加到  Tomcat服务器的context.xml文件。示例:<Environment name="user.password" value="XXXXXXXX" type="java.lang.String" override="false"/>。您可以在spring上下文中将它们作为属性访问。