Search code examples
javajsplogginglog4jaudit-logging

How can I encrypt password in log4j.properties?


Is there any way that i can encrypt password in log4j.properties

following is my appender

log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DB.URL=jdbc:mysql://localhost:3306/anilpractice
log4j.appender.DB.driver=com.mysql.jdbc.Driver
log4j.appender.DB.user=root
log4j.appender.DB.password=P@ssw0rd
log4j.appender.DB.sql=INSERT INTO logs VALUES('%x','%d{dd MMM yyyy HH:mm:ss}','%C','%p','%m')
log4j.appender.DB.layout=org.apache.log4j.PatternLayout

Please help me out how can i encrypt .password tag?

thank you all.


Solution

  • Thank God, Finally got some solution to keep encrypted password in Log4j.properties

    What all we have to do is,

    Replicate JDBCAppender class of log4j.jar.

    Modify the definition of

    public void setPassword(String password)
      {
              this.databasePassword = password;
      }
    

    in JDBCAppender

    according to your need And replace that class in log4j.jar.