工作負載¶
本主題說明如何設定 Airflow 以保護您的工作負載。
身分模擬¶
Airflow 能夠在執行任務實例時模擬 Unix 使用者,此功能基於任務的 run_as_user
參數,該參數接受使用者名稱。
注意: 為了使身分模擬生效,Airflow 需要 sudo
,因為子任務是使用 sudo -u
執行,並且檔案權限會被更改。此外,Unix 使用者需要存在於 worker 上。以下是一個簡單的 sudoers 檔案條目範例,可以實現此目的,假設 Airflow 以 airflow
使用者身分執行。這表示 airflow 使用者必須受到信任,並且以與 root 使用者相同的方式對待。
airflow ALL=(ALL) NOPASSWD: ALL
具有身分模擬的子任務仍將記錄到相同的資料夾,但它們記錄的檔案的權限將被更改,以便只有 Unix 使用者可以寫入。
預設身分模擬¶
為了防止未使用身分模擬的任務以 sudo
權限執行,您可以設定 core:default_impersonation
配置,如果未設定 run_as_user
,則會設定預設使用者身分模擬。
[core]
default_impersonation = airflow