嘿,伙计们,我正在研究Airflow中的旋转加密密钥,对他们位于此处的文档感到有点困惑:https://airflow.readthedocs.io/en/stable/howto/secure-connections.html
步骤如下:
Set fernet_key to new_fernet_key,old_fernet_key
Run airflow rotate_fernet_key to re-encrypt existing credentials with the new fernet key
Set fernet_key to new_fernet_key
我对我们第一步应该做什么感到困惑。应该将fernet_键设置为新fernet_键和旧fernet_键。另外,我想知道是否有可能编写一个脚本来自动化所有这些,这样我就可以简单地运行该文件,并且它可以正确地旋转加密密钥,而不是在每次需要时生成一个新的\u fernet\u密钥并手动将其放入aiffort.cfg文件中。多谢各位
考虑到文档确实有点混乱,我将解释如何在Kubernetes集群上运行的气流中旋转fernet键(我使用的是版本1.10.14)
如果查看how the fernet key is set in AIRFLOW,它使用MultiFernet class,这需要两个fernet键,在这种情况下,必须将它们作为fernet键配置参数的值(用逗号分隔)提供。因此:
ThisIsObviouslyAFakeNEWFernetKeyUJ_65Hgdjsmg=,ThisIsObviouslyAFakeOLDFernetKeyOP_78KufGSd3=
(新的fernet键,旧的fernet键)李>airflow rotate-fernet-key
李>AIRFLOW__CORE__FERNET_KEY
的值设置为ThisIsObviouslyAFakeNEWFernetKeyUJ_65Hgdjsmg=
(仅新蕨类植物) 键)李>这将使用新的fernet密钥重新加密所有变量和连接,而无需重置metastore数据库
最佳做法是将其外部设置为env_var。 然后,在重新启动系统时,根本不需要旋转
正如文档中所述,旋转fernet关键点是有风险的,因为:
差不多
相关问题 更多 >
编程相关推荐