2013-04-09 164 views
3

我正在使用自定義gmail smtp appendar從我的Gmail帳戶發送錯誤日誌。 遵循指示:http://www.tgerm.com/2010/05/log4j-smtpappender-gmail-custom.html - 一切正常。 除了一件事: 在我的log4j.properties中:我不想輸入我的密碼「log4j.appender.EMAIL.SMTPPassword = somepass」,以便我可以與我的隊友分享這個項目。有沒有人有建議?在log4j.properties文件中隱藏或加密密碼SMTP Appender

下面是log4j.properties部分:

log4j.appender.EMAIL=com.tgerm.log4j.appender.GmailSMTPAppender 
log4j.appender.EMAIL.SMTPHost=smtp.gmail.com 
log4j.appender.EMAIL.SMTPDebug=true 
[email protected] 
[email protected] 
[email protected] 
log4j.appender.EMAIL.SMTPPassword=somepass //this is the problematic part 
log4j.appender.EMAIL.Subject=Email Notification from Gmail SMTP Appender 
[email protected] 
log4j.appender.EMAIL.layout=org.apache.log4j.PatternLayout 
log4j.appender.EMAIL.layout.ConversionPattern=%p %t %c - %m%n 
log4j.appender.EMAIL.BufferSize=1 

回答

5

對於初學者:請不要使用您的個人電子郵件地址 - 創建一個新帳戶與您的團隊成員共享。

如果您仍然想要加密,請將加密的信息放在單獨的屬性或xml文件中,編寫代碼對其進行加密和解密,然後以編程方式配置該部分的log4j。

(而且,正如GDT下面說,記住,如果應用程序可以解密密碼,別人能過,沒有100%安全的解決方案。保護文件的訪問權限往往比加密更有效。)

+0

還要記住,如果你加密你的密碼,解密它是非常微不足道的。在Java調試器中瀏覽項目將相當迅速地向任何感興趣的人展示給它,而不僅僅是粗略的外觀。 – gdt 2013-04-09 19:27:18

+0

對,這是永遠必須記住的事情。 – theglauber 2013-04-09 19:35:48

0
  1. 創建一個可共享的服務電子郵件帳戶(不是個人)。

  2. 要隱藏密碼,請在適當的文件中指定它,但在第一次運行後,讀取它,加密並回寫到屬性文件。