我应该把凭证放在哪里:application.properties vs system env variables

阿里安

在我的 Spring Boot 项目中,我应该将使用不同服务的凭据放在哪里,例如数据库或消息队列的用户名/密码,或者 JWT 密钥?

我应该把它放在系统环境变量中吗?还是在 application.properties 中?哪个更安全?考虑到两者都是纯文本?

对于 JWT 令牌,我在操作系统中使用以下命令在启动服务器之前更新值:

export MONEYLIZER_JWT_SECRET_KEY=$(echo -n "somevalue" | openssl sha512 -hmac "somekey")

所以它并不总是恒定的。application.properties没有给我这种灵活性。

商业服务通常做什么?我应该在哪里保存凭据和设置?

凯文麦肯

环境变量肯定比 application.properties 中的纯文本更安全

典型的基于 Sping 的部署会受到配置被硬编码到代码存储库的应用程序属性文件中的影响。这对于模块化您的代码库非常有用,因此可以将其传输到多个环境。但是,它确保您的代码还具有明文密码、api 密钥和其他不应在 VCS 存储库中或以任何方式分发的数据。

为了锁定代码库本身的安全性,我们决定将我们代码库中的所有密码、api 密钥和其他机密数据外部化。Spring 使这件事变得非常容易,它提供了在启动时将配置指定为环境变量或将外部应用程序属性文件指定给 init 脚本或 CLI 调用的选项。

veracode 博客

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

mysql的凭证应该放在哪里?

来自分类Dev

process.env在哪里

来自分类Dev

我应该把NSNotification的removeObserver放在哪里

来自分类Dev

闭环-我应该放在哪里?

来自分类Dev

.tolowerCase()我应该放在哪里?

来自分类Dev

我应该把 .Appimages 文件放在哪里?

来自分类Dev

DNX 5.0中System.Reflection.MemberTypes放在哪里?

来自分类Dev

我应该在哪里找到耳内多次战争使用的通用ESAPI.properties文件?

来自分类Dev

Overriding server connector config with env variables with dropwizard

来自分类Dev

我如何在Yii2中将类似于YII_DEBUG和YII_ENV的全局变量放在哪里

来自分类Dev

c lang env变量的文档在哪里?

来自分类Dev

Spring Boot项目中的application.properties文件在哪里?

来自分类Dev

我应该把我自己写的Python包放在哪里?

来自分类Dev

我应该把我自己编译的软件放在哪里?

来自分类Dev

我应该把我自己编译的软件放在哪里?

来自分类Dev

我应该把我的 lang 属性放在哪里?

来自分类Dev

在Eclipse的Java Gradle Web应用程序中将log4j.properties放在哪里

来自分类Dev

我的原始SQL在Symfony 2中应该放在哪里?

来自分类Dev

我应该把由systemd单元执行的脚本放在哪里?

来自分类Dev

我应该将Junit @Category的接口类放在哪里?

来自分类Dev

我应该将Ensembles uniqueIdentifier放在哪里?

来自分类Dev

我应该将非模型课程放在哪里?

来自分类Dev

我应该将全局宏放在哪里?

来自分类Dev

我应该将游戏循环放在哪里?

来自分类Dev

我应该将用户页面放在哪里?

来自分类Dev

我的bash脚本应该放在哪里

来自分类Dev

我应该将默认值放在哪里?

来自分类Dev

我应该将Junit @Category的接口类放在哪里?

来自分类Dev

我应该将ssh私钥放在哪里?

Related 相关文章

  1. 1

    mysql的凭证应该放在哪里?

  2. 2

    process.env在哪里

  3. 3

    我应该把NSNotification的removeObserver放在哪里

  4. 4

    闭环-我应该放在哪里?

  5. 5

    .tolowerCase()我应该放在哪里?

  6. 6

    我应该把 .Appimages 文件放在哪里?

  7. 7

    DNX 5.0中System.Reflection.MemberTypes放在哪里?

  8. 8

    我应该在哪里找到耳内多次战争使用的通用ESAPI.properties文件?

  9. 9

    Overriding server connector config with env variables with dropwizard

  10. 10

    我如何在Yii2中将类似于YII_DEBUG和YII_ENV的全局变量放在哪里

  11. 11

    c lang env变量的文档在哪里?

  12. 12

    Spring Boot项目中的application.properties文件在哪里?

  13. 13

    我应该把我自己写的Python包放在哪里?

  14. 14

    我应该把我自己编译的软件放在哪里?

  15. 15

    我应该把我自己编译的软件放在哪里?

  16. 16

    我应该把我的 lang 属性放在哪里?

  17. 17

    在Eclipse的Java Gradle Web应用程序中将log4j.properties放在哪里

  18. 18

    我的原始SQL在Symfony 2中应该放在哪里?

  19. 19

    我应该把由systemd单元执行的脚本放在哪里?

  20. 20

    我应该将Junit @Category的接口类放在哪里?

  21. 21

    我应该将Ensembles uniqueIdentifier放在哪里?

  22. 22

    我应该将非模型课程放在哪里?

  23. 23

    我应该将全局宏放在哪里?

  24. 24

    我应该将游戏循环放在哪里?

  25. 25

    我应该将用户页面放在哪里?

  26. 26

    我的bash脚本应该放在哪里

  27. 27

    我应该将默认值放在哪里?

  28. 28

    我应该将Junit @Category的接口类放在哪里?

  29. 29

    我应该将ssh私钥放在哪里?

热门标签

归档