在NiFi中,我可以在custom.properties文件中输入加密密码并在相应的处理器中将其解密到内存中吗?

时间:2017-10-26 20:54:51

标签: apache-nifi

为了使流和控制器服务环境不可知(因此从dev-stage-prod移动会很容易),我使用变量/表达式语言来表示密码和用户名。并计划从custom.properties文件或进程组变量中读取密码/用户名。 在两者中直接输入密码都不太舒服。因此,我想使用某种形式的加密,然后在需要的处理器中对其进行解密。(NIFI可以在内存中为所有处理器解密吗?)

示例:如果使用JDBC连接池,并且通过控制器服务连接到DB的密码为“badPassword”。

在custom.properties文件中,

my.password.for.JDBC.connection.pool = badPassword

在Password的控制器服务中,值为$ {my.password.for.JDBC.connection.pool}

同样的例子可以应用于不同的处理器,如FTP,SFTP或调用http处理器,其中有一个基本授权令牌。

是否可以对其进行加密并在custom.properties文件或流程组变量中输入加密密码,并在相应的处理器中对其进行解密。

1 个答案:

答案 0 :(得分:1)

有一个open Jira for this feature,随着即将到来的Apache NiFi Registry努力,流版本控制将允许使用引用的变量凭证来促进dev / test / prod环境之间的流。但是,此时,无法加密变量注册表值(您的custom.properties值)。