credentialSecret 选项和 _cred.json 文件

credentialSecret option and _cred.json file

在不对 settings.js 文件进行任何更改的情况下,我可以在 .node_red 文件夹中看到两个 JSON 文档 - 一个用于流程,另一个用于凭据。例如,flows_ip-xxx-xxx-xx-xx_cred.jsonflows_ip-xxx-xx-xx-xx.json。然后,在settings.js文件中有一个字段credentialSecret

在全新的 Node-RED 安装中,假设我从早期安装中手动复制了 flows_ip-xxx-xx-xx-xx.json ,然后重新启动。我将copy成一个different_name.json就是也提到了flowFile属性。那么,凭据是否仍然被复制但使用(不同的)自动生成的密码加密?在这种情况下,如果我为两个安装的 settings.js 中的 credentialSecret 选项定义一个公共值,节点将在新安装中获得正确的凭据?

我可能应该使用项目选项;但是,在那之前,我想弄清楚凭证行为。

如果您没有在 settings.js 中设置 credentialSecret 那么 Node-RED 将在第一次启动时创建一个密钥并将其存储在名为 .config.runtime.json 的隐藏文件中用户目录。

此密钥将用于加密 flows_creds.json 以保护凭据文件。

如果您需要将流程移动到新机器,那么您可以将 _credentialSecret 值从 .config.runtime.json 复制到新 settings.js 中的 credentialSecret 以允许它解密现有的凭据文件。

如果您是从头开始,那么您可以选择在两台机器上的 settings.js 中定义您自己的 credentialSecret,以允许它们解密一个共同的 flow_creds.json 文件。

是的,新的项目功能让这一切变得容易多了。