Apache Airflow中的REST API身份验证-HttpOperator

时间:2020-10-13 11:17:38

标签: airflow airflow-operator

DAG - Image

我想创建一个管道,该管道将使用API​​登录用户,并使用该API执行一些操作。我正在使用SimpleHttpOperator开发我的REST API,该API建立在FLASK上,并且某些端点要求用户登录。我无法在Airflow DAG上维护会话,因此无法调用这些端点调用登录路由后。

1 个答案:

答案 0 :(得分:0)

它不起作用。每个任务都根据您的executor type作为不同的进程或在不同的工作程序上运行。因此,您的secret_route任务不会对login_task中收到的Cookie有任何提示。

假设您的API使用基于会话的身份验证,这就是您的API的登录和会话在较高级别的浏览器中的工作方式:

  1. 浏览器将登录凭据发送到服务器
  2. 服务器创建一个会话,并在cookie响应标头中将会话ID发送到浏览器
  3. 浏览器将会话ID存储为cookie,并在后续请求(例如,对秘密路由的请求)中将cookie发送到服务器。

现在,如果要使用建议的DAG结构实现此目的,则必须存储cookie并在调用秘密路由时使用它。