要解决Airflow RBAC UI无法切换DAGS并出现“缺少CSRF令牌”错误的问题,可以尝试以下解决方法:
airflow.cfg
文件,并确保以下行没有被注释掉或设置为False
:# 开启CSRF保护
expose_config = True
location / {
proxy_pass http://localhost:8080; # 修改为Airflow UI的地址和端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 添加CSRF令牌
proxy_set_header X-CSRFToken $cookie_csrf_token;
proxy_set_header X-Requested-With $http_x_requested_with;
proxy_set_header Referer $http_referer;
}
清除浏览器缓存:有时浏览器缓存可能导致CSRF令牌问题。尝试清除浏览器缓存并重新加载Airflow UI。
检查Airflow版本:某些旧版本的Airflow可能存在CSRF令牌问题。确保使用的是最新版本的Airflow,并查看官方文档以确定是否存在已知的问题或解决方案。
重新启动Airflow服务:如果以上方法都没有解决问题,尝试重新启动Airflow服务,以确保配置更改生效。
请注意,这些解决方法可能因Airflow版本和环境而有所不同。如果问题仍然存在,请参考Airflow官方文档或社区论坛以获取更多支持和帮助。