多用户隔离
参考文档:https://cloud.google.com/composer/docs/airflow-rbac?hl=zh-cn
将 DAG 分配给 DAG 属性中的角色
通过 DAG 源代码中定义的 access_control
属性为角色授予 DAG 访问权限
官方文档:
- https://airflow.apache.org/docs/apache-airflow-providers-fab/stable/auth-manager/access-control.html
- https://airflow.apache.org/docs/apache-airflow-providers-fab/stable/auth-manager/webserver-authentication.html
角色
在 airflow 中,有不同的角色,Admin 拥有最大的权限,Viewer 可以查看前端 UI 的内容;User 除了查看还有具体操作(对 DAG 的增删改查)的权限,Op 在 User 的基础上增加了参数配置的权限,详见:https://airflow.apache.org/docs/apache-airflow/2.8.2/security/access-control.html
如果需要对某一个具体的用户只赋予查看局部 DAG 以及操作 DAG 的权限,就赋予其以下权限:
- can read on Website: 可以登录 UI 系统
- can read on DAG(Dag 名称):可以访问具体的 DAG
- can eidt on DAG(Dag 名称):可以停止或者开启具体的 DAG
- can read on DAG Runs: 可以查看每一次 Run 的日志
- can read on Task Instances/can read on Task Logs: 可以点击 DAG 进入查看其日志
- can delete on Task Instances: 可以将某一个任务 clear,重启任务