2016-05-11 21 views
0

Wir verwenden Spring-Boot und Logback und speichern Datenbank Benutzername & verschlüsseltes Passwort im Frühjahr application.yaml. Wie können wir das entschlüsselte Passwort in logback.xml erhalten, damit dbAppender eine Verbindung zur Datenbank herstellen kann?logback.xml springproperty: Wie entschlüsselt man das Passwort

Vielen Dank für Ihre Hilfe.

application.yaml

datasource: 
     username: root 
     password: ENC(xxxxxxxxxxxxxxxxx) 

logback.xml

<springProperty scope="context" name="db.user" source="datasource.username"/> 
    <springProperty scope="context" name="db.password" source="datasource.password"/> 
    <appender name="DB" class="ch.qos.logback.classic.db.DBAppender"> 
    <connectionSource class="ch.qos.logback.core.db.DriverManagerConnectionSource"> 
     <driverClass>com.mysql.jdbc.Driver</driverClass> 
     <url>jdbc:mysql://host_name:3306/datebase_name</url> 
     <username>${db.user}</username> 
     <password>${db.password}</password> 
    </connectionSource> 
    </appender> 

Antwort

0

Für Eigenschaft Verschlüsseln bitte Encryption and Decryption verwenden.

Informationen zur Verwendung von Eigenschaften im Logback finden Sie unter Logback extensions.

Sie können es jedoch tatsächlich nicht in logback-spring.xml machen. Ursache ist zu früh initialisiert und die verschlüsselten Eigenschaften sind nicht bereit. Bitte sehen Sie issue.