Storage

Configuring the SQL Storage.

Authelia supports multiple storage backends. The backend is used to store user preferences, 2FA device handles and secrets, authentication logs, etc…

The available storage backends are listed in the table of contents below.

Configuration

storage:
  encryption_key: a_very_important_secret
  local: {}
  mysql: {}
  postgres: {}

Options

encryption_key

string required

Important Note: This can also be defined using a secret which is strongly recommended especially for containerized deployments.

The encryption key used to encrypt data in the database. We encrypt data by creating a sha256 checksum of the provided value, and use that to encrypt the data with the AES-GCM 256bit algorithm.

The minimum length of this key is 20 characters.

It’s strongly recommended this is a Random Alphanumeric String with 64 or more characters.

See securty measures for more information.

postgres

See PostgreSQL.

local

See SQLite.

mysql

See MySQL.