Corda 如何从node.conf隐藏敏感数据?

Corda 如何从node.conf隐藏敏感数据?,corda,Corda,有人能给我举一个这里提到的corporatePasswordStore的例子吗: 在过去的几天里,我一直在研究如何从node.conf隐藏普通密码;这对我来说是一个新的话题,这是我到目前为止想到的: 使用gpg2 使用pass(使用我之前生成的密钥)创建密码存储 将node.conf中的所有普通密码存储在该密码存储中 将node.conf中的普通密码替换为环境变量(例如keystrepassword=${KEY\u PASS}) 创建一个脚本文件(例如,start\u node.sh),该文件

有人能给我举一个这里提到的
corporatePasswordStore
的例子吗:

在过去的几天里,我一直在研究如何从
node.conf
隐藏普通密码;这对我来说是一个新的话题,这是我到目前为止想到的:

  • 使用
    gpg2
  • 使用
    pass
    (使用我之前生成的密钥)创建密码存储
  • node.conf
    中的所有普通密码存储在该密码存储中
  • node.conf
    中的普通密码替换为环境变量(例如
    keystrepassword=${KEY\u PASS}
  • 创建一个脚本文件(例如,
    start\u node.sh
    ),该文件将执行以下操作:

    a。将环境变量设置为密码存储中的一个密码:
    export key\u store\u password=$(pass node.conf/keystrepassword)

    B启动节点:
    java-jarcorda.jar

    C重新启动gpg代理以清除缓存的密码,否则您可以从存储中获取任何密码,而无需传递密码短语:
    gpgconf--reload gpg代理

  • 优点:

  • 使用bash文件
    start_node.sh
    可以一次将多个密码设置为环境变量(例如keyStore、trustStore、db passwords、RPC user password)
  • 由于我们使用
    bash start_node.sh
    运行bash文件,而不是
    source start_node.sh
    ,因此环境变量不会向父进程公开(即,您无法在运行bash start_node.sh的终端内读取该环境变量值)
  • 默认情况下,bash脚本中不启用历史记录命令
  • 缺点:

    您不能再拥有在VM启动时自动启动的服务,因为
    start\u node.sh
    脚本将为您的gpg密钥请求密码短语,该密钥用于加密密码存储中的密码(即,它是一个交互式脚本)

    我把这件事复杂化了吗?你有更简单的方法吗?甚至有必要隐藏普通密码吗


    我使用的是Corda开源软件,因此无法使用配置模糊器(仅限企业版):(已编辑)

    我在这里写了一篇详细的文章:,其中包括以下主题:

  • 为数据库连接启用SSL
  • 为RPC连接启用SSL
  • 为Corda Web服务器启用SSL
  • 为独立shell启用SSL
  • 隐藏纯文本密码
  • 为RPC用户设置权限

  • 我在这里写了一篇详细的文章:,其中包括以下主题:

  • 为数据库连接启用SSL
  • 为RPC连接启用SSL
  • 为Corda Web服务器启用SSL
  • 为独立shell启用SSL
  • 隐藏纯文本密码
  • 为RPC用户设置权限