Authelia

Описание настройки Authelia. Интсрумент для аутентификации пользователей на сайте.

Структура Authelia

Базовая схема взаимодействия Authelia с сервисами

---
config:
  theme: redux
---
flowchart LR
    A["Пользователь"] -- Запрос --> B["Reverse Proxy Nginx/Traefik"]
    B -- Проверка аутентификации --> C["Authelia"]
    C -- Данные пользователей --> D["Хранилище: PostgreSQL/MySQL"]
    C -- 2FA/SMS --> E["Провайдер: Twilio/Email"]
    C -- Разрешить/Запретить --> B
    B -- Доступ разрешен --> F["Защищенный сервис"]
     B:::Aqua
     C:::Rose
     F:::Peach
    classDef Aqua stroke-width:1px, stroke-dasharray:none, stroke:#46EDC8, fill:#DEFFF8, color:#378E7A
    classDef Rose stroke-width:2px, stroke-dasharray:none, stroke:#FF5978, fill:#FFDFE5, color:#8E2236
    classDef Peach stroke-width:1px, stroke-dasharray:none, stroke:#FBB35A, fill:#FFEFDB, color:#8F632D
    style D fill:#FFD600
    style E fill:#C8E6C9

Детализированная архитектура Authelia

graph TD
    subgraph Authelia
        A[Frontend] -->|API| B[Backend]
        B --> C[Аутентификация]
        B --> D[Авторизация]
        B --> E[2FA]
        C -->|LDAP/OIDC| F[Identity Provider]
        D -->|ACL| G[Политики доступа]
        E -->|TOTP/SMS| H[Провайдеры 2FA]
    end
    I[Reverse Proxy] -->|Запросы| B
    B -->|Сессии| J[Redis]
    F -->|Пользователи| K[PostgreSQL]