4

我正在使用自定义 gmail smtp appendar 从我的 gmail 帐户发送错误日志。按照说明操作:http ://www.tgerm.com/2010/05/log4j-smtpappender-gmail-custom.html - 一切正常。除了一件事:在我的 log4j.properties 中:我不想输入我的密码“log4j.appender.EMAIL.SMTPPassword=somepass”,这样我就可以与我的队友分享这个项目。有人有建议吗?

下面是 log4j.properties 部分:

log4j.appender.EMAIL=com.tgerm.log4j.appender.GmailSMTPAppender
log4j.appender.EMAIL.SMTPHost=smtp.gmail.com
log4j.appender.EMAIL.SMTPDebug=true
log4j.appender.EMAIL.From=from@gmail.com
log4j.appender.EMAIL.To=to@tgerm.com
log4j.appender.EMAIL.SMTPUsername=smtpuser@gmail.com
log4j.appender.EMAIL.SMTPPassword=somepass //this is the problematic part
log4j.appender.EMAIL.Subject=Email Notification from Gmail SMTP Appender
log4j.appender.EMAIL.cc=cc@gmail.com
log4j.appender.EMAIL.layout=org.apache.log4j.PatternLayout
log4j.appender.EMAIL.layout.ConversionPattern=%p %t %c - %m%n
log4j.appender.EMAIL.BufferSize=1
4

2 回答 2

6

对于初学者:不要使用您的个人电子邮件地址 - 创建一个新帐户以与您的团队成员共享。

如果您仍想加密,请将加密信息放在单独的属性或 xml 文件中,编写代码对其进行加密和解密,并以编程方式配置 log4j 的该部分。

(并且,正如 gdt 下面所说,请记住,如果应用程序可以解密密码,其他人也可以。没有 100% 安全的解决方案。保护文件访问权限通常比加密更有效。)

于 2013-04-09T19:20:51.790 回答
0
  1. 创建一个可以共享的服务电子邮件帐户(非个人)。

  2. 要隐藏密码,请在属性文件中指定它,但在第一次运行后,读取它,加密并写回属性文件。

于 2013-04-09T19:23:37.237 回答