Airflow 气流-某些端点的实验API返回405
我正在尝试将我的应用程序设置为使用Airflow的实验API。我使用的是Airflow 气流-某些端点的实验API返回405,airflow,Airflow,我正在尝试将我的应用程序设置为使用Airflow的实验API。我使用的是apache气流==1.10.2 使用开箱即用的配置(未启用身份验证),我能够使用POST/api/experimental/dags//DAG_runs端点创建DAG运行。然而,当我尝试使用GET/api/experimental/dags//dag_运行时我得到了405s 当我注意到GET端点是www\u rbac文件夹的一部分,但不是www文件的一部分时,我尝试启用身份验证。为了验证是否能够成功设置身份验证,我为api
apache气流==1.10.2
使用开箱即用的配置(未启用身份验证),我能够使用POST/api/experimental/dags//DAG_runs
端点创建DAG运行。然而,当我尝试使用GET/api/experimental/dags//dag_运行时
我得到了405s
当我注意到GET端点是www\u rbac
文件夹的一部分,但不是www
文件的一部分时,我尝试启用身份验证。为了验证是否能够成功设置身份验证,我为api和Web服务器都配置了身份验证
[api]
authenticate = True
auth_backend = airflow.contrib.auth.backends.password_auth
对于Web服务器:
[webserver]
# additional config omitted for brevity
authenticate = True
auth_backend = airflow.contrib.auth.backends.password_auth
我使用airflow cli创建了一个用户。然后,我可以使用这些凭据登录到Web服务器。问题是,当我尝试在API上使用相同的凭据进行身份验证时,仍然得到405
我使用的示例curl是:
curl -X GET \
http://api_admin:password666@fakeHostName.com/api/experimental/dags/example_bash_operator/dag_runs \
-H 'Cache-Control: no-cache'
(Real curl具有实际的用户名、密码和主机名。)
答复机构是:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>405 Method Not Allowed</title>
<h1>Method Not Allowed</h1>
<p>The method is not allowed for the requested URL.</p>
好消息是,当我启用了身份验证并从请求中省略用户名和密码时,我得到了401-Unauthorized
有人能够使用
GET
dag\u运行端点工作吗?这是1.10.2
中的一个错误,已经修复了将于本周发布的1.10.3
在此之前,您可以使用rbac UI:
通过修改afflow.cfg
文件来启用RBAC UI
在[webserver]
部分下,将rbac=False
更改为rbac=True
注意:您必须根据创建一个用户
curl -X POST \
http://api_admin:password666@fakeHostName.com/api/experimental/dags/example_bash_operator/dag_runs \
-H 'Cache-Control: no-cache' \
-d '{}'