Authelia – это сервер аутентификации и авторизации с открытым исходным кодом, который предлагает 2FA и SSO для приложений через веб-портал. Он работает вместе с обратными прокси-серверами для разрешения, запрета или перенаправления запросов.
Authelia подключается непосредственно к обратному прокси, но никогда не подключается к бэкендам приложений. Поэтому полезная нагрузка, отправляемая клиентами защищенного API, никогда не достигает Authelia – только компоненты аутентификации, такие как заголовок Authorization. В результате защищенные API могут быть REST, GraphQL или любыми другими типами API по HTTP.
Возможности Authelia
Джеймс Эллиотт, один из разработчиков Authelia, рассказал о нескольких особенностях, которые полностью отличаются от большинства других решений в этой области:
Декларативная конфигурация. Эта особенность, вероятно, является отличительной чертой для большинства пользователей. Поскольку конфигурация полностью выполняется без пользовательского интерфейса и представляет собой конфигурационный файл, это делает ее невероятно удобной для работы с такими методологиями развертывания, как Ansible (и другие менеджеры конфигурации), Helm, а впоследствии и GitOps Workflows.
Очень низкий след. Сам Authelia при нормальной работе использует 20-25 МБ оперативной памяти и часто имеет незаметную загрузку процессора, за исключением операций хеширования паролей.
Процесс разработки Authelia направлен на отказ от реализации в случаях, когда последствия для безопасности сомнительны. Мы скорее откажемся от функции, чем введем функцию, которая по недоразумению может привести к негативным последствиям для безопасности пользователей.
Мы начинали с прямой интеграции с популярными обратными прокси-серверами таким образом, чтобы повысить безопасность приложений, обслуживаемых обратным прокси-сервером. Это позволяет обеспечить аутентификацию, прозрачную для пользователя и, по большей части, не зависящую от приложений. Даже если приложения не поддерживают реализацию SSO, этот поток, скорее всего, будет работать с ним.
Authelia работает с nginx, Traefik, Caddy, Skipper, Envoy или HAProxy.
Инструмент поддерживает аппаратную двухфакторную аутентификацтию для дополнительной безопасности, используя FIDO2 WebAuthn-совместимые ключи безопасности, такие как YubiKeys.
Планы на будущее и загрузка
OpenID Connect 1.0
Следующая версия Authelia:
- Пройдет 100% стандартных профилей соответствия, за исключением динамической регистрации клиента.
- Будет включать поток кодов устройств.
- Будет включать поддержку параметра авторизации претензий, позволяющего доверенным лицам запрашивать только те претензии, которые относятся к ним.
«Мы также смотрим в будущее в отношении безопасности и конфиденциальности нашей реализации, постепенно добавляя аспекты API финансового класса в Authelia, такие как RFC9126 Pushed Authorization Requests, который уже реализован. В большинстве ситуаций Financial-grade API представляется разумным набором настроек безопасности по умолчанию и полезных функций, которые улучшают безопасность и конфиденциальность и хорошо вписываются в цели Authelia»
- сказал Эллиотт
WebAuthn
В следующей версии Authelia будет расширена поддержка WebAuthn:
- Регистрация и вход по ключу.
- Фильтрация AAGUID.
- Более строгая проверка аттестатов через записи MDS3.
Authelia доступна бесплатно на GitHub.
Комментарии (0)