O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Verschlüsselte Properties in Liquibase

793 visualizações

Publicada em

  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Verschlüsselte Properties in Liquibase

  1. 1. Verschlüsselte Properties für Liquibase JUG Saxony Happy Hour 06. Dezember 2012Montag, 10. Dezember 12
  2. 2. Dominik HirtMontag, 10. Dezember 12
  3. 3. http://www.efinia.deMontag, 10. Dezember 12
  4. 4. Personal Finance ManagementMontag, 10. Dezember 12
  5. 5. Montag, 10. Dezember 12
  6. 6. Problem liquibase.properties | defaultsFile driver: org.postgresql.Driver url: jdbc:postgresql://localhost:5432/efinia username: dbUser password: superGeheim42!Montag, 10. Dezember 12
  7. 7. #epicfailMontag, 10. Dezember 12
  8. 8. Ursache property member liquibase.integration.commandline.Main.parsePropertiesFileMontag, 10. Dezember 12
  9. 9. Lösung +Montag, 10. Dezember 12
  10. 10. Lösung Encrypting application Advanced + configuration configuration filesMontag, 10. Dezember 12
  11. 11. Encrypting application Advanced + configuration configuration filesMontag, 10. Dezember 12
  12. 12. enc. property decrypt member passwordMontag, 10. Dezember 12
  13. 13. Lösung EnvironmentStringPBEConfig pbeConfig = new EnvironmentStringPBEConfig(); pbeConfig.setPasswordEnvName(pbeVariable); StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor(); encryptor.setConfig(pbeConfig); EncryptableProperties props = new EncryptableProperties(encryptor); props.load(propertiesInputStream); if (value.startsWith("ENC")) { String env = System.getenv(pbeVariable); if (env == null || env.equals("")) { throw new RuntimeException("Unknown " + pbeVariable); } else { value = props.getProperty((String)entry.getKey()); } }Montag, 10. Dezember 12
  14. 14. Vorher driver: org.postgresql.Driver url: jdbc:postgresql://localhost:5432/efinia username: dbUser password: superGeheim42! Nachher driver: org.postgresql.Driver url: jdbc:postgresql://localhost:5432/efinia username: dbUser password: ENC(23cdFlcaHt54dZHP1o1TBw6aqTVw4)Montag, 10. Dezember 12
  15. 15. Don‘t repeat yourself liquibase-core liquibase.integration.commandline.Main.parsePropertiesFile liquibase-maven-plugin org.liquibase.maven.plugins.AbstractLiquibaseMojo.parsePropertiesFileMontag, 10. Dezember 12
  16. 16. https://github.com/dominik42/liquibaseMontag, 10. Dezember 12
  17. 17. d.hirt@efinia.deMontag, 10. Dezember 12
  18. 18. Montag, 10. Dezember 12

×