---
###############################################################
#                Authelia minimal configuration               #
###############################################################

server:
  address: 'tcp://:9091'
  tls:
    certificate: /pki/public.backend.crt
    key: /pki/private.backend.pem

log:
  level: debug

identity_validation:
  reset_password:
    jwt_secret: 'a_very_important_secret'

authentication_backend:
  file:
    path: /config/users.yml

session:
  secret: unsecure_session_secret
  expiration: 3600  # 1 hour
  inactivity: 300  # 5 minutes
  remember_me: 1y
  cookies:
    - domain: 'example.com'
      authelia_url: 'https://login.example.com:8080'

# Configuration of the storage backend used to store data and secrets. i.e. totp data
storage:
  encryption_key: a_not_so_secure_encryption_key
  local:
    path: /config/db.sqlite

# Access Control
#
# Access control is a set of rules you can use to restrict user access to certain
# resources.
access_control:
  default_policy: deny
  networks:
    - name: Clients
      networks:
        - 192.168.240.202/32
        - 192.168.240.203/32
  rules:
    - domain: secure.example.com
      policy: one_factor
      networks:
        - 192.168.240.201/32

    - domain: secure.example.com
      policy: bypass
      networks:
        - Clients

    - domain: secure.example.com
      policy: two_factor

# Configuration of the authentication regulation mechanism.
regulation:
  # Set it to 0 to disable max_retries.
  max_retries: 3
  # The user is banned if the authentication failed `max_retries` times in a `find_time` seconds window.
  find_time: 300
  # The length of time before a banned user can login again.
  ban_time: 900

notifier:
  # Use a SMTP server for sending notifications
  smtp:
    address: 'smtp://smtp:1025'
    sender: admin@example.com
    disable_require_tls: true

totp:
  disable_reuse_security_policy: true
...
