弹性beanstak上的Tomcat:如何更改弹性beanstalk上的server.xml以禁用命令行参数的日志记录?

时间:2017-05-17 11:54:29

标签: java amazon-web-services tomcat amazon-elastic-beanstalk apache-commons-logging

我在AWS Elastic beanstalk上有一个tomcat应用程序,正如建议here我使用环境属性来设置与数据库的jdbc连接,此参数包括数据库的用户和密码。 问题是,tomcat记录器在其启动时记录所有参数,它看起来像这样

INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -DJDBC_CONNECTION_STRING=jdbc:mysql:///localhost:3306/mydatabase?user=me&password=mypassword

我不希望这些敏感数据出现在实例日志中。如何告诉Tomcat不要记录命令行参数? {或任何其他安全问题的解决方案}

更新: 所以似乎删除了这条线  来自Tomcats server.xml在我的本地tomcat (Thanks cyril

上做了一些技巧

但是如何在Elastic Beanstalk上设置它? 我试图在.ebextensions文件夹中创建一个脚本,其中包含this的变体,但它对我来说仍然无法记录参数。但我不确定我是否使用Windows并且不熟悉linux脚本。也许有人可以帮我正确创建该脚本?如何检查脚本是否在弹性beanstalk实例上运行以及server.xml是否已更改?

1 个答案:

答案 0 :(得分:0)

我想到的另一个选择是使用Java配置运行Elastic beanstalk并使用Spring Boot应用程序(或其他嵌入式Tomcat部署),而不是使用Tomcat配置和战争。这使您可以完全控制应用程序引导程序。