【问题标题】:encrypting mongo password in datasource definition using springboot使用spring boot在数据源定义中加密mongodb密码
【发布时间】:2016-03-02 13:15:56
【问题描述】:

我正在使用连接到 Mongo DB 的 spring-boot 应用程序。 application.properties文件中配置的mongo数据源:

spring.data.mongodb.uri=mongodb://my_user:my_password@mongo_host:37017/mongo_db

我想加密my_password 部分数据源。 有开箱即用的解决方案吗? 谢谢

【问题讨论】:

  • 你的意思不是不加密,而是设置适当的文件权限?
  • @MarkusWMahlberg 我的意思不是纯文本“my_password”,我想设置密码的加密文本,也就是“likjajasljaslkjaslkjsa”
  • 我完全明白你的意思。现在试着理解我的意思...设置适当的文件权限。
  • @MarkusWMahlberg 好吧,文件权限对我来说似乎很弱的解决方案: 1. 可能修改该文件的操作内容将有权访问密码。 2. 万一应用机被黑,黑客只需读取文件即可访问数据库。我在这里寻找一些春天的魔法解决方案,但无论如何谢谢。

标签: mongodb encryption spring-boot


【解决方案1】:

我找到了jasypt-spring-boot project,这正是我所需要的。

【讨论】:

    【解决方案2】:

    由于它不是从 url 解析加密值,我们可以将它放在它自己的属性中,然后在 url 中引用该属性。

    spring.data.mongodb.password=ENC(xIZhIV7nvOv5LqHfAKnvmjhyeecOT0lO)

    spring.data.mongodb.uri=mongodb://user:${spring.data.mongodb.password}@mongo1.example.com:12345,mongo2.example.com:12345/mydb?replicaSet =rsdb

    【讨论】:

      猜你喜欢
      • 2021-12-10
      • 1970-01-01
      • 2020-04-08
      • 2021-12-02
      • 2022-01-16
      • 2020-09-22
      • 2017-04-06
      • 2017-01-27
      • 2010-11-06
      相关资源
      最近更新 更多