Configuration Reference

This page contains the list of all available Airflow configurations for the apache-airflow-providers-fab provider that can be set in the airflow.cfg file or using environment variables.

Note

The configuration embedded in providers started to be used as of Airflow 2.7.0. Previously the configuration was described and configured in the Airflow core package - so if you are using Airflow below 2.7.0, look at Airflow documentation for the list of available configuration options that were available in Airflow core.

Note

For more information see Setting Configuration Options.

[fab]

This section contains configs specific to FAB provider.

auth_backends

Added in version 2.0.0.

Comma separated list of auth backends to authenticate users of the API.

Type:

string

Default:

airflow.providers.fab.auth_manager.api.auth.backend.session

Environment Variable:

AIRFLOW__FAB__AUTH_BACKENDS

auth_rate_limit

Added in version 1.0.2.

Rate limit for authentication endpoints.

Type:

string

Default:

5 per 40 second

Environment Variable:

AIRFLOW__FAB__AUTH_RATE_LIMIT

auth_rate_limited

Added in version 1.0.2.

Boolean for enabling rate limiting on authentication endpoints.

Type:

boolean

Default:

True

Environment Variable:

AIRFLOW__FAB__AUTH_RATE_LIMITED

config_file

Added in version 2.0.0.

Path of webserver config file used for configuring the webserver parameters

Type:

string

Default:

{AIRFLOW_HOME}/webserver_config.py

Environment Variable:

AIRFLOW__FAB__CONFIG_FILE

session_backend

Added in version 2.0.0.

The type of backend used to store web session data, can be database or securecookie. For the database backend, sessions are store in the database and they can be managed there (for example when you reset password of the user, all sessions for that user are deleted). For the securecookie backend, sessions are stored in encrypted cookies on the client side. The securecookie mechanism is ‘lighter’ than database backend, but sessions are not deleted when you reset password of the user, which means that other than waiting for expiry time, the only way to invalidate all sessions for a user is to change secret_key and restart webserver (which also invalidates and logs out all other user’s sessions).

When you are using database backend, make sure to keep your database session table small by periodically running airflow db clean --table session command, especially if you have automated API calls that will create a new session for each call rather than reuse the sessions stored in browser cookies.

Type:

string

Default:

database

Environment Variable:

AIRFLOW__FAB__SESSION_BACKEND

Example:

securecookie

session_lifetime_minutes

Added in version 2.0.0.

The UI cookie lifetime in minutes. User will be logged out from UI after [fab] session_lifetime_minutes of non-activity

Type:

integer

Default:

43200

Environment Variable:

AIRFLOW__FAB__SESSION_LIFETIME_MINUTES

update_fab_perms

Added in version 1.0.2.

Update FAB permissions and sync security manager roles on webserver startup

Type:

string

Default:

True

Environment Variable:

AIRFLOW__FAB__UPDATE_FAB_PERMS

Was this entry helpful?