是否可以对气流配置文件sql_alchemy_conn字符串进行加密,示例中显示的密码为纯文本。有哪些选项可以保护它。另外,如果密码具有特殊字符,则必须在配置文件中将其转义
尝试使用气流角色安装气流。
#参见:https://www.sqlalchemy.org/ sql_alchemy_conn: 值:“ postgresql + psycopg2:// pgclusteradm @ servername:PLAINTEXTPASSWORD@server.postgres.database.azure.com/airflow2”
如何加密密码,找不到如何加密密码。
答案 0 :(得分:0)
您可以通过环境变量而不是配置文件来提供数据库URI。这不会对其进行加密,也不一定使其变得更安全,但是至少它并不是明确地位于永久文件中。
在您的airflow.cfg
中,您可以放置一个占位符:
[core]
...
sql_alchemy_conn = override_me
...
然后在启动Airflow组件时在环境变量中设置AIRFLOW__CORE__SQL_ALCHEMY_CONN=postgresql+psycopg2://...
。 docs中详细介绍了通过环境变量设置和覆盖配置选项的这种方式,但基本格式为AIRFLOW__{SECTION}__{KEY}=<value>
。
答案 1 :(得分:0)
如docs中所述,有两种方法可以确保这一点:
1)环境变量:
您可以通过设置以下环境变量来覆盖 let payload = { subject : user._id, is_admin : true };
let token = jwt.sign(payload,'securepasswordgoeshere');
console.log(token);
res.status(200).send({ data: token });
res.end();
中的设置:
airflow.cfg
这样,您可以将AIRFLOW__CORE__SQL_ALCHEMY_CONN=my_conn_string
中的设置保留为空,以便没有人可以查看密码。
2)通过运行命令获取字符串:
您还可以在运行时通过将airflow.cfg
附加到键上来派生连接字符串,如下所示:
_cmd