在Maven中存储加密的数据库密码

时间:2017-03-26 10:57:55

标签: hibernate maven

我正在寻找一种安全的方式来存储我的数据库密码。我发现,我可以使用Maven加密我的密码。 https://maven.apache.org/guides/mini/guide-encryption.html

所以我创建了一个主密码并用它加密了我的数据库密码:

  1. mvn --encrypt-master-password <password>
  2. vim ~/.m2/settings-security.xml

    <settingsSecurity>
        <master>{my-encrypted-master-pw}</master>
    </settingsSecurity>`
    
  3. mvn --encrypt-password <db-password>

  4. vim ~/.m2/settings.xml

    <settings>
        <servers>
            <server>
                <id>my.postgres.db</id>
                <username>user</username>
                <password>{my-encrypted-db-password}</password>
            </server>
        </servers>
    </settings>
    
  5. 现在我正在寻找一种方法来访问和解密数据库密码并在hibernate.cfg.xml中使用它?

    <hibernate-configuration>
        <session-factory>
            <property name="connection.driver_class">org.postgresql.Driver</property>
            <property name="connection.url">jdbc:postgresql://localhost:5432/app</property>
            <property name="connection.username">user</property>
            <property name="connection.password">????</property>
       </session-factory>
    </hibernate-configuration>
    

    有一个Maven扩展,允许您从任何pom.xml https://github.com/shyiko/servers-maven-extension引用服务器部分的内容。但我正在努力将其传递给休眠。

    是否有一种更安全地存储数据库密码的简单方法?

0 个答案:

没有答案