在一个节点-red流中,我有一个带有user和pass的CassandraDatabase节点。当我导出流时,这些凭据不包含在json中,而是出现一个带有加密字符串的flows_cred.json文件:
{"$":"df28.......
..。但是,如果我复制出这个文件,并尝试在其他地方启动我的node-red实例,我在启动时会得到以下结果:
warn加载凭据时出错: SyntaxError: JSON中位置0处的意外令牌
..。接着是重复的"AuthenticationError: Authentication provider not set“消息。实际上,node-red流尚未获取凭据,因此我必须再次手动输入。
有人知道允许我成功导出凭据的诀窍吗?
发布于 2018-01-16 06:28:10
默认情况下,凭据文件(flows_cred.json)是加密的,以确保其内容不易读取。
如果您未在设置文件中提供密钥,Node-RED将为加密生成一个随机密钥。如果Node-RED的第二个实例没有相同的加密密钥,它将无法解密文件。
以下是解决此问题所需的步骤。
settings.js文件,并添加一个具有任意字符串值的credentialSecret属性。如果要禁用加密,请将其值设置为false。credentialSecret:"my-random-string"
credentialSecret值即可。请注意,一旦设置了credentialSecret,就不能更改它的值。
https://stackoverflow.com/questions/48270905
复制相似问题