Разработчики Auth Stack отказываются от Auth0 в пользу

Устали от дорогих и ограничивающих платформ аутентификации, таких как Auth0? Откройте для себя Ory Kratos — сервер идентификации с открытым исходным кодом и самостоятелнй хостинг, который предоставляет разработчикам полный контроль без зависимости от поставщика.

Stork.AI
Hero image for: Разработчики Auth Stack отказываются от Auth0 в пользу
💡

TL;DR / Key Takeaways

Устали от дорогих и ограничивающих платформ аутентификации, таких как Auth0? Откройте для себя Ory Kratos — сервер идентификации с открытым исходным кодом и самостоятелнй хостинг, который предоставляет разработчикам полный контроль без зависимости от поставщика.

Золотые наручники управляемой аутентификации

Управляемая идентичность кажется простым решением, пока не приходит счет. Сервисы такие как Auth0 и Okta взимают плату за каждого активного пользователя в месяц, поэтому продукт, количество пользователей которого возрастает с 10,000 до 100,000, может заметить, как расходы на аутентификацию взлетают с сотен до десятков тысяч долларов в месяц. Для B2C приложений с переменным трафиком этот счетчик активных пользователей становится налогом на рост, а не предсказуемой статьей расходов.

Привязка к поставщику усиливает проблему. Как только вы интегрируете свои процессы входа, правила и метаданные пользователей в собственный движок правил, миграция становится похожей на открытую операцию на сердце. Пользовательские действия, собственные токены и хостинг страниц входа заставляют команды продолжать платить, а не перерабатывать основную логику аутентификации.

Жестко контролируемые экосистемы обещают безопасность, но часто оказывают жесткость. Многие провайдеры заставляют вас пользоваться их хостинг-интерфейсами, SDK и предвзятыми процессами, что делает даже простые настройки—например, добавление нового этапа верификации или поддержку непривычной устаревшей SSO—ощущением борьбы с платформой. Когда вам нужен нестандартный процесс входа, вы обнаруживаете, насколько мало у вас на самом деле возможностей.

Владение данными добавляет еще один уровень дискомфорта. Учитывая, что идентификаторы пользователей, сессии и журналы аудита находятся в облаке другого человека, им управляют непрозрачные внутренние политики и лимиты по использованию. Экспортные API существуют, но они редко предоставляют низкоуровневый контроль над схемами, индексами или сроками хранения данных в резервных копиях.

Для стартапов в регулируемых отраслях эти ограничения быстро сталкиваются с реальностью. Строгие правила хранения данных в ЕС, здравоохранении или финтехе часто требуют, чтобы таблицы пользователей находились в конкретном регионе или даже в конкретном кластере баз данных. Когда ответ вашего провайдера звучит как «наш план развития» или «регион только для предприятий», ваша команда по соблюдению норм начинает задавать вопросы, почему аутентификация вообще делегирована сторонним компаниям.

Разработчики отвечают на это требованием большего контроля, большей прозрачности и возможности владеть целым стеком. Открытые системы, такие как Ory Kratos, меняют модель: вы сами управляете сервером идентификации, определяете свои собственные схемы и храните данные пользователей в своей базе данных. Управляемая аутентификация все еще имеет свое место, но золотые наручники начинают казаться гораздо теснее.

Встречайте Kratos: Ваш собственный сервер идентификации.

Иллюстрация: Познакомьтесь с Кратосом: вашим саморазмещаемым сервером идентификации.
Иллюстрация: Познакомьтесь с Кратосом: вашим саморазмещаемым сервером идентификации.

Управляемые платформы аутентификации хотят быть вашим всем. Ory Kratos хочет быть только вашим механизмом идентификации. Он поставляется в качестве сервера идентификации с акцентом на API и только бэкенда, который работает за любым пользовательским интерфейсом, фреймворком или устройством, которые вы используете — Next.js, мобильными приложениями, одностраничными приложениями, даже устаревшими монолитами — не заставляя вас пользоваться проприетарным виджетом или панелью управления.

Kratos предоставляет каждый major процесс аутентификации через HTTP API: регистрацию, вход, управление профилем, восстановление и настройки. Ваш фронтенд никогда не должен хранить логику паролей или создавать волшебные ссылки; он просто организует потоки, которые определяет и защищает Kratos. Это разделение делает аутентификацию похожей на любой другой внутренний микросервис, а не на черный ящик SaaS-продукта.

Сразу из коробки Kratos обрабатывает основные сценарии, которые большинство приложений в итоге плохо перестраивают. Вы получаете регистрацию пользователей с валидацией на основе схемы, вход по паролю и необязательную многофакторную аутентификацию (MFA) для учетных записей с высоким уровнем риска. Он также управляет проверкой электронной почты, активацией аккаунта и надежным управлением сессиями, включая отзыв и ротацию сессий.

Потоки ведут себя как конечные автоматы, которые вы контролируете через конфигурацию. Вы можете определить, куда попадают пользователи после регистрации, какие поля они должны заполнить и как работают ссылки для восстановления или верификации. Для большинства приложений это означает отсутствие пользовательского кода для функций «забыл пароль», «подтвердите свою электронную почту» или «обновить профиль», за исключением настройки интерфейса.

Kratos изначально разработан для самостоятельного хостинга и может работать везде, где работает Docker: на ноутбуке, кластере Kubernetes или на физическом сервере в шкафу. Официальное быстрое руководство использует один файл `docker-compose`, но тот же образ контейнера масштабируется для многонодовых развертываний. Никакой региональной блокировки, никаких принудительных путей миграции, никаких непрозрачных окон технического обслуживания.

Хранение данных остается под вашим контролем. Kratos поддерживает базы данных, такие как SQLite для локальной разработки и PostgreSQL для продакшна, подключенные через простой DSN в конфигурации YAML. Вы владеете таблицей пользователей, аудитом и резервными копиями, что имеет значение для соблюдения GDPR, SOC 2 и для клиентов, которые спрашивают: «Где именно находятся мои данные?»

Самостоятельное хостинг также устраняет беспокойство по поводу ценовой модели, основывающейся на MAU. Вместо того чтобы платить Auth0 или Okta каждый раз, когда количество пользователей резко возрастает, вы платите за ЦП, ОЗУ и диск. Если вам впоследствии понадобятся социальный вход, OAuth2 или расширенные права доступа, Kratos интегрируется с более широкой экосистемой Ory, не требуя переписывания платформы.

Кратос против Auth0: Лоб в лоб

Управляемая идентичность начинает выглядеть иначе, когда вы углубляетесь в развертывание. Ory Kratos поставляется как сервис, совместимый с Docker, который вы можете запускать где угодно — в вашем кластере Kubernetes, на физическом сервере или на дешевом VPS. Auth0, напротив, существует в основном как полностью управляемый SaaS, с инфраструктурой, масштабированием и обновлениями, скрытыми за его панелью управления и API.

Этот раздел имеет значение, когда вам нужен контроль. С Kratos ваш стек авторизации находится внутри вашей сети, рядом с вашим приложением и базами данных, интегрирован в вашу существующую систему наблюдения и CI/CD. Auth0 предлагает вам отлаженную облачную консоль и соглашения об уровне обслуживания, но вам приходится принимать его регионы, темпы развертывания и непрозрачную настройку производительности в обмен.

Модели ценообразования также резко различаются. Auth0 устанавливает цены на основе Месячных Активных Пользователей, ограничивая доступ к функциям и аренде тенантов по подписочным тарифам, которые могут резко увеличиваться, когда количество регистраций возрастает или когда неактивные пользователи временно возвращаются. Kratos является open source: вы платите за вычислительные ресурсы, хранение данных и время операций, а не за аренду идентичности.

Для продуктов с резкими или сезонными колебаниями трафика — таких как запуски игр, платформы бронирования билетов или образовательные инструменты в период экзаменов — ценообразование по количеству активных пользователей превращается в налог на волатильность. Самостоятельно размещённый кластер Kratos может работать на минимальных ресурсах и горизонтально масштабироваться по мере необходимости, без неожиданных счетов, связанных с поведением пользователей. Вы обмениваете предсказуемые затраты на инфраструктуру на непредсказуемые счета за SaaS.

Гибкость – это то, на чем Kratos делает основной акцент в своем API-first дизайне. Каждый процесс — регистрация, вход, восстановление, верификация, многофакторная аутентификация — открывает JSON API, которые может вызывать любой клиент, будь то SPA на Next.js, нативное мобильное приложение или командная строка. Схемы идентичности находятся в конфигурации, так что вы можете определить такие характеристики, как идентификаторы компаний, кастомные роли или флаги регионов, не дожидаясь одобрения поставщика вашего случая использования.

Auth0 предлагает огромный каталог предварительно созданных интеграций и правил, но они приходят с ограничениями. Вы подключаетесь к их страницам "универсального входа", их триггерам действий, их модели арендаторов. Глубоко нестандартные потоки — прогрессивная профилизация, многопользовательский B2B с индивидуальной маршрутизацией или сложные политики для каждой организации — часто требуют обходных путей или хрупкого клеевого кода.

Kratos вписывается в модульный стек: совместите его с Hydra для OAuth2/OIDC, Keto для управления правами, Oathkeeper в качестве прокси, осведомленного о идентичности, и Ory Elements для интегрируемых UI-компонентов. Auth0 объединяет многие из этих возможностей под одним брендом, но такой пакет также усиливает зависимость от вендора. Для команд, готовых управлять своей инфраструктурой, Ory Kratos - Документация выглядит скорее как проект для системы аутентификации, которую они действительно контролируют.

Полная экосистема Ory: За пределами базового входа

Кратос находится в центре чего-то большего: модульного стека Ory, который пытается разгруппировать то, что такие платформы, как Auth0 и Okta, продают как единый непрозрачный блок. Вместо одного монолита Ory разделяет идентичность на специализированные сервисы, которые вы можете запускать, масштабировать и заменять независимо. Кратос управляет идентичностями и сессиями, но передает токены, разрешения и контроль на границе своим аналогам.

Для OAuth2 и OpenID Connect Ory Hydra вступает в дело. Hydra выступает в роли вашего сервера авторизации, выдавая токены доступа OAuth2 и токены идентификации OIDC, которые уже понимают клиенты, соответствующие стандартам. Вы подключаете Kratos в качестве провайдера входа, а затем позволяете Hydra управлять процессами согласия, сроками действия токенов и регистрацией клиентов в веб-, мобильных и нагрузках «машина-машине».

Тонкая авторизация основана на Ory Keto, который реализует управление доступом на основе отношений в стиле Google Zanzibar. Вместо того, чтобы жестко кодировать роли в логике приложения, вы моделируете отношения, такие как «пользователь X может редактировать документ Y», и запрашиваете решения у Keto. Эта схема масштабируется от простого управления доступом на основе ролей (RBAC) до сложных многоарендных систем, где тысячи разрешений меняются каждую минуту.

Сидя на краю, Ory Oathkeeper выступает в качестве прокси-сервера с учетом идентичности перед вашими API и услугами. Oathkeeper проверяет токены от Hydra, извлекает идентификационные данные из Kratos и применяет правила доступа, которые могут делегировать Keto для окончательного решения «да/нет». Вы определяете правила как конфигурацию, а не код, так что можете обновлять политики без повторного развертывания вашего приложения.

Объедините их, и вы получите полнофункциональную альтернативу корпоративным пакетам: Kratos для идентичностей, Hydra для OAuth2/OIDC, Keto для авторизации и Oathkeeper в роли контроллера доступа. Каждый из них работает как контейнер, использует HTTP/JSON и остаётся с открытым исходным кодом, поэтому вы можете развернуть их на «голом» железе, Kubernetes или в одном файле Docker Compose. Вместо того чтобы платить за активных пользователей в месяц, вы оплачиваете инфраструктуру и сохраняете полный контроль над каждой частью аутентификационной цепочки.

От Нуля до Входа: Ваша Первая Настройка Kratos

Иллюстрация: От нуля до входа: ваша первая настройка Kratos
Иллюстрация: От нуля до входа: ваша первая настройка Kratos

Запуск Ory Kratos с нуля начинается с Docker, а не с веб-панели. Вы создаете папку `kratos-demo`, переходите в подпапку `docker` и настраиваете файл `docker-compose.yml`, который загружает официальное изображение Ory Kratos, монтирует локальный файл `users.db` SQLite и связывает `config/kratos.yml` с `identity.schema.json`. После команды `docker compose up` Kratos запускается в режиме разработки, открывая свои публичные и административные API на localhost.

Файл `docker-compose.yml` в значительной степени повторяет официальный quickstart.yml, но настроен для использования на ноутбуке. В файле заданы значения `KRATOS_PUBLIC_URL` и `KRATOS_BROWSER_URL` как `http://localhost:4433` и `http://localhost:4455`, монтируется директория конфигурации и связывается контейнер почтового сервера для отправки верификационных писем. Порты остаются по умолчанию — 4433 для публичного доступа, 4434 для администраторов — так что любой пример клиентского кода из документации работает без изменений.

Конфигурация затем переходит к двум основным файлам: `kratos.yml` и JSON-схеме идентичности. Схема идентичности, скопированная из email-password/identity.schema.json, определяет JSON-схему с такими атрибутами, как `email`, `first_name` и `last_name`, а также учетные данные пароля. Вы можете расширить ее с помощью пользовательских полей — идентификаторов компаний, ролей или флагов функций — не трогая ядро Kratos.

Файл `kratos.yml` связывает все воедино. Вам нужно указать `selfservice.default_browser_return_url` и разрешенные источники на ваше приложение Next.js по адресу `http://localhost:3000`, а также разрешить HTTP-методы и заголовки CORS. Каждый поток — `вход`, `регистрация`, `восстановление`, `проверка`, `настройки` — получает `ui_url`, который напрямую соответствует маршруту на фронтенде, например, `/auth/login` или `/auth/register`.

Секреты и настройки электронной почты хранятся в одном и том же YAML. Демонстрационные конфигурации используют временные секреты, но в производственных настройках необходимо регулярно обновлять надежные ключи для `secrets.cookie` и `secrets.cipher`. SMTP-учетные данные настраивают почтовый сервер, чтобы Kratos мог отправлять ссылки для верификации и восстановления, которые затем перенаправляют пользователей обратно на те же маршруты `ui_url`.

На фронтенде приложение Next.js интегрировано с Kratos с использованием `@ory/nextjs` и Ory Elements. Переменные окружения, такие как `NEXT_PUBLIC_KRATOS_PUBLIC_URL=http://localhost:4433` и `KRATOS_BROWSER_URL=http://localhost:4455`, добавляются в файл `.env.local`, сопоставляясь с URL Docker. Небольшой файл `ory.config.ts` соединяет SDK с этими конечными точками.

Middleware Next.js выполняет тяжелую работу во время выполнения. Файл `middleware.ts` перехватывает запросы, вызывает API-сессий Kratos и либо пропускает аутентифицированных пользователей, либо перенаправляет анонимных посетителей в процесс входа, управляемый Kratos. Таким образом, вы получаете полностью интегрированные экраны регистрации, входа, проверки электронной почты и многофакторной аутентификации, работающие на вашей собственной инфраструктуре, а не на Okta или Auth0.

Распаковка пользовательского интерфейса: как Ory Elements экономит вам недели времени

Управляемые идентификационные стеки обычно разваливаются на фронтенде. Вы либо поддаетесь вендору и используете их хостинговое окно для входа, либо тратите дни на настройку состояния формы, валидацию и обработку ошибок для каждого случая авторизации. Ory Elements существует именно для того, чтобы покончить с этой рутиной.

Вместо того чтобы отправлять один виджет, Elements — это полноценная библиотека компонент пользовательского интерфейса для React, Next.js (включая App Router) и других современных фреймворков. Вы устанавливаете её как любой другой пакет npm, добавляете её компоненты в свои маршруты и настраиваете их на ваш публичный эндпоинт Ory Kratos.

Хитрость заключается в том, что Elements не задает фиксированного вида для «формы входа». Kratos предоставляет описание каждого процесса — входа, регистрации, восстановления, настройки и проверки — в виде JSON-схемы, описывающей поля, методы, CSRF-токены и сообщения. Elements считывает эту схему во время выполнения и автоматически отображает правильный интерфейс.

Перейдите по маршруту входа в демо-приложении Next.js, и Elements извлекает процесс входа из Kratos, а затем создает форму: поле для электронной почты, поле для пароля, кнопку отправки, сообщения об ошибках, а также любые дополнительные параметры, которые вы определили в своей схеме идентичности. Включите многофакторную аутентификацию или добавьте поле для имени пользователя в Kratos, и интерфейс обновится без каких-либо переделок на фронтенде.

Это динамическое поведение применяется ко всем потокам. Из коробки Elements могут отображать: - Вход и регистрацию - Настройки аккаунта и управление профилем - Восстановление пароля и подтверждение электронной почты - Регистрацию многофакторной аутентификации и экраны с вызовами

Разработчики получают полный контроль над представлением. Компоненты поставляются без стилей или с легкой стилизацией, чтобы вы могли обернуть их в свою собственную верстку, применить Tailwind или CSS Modules и брендировать каждый экран, не переписывая логику. Вы сохраняете свою дизайн-систему, одновременно делегируя сложные детали протокола.

Экономия времени накапливается быстро. Обычная команда может потратить 1–2 недели на создание и доработку форм аутентификации, а затем еще время на их поддержание в связи с изменениями требований. С Elements большая часть этого сводится к настройке нескольких маршрутов и переменных окружения, как показывает демонстрация Better Stack.

Для более глубокой настройки — например, изменения идентификационных признаков, потоков или политик безопасности — вам нужно будет адаптировать сам Kratos. Официальная документация Ory Kratos подробно объясняет, как эти изменения на стороне сервера автоматически будут отражаться в вашем интерфейсе, поддерживаемом Elements.

Безопасность, которая встроена, а не прикручена.

Безопасность занимает центральное место в Ory Kratos, а не добавляется как дополнение. Из коробки Kratos проверяет каждый пароль через обширную базу данных утечек Have I Been Pwned, отказываясь от учетных данных, которые уже встречались в реальных утечках. Эта проверка сама по себе тихо уничтожает целые классы попыток захвата учетных записей, которые существуют за счет повторного использования паролей.

Kratos также включает в себя ограничение по количеству запросов, усиление сессий и защиту от CSRF, так что вам не нужно заново изобретать их в промежуточном ПО. Политики паролей, продолжительность сессий и многофакторная аутентификация находятся в конфигурации, а не разбросаны по контроллерам и плагинам. Вы получаете единый уровень безопасности для веба, мобильных приложений и API-клиентов, потому что все проходит через один и тот же API-first механизм.

Вместо случайных "лучших практик" Kratos отслеживает рекомендации от NIST, IETF и основных исследовательских групп в Microsoft и Google. Это означает поддержку современных алгоритмов хеширования, настройки безопасности транспортного уровня, которые отдают предпочтение TLS везде, и потоки входа, избегая антишаблонов, таких как произвольные правила сложности паролей. Поддерживающие проект явно ссылаются на работы Троя Ханта и других по удобной безопасности, поэтому настройки склоняются к "безопасным и гуманным", а не "безопасным и враждебным".

Команды по соблюдению требований меньше заботятся о модных словах и больше о контроле, а самохостинг Kratos предоставляет это по умолчанию. Идентичности пользователей, сессии и журналы аудита хранятся в вашей базе данных, в вашем регионе, под вашими правилами хранения. Вы выбираете облако, шифрование данных в покое, стратегию резервного копирования и политику размещения данных, соответствующую вашим регуляторам, а не общему кластеру SaaS поставщика.

Для GDPR этот контроль трансформируется в практические преимущества. Соглашения об обработке данных становятся проще, когда вы являетесь обработчиком, а не просто арендатом в чужом авторизационном хранилище. Право на удаление, экспорт данных и ограничение целей становятся деталями реализации в вашей собственной системе, а не поддержкой в виде запросов к третьей стороне.

Auth0 и Okta могут быть настроены для достижения схожих стандартов, но вы всегда действуете в рамках их ограничений. С Ory Kratos эти ограничения — это ваши собственные политики, выраженные в виде кода и конфигурации, и проверенные вместе с остальной частью вашей инфраструктуры.

Функции нового уровня: 2FA за считанные минуты

Иллюстрация: Функции следующего уровня: 2FA за считанные минуты
Иллюстрация: Функции следующего уровня: 2FA за считанные минуты

Многофакторная аутентификация обычно означает необходимость работы с SDK, библиотеками QR-кодов и пользовательским интерфейсом настроек. С Ory Kratos достаточно переключить несколько флагов в YAML-файле, и ваше приложение начнет поддерживать TOTP, как опытный продукт безопасности. Kratos предоставляет весь процесс 2FA через свой API, так что ваш бэкенд остается чистым, а вашему фронтенду не нужно заниматься индивидуальной настройкой безопасности.

Включите TOTP в конфигурации Kratos, и сервер сразу добавит новый раздел “2FA” в потоки идентификации. Когда пользователь подписывается, Kratos генерирует секрет, кодирует его в формате `otpauth://` и возвращает готовый к отображению QR-код. Ваше приложение не взаимодействует с секретом напрямую; Kratos хранит и шифрует его, затем требует верификацию при каждом последующем входе.

Демо на Next.js показывает, как Ory Elements превращает возможности бэкенда в полностью управляемый экран настроек. Просто добавьте компоненты Elements в маршрут `/settings`, укажите публичный URL вашего Kratos, и вы получите живую панель пользователей без дополнительных машин состояния React. Пользователи могут:

  • 1Обновить характеристики профиля (электронная почта, имя, фамилия)
  • 2Смените их пароль
  • 3Включить или отключить двухфакторную аутентификацию (2FA) на основе TOTP

Все это отправляется из Elements в виде предварительно собранных, доступных компонентов, которые взаимодействуют с Kratos с использованием его типизированных потоков. Вы не соединяете пользовательские формы с произвольными конечными точками; вы отображаете декларативную модель формы, которую Kratos определяет во время выполнения. Когда Kratos добавляет или изменяет поле, пользовательский интерфейс обновляется автоматически.

Во время настройки двухфакторной аутентификации Kratos проводит пользователя через процесс сканирования QR-кода и верификации первого кода. Сервер проверяет TOTP на соответствие с хранимым секретом, учитывает расхождение времени и отмечает второй фактор как активный в записях идентификации. Когда пользователи снова входят в систему, Kratos обновляет сессию с однофакторной на многофакторную только после верификации действительного TOTP, а ваше приложение просто считывает полученное состояние сессии.

Это разделение обязанностей и является ключевым моментом: Kratos отвечает за генерацию QR-кодов, хранение секретов и верификацию TOTP; Ory Elements управляет пользовательским опытом. Ваше приложение просто использует безопасный, полностью управляемый конвейер многофакторной аутентификации, который вы можете настроить за считанные минуты, а не недели.

Вердикт разработчика: Кто должен использовать Kratos?

Платформы с управляемой идентичностью продолжают вызывать интерес среди разработчиков на Hacker News, и Ory Kratos часто упоминается в таких обсуждениях как вариант «Как хорошо было бы начать с этого». Комментаторы постоянно отмечают его API-first дизайн, чистые HTTP-потоки и то, что его можно запускать везде, где работает Docker — от VPS за $5 до Kubernetes. Для стартапов, которые смотрят на расценки Auth0 или Okta, меняющиеся в зависимости от MAU, привлекательность очевидна: предсказуемые затраты на инфраструктуру, отсутствие налога на пользователя и отсутствие закрытого движка правил, который нужно будет потом расшифровывать.

Kratos лучше всего подходит, когда аутентификация является核心 частью продукта, а не просто галочкой. Команды, разрабатывающие многопользовательские SaaS, приложения, требующие соблюдения конфиденциальности, или регулируемые рабочие нагрузки, получают полный контроль над данными об идентичности, схемами и их жизненным циклом. Вы владеете базой данных, определяете JSON-схему идентичности и решаете, как интегрировать потоки в ваши React, Next.js или нативные клиенты через Ory Elements или ваш собственный интерфейс.

Идеальные проекты обычно имеют несколько общего: - Необходимость глубокой настройки процессов регистрации, восстановления и конфигурации - Требования по местоположению данных, соблюдению GDPR или внутреннему аудиту - Долгосрочный план добавить OAuth2, SSO и детализированные права доступа, используя Ory Hydra, Keto и Oathkeeper

Эта модульная архитектура именно то, что привлекает разработчиков, уставших от платформ с «одним гигантским продуктом идентификации». Вы можете начать с комбинации электронной почты и пароля плюс TOTP, а затем добавить социальный вход или корпоративный SSO позже, не перерабатывая всё. Центр документации Ory акцентирует внимание на этом, предоставляя отдельные руководства для каждой службы, а не один монолитный мастер-настройщик.

Торговые уступки существуют, и темы на Hacker News не скрывают этого. Запуск Kratos означает владение образами Docker, конфигурацией, миграциями, SMTP, мониторингом и реагированием на инциденты. Вы заменяете счёт за SaaS операционными издержками: модули Terraform, CI-пайплайны, агрегация логов и дежурства.

Организации, ориентированные на инженерию, склонны считать это честной сделкой. Если вы уже используете PostgreSQL, Redis и сервисную сетку, добавление еще одного сервиса на Go — это шум, а не хаос. Для команды из двух человек, занимающейся созданием маркетингового сайта с функцией входа, полностью управляемый сервис может оказаться быстрее, даже если счет от Auth0 позже будет неприятным.

Кратос — это осознанный выбор. Вы покупаете свободу от зависимости от поставщиков, заплатив за возможность создать свою собственную систему идентификации, и для всё большего числа разработчиков это предложение наконец выглядит привлекательно.

Ваши полномочия, ваши правила: главное резюме

Контроль определяет современную инфраструктуру, а Ory Kratos — это то, как на самом деле выглядит контроль над идентичностью. Вместо того чтобы арендовать окно входа у Auth0 или Okta и надеяться, что цены не вырастут с вашим следующим ростом трафика, вы запускаете свой собственный сервер идентификации, упаковываете его в Docker и соединяете с любым стеком — Next.js, React, Go, называйте как хотите. Аутентификация перестаёт быть чёрным ящиком и снова становится обычным кодом приложения.

Kratos меняет правила игры в зависимости от SaaS. Вы получаете API-first движок, который обрабатывает регистрацию, вход в систему, восстановление доступа, подтверждение электронной почты и многофакторную аутентификацию, оставаясь при этом независимым от интерфейсов и фронтенд-фреймворков. Нужны OAuth2, тонкая настройка прав доступа или прокси, осознающий личность? Вы подключаете Hydra, Keto или Oathkeeper, когда они действительно нужны, вместо того чтобы покупать платформу «всё или ничего».

Структура затрат также изменяется. Управляемые счета за авторизацию по количеству активных пользователей и функциям; резкий скачок с 10,000 до 100,000 пользователей может обернуться пятизначным сюрпризом. Kratos — это проект с открытым исходным кодом, поэтому ваши основные расходы — это вычисления, хранение и время операций, и вы можете развернуть его на чем угодно, от VPS за $5 до Kubernetes в нескольких регионах.

Опыт разработчика остается на первом уровне. Ory Elements предоставляет готовые компоненты для React/Next.js, так что вы сможете реализовать работающие потоки входа, регистрации и настроек за считанные часы, а не недели. Файл Docker Compose для быстрого старта, образец схемы идентификации и пример приложения на Next.js позволяют вам за один день создать рабочий стек с подтверждением электронной почты и двухфакторной аутентификацией на основе TOTP.

Так что речь идет не о том, чтобы заменить одного провайдера аутентификации на другого, а о том, кто владеет вашим уровнем идентификации. Если вы начинаете новый SaaS, рефакторите монолит или пытаетесь сбежать от шока цен Auth0, выделите день и подключите Kratos. Проведите аудит вашей текущей аутентификации: цены, зависимость, пути экспорта и гибкость. Затем решите, должен ли ваш следующий проект работать по чужой дорожной карте — или по вашей собственной.

Часто задаваемые вопросы

Что такое Ory Kratos?

Ory Kratos — это сервер управления идентификацией и пользователями с открытым исходным кодом и API в первую очередь. Он обрабатывает основные процессы аутентификации, такие как регистрация, вход в систему, многофакторная аутентификация и восстановление аккаунта, позволяя разработчикам самостоятельно размещать его и полностью контролировать свою аутентификационную инфраструктуру.

Является ли Ory Kratos полностью бесплатным?

Да, основное программное обеспечение Ory Kratos является открытым и бесплатным для самостоятельного хостинга. Ory также предлагает платную лицензию для предприятий и управляемый облачный сервис (Ory Network), которые предлагают дополнительные функции, такие как высокая доступность, соглашения об уровне обслуживания и индивидуальная поддержка.

Как Ory Kratos сравнивается с Auth0?

Kratos предлагает большую гибкость, контроль и экономическую эффективность благодаря своей модели с самохостингом и открытым исходным кодом. Auth0 является полностью управляемым сервисом, который обеспечивает более быстрое развертывание и обширные предустановленные интеграции, но связан с зависимостью от поставщика и потенциально более высокими затратами.

Могу ли я перенести своих существующих пользователей с Auth0 на Ory Kratos?

Да, Ory предоставляет документацию и руководства по миграции существующей базы пользователей с таких платформ, как Auth0, на Kratos, что позволяет обеспечить более плавный переход.

Frequently Asked Questions

Вердикт разработчика: Кто должен использовать Kratos?
Платформы с управляемой идентичностью продолжают вызывать интерес среди разработчиков на Hacker News, и Ory Kratos часто упоминается в таких обсуждениях как вариант «Как хорошо было бы начать с этого». Комментаторы постоянно отмечают его API-first дизайн, чистые HTTP-потоки и то, что его можно запускать везде, где работает Docker — от VPS за $5 до Kubernetes. Для стартапов, которые смотрят на расценки Auth0 или Okta, меняющиеся в зависимости от MAU, привлекательность очевидна: предсказуемые затраты на инфраструктуру, отсутствие налога на пользователя и отсутствие закрытого движка правил, который нужно будет потом расшифровывать.
Что такое Ory Kratos?
Ory Kratos — это сервер управления идентификацией и пользователями с открытым исходным кодом и API в первую очередь. Он обрабатывает основные процессы аутентификации, такие как регистрация, вход в систему, многофакторная аутентификация и восстановление аккаунта, позволяя разработчикам самостоятельно размещать его и полностью контролировать свою аутентификационную инфраструктуру.
Является ли Ory Kratos полностью бесплатным?
Да, основное программное обеспечение Ory Kratos является открытым и бесплатным для самостоятельного хостинга. Ory также предлагает платную лицензию для предприятий и управляемый облачный сервис , которые предлагают дополнительные функции, такие как высокая доступность, соглашения об уровне обслуживания и индивидуальная поддержка.
Как Ory Kratos сравнивается с Auth0?
Kratos предлагает большую гибкость, контроль и экономическую эффективность благодаря своей модели с самохостингом и открытым исходным кодом. Auth0 является полностью управляемым сервисом, который обеспечивает более быстрое развертывание и обширные предустановленные интеграции, но связан с зависимостью от поставщика и потенциально более высокими затратами.
Могу ли я перенести своих существующих пользователей с Auth0 на Ory Kratos?
Да, Ory предоставляет документацию и руководства по миграции существующей базы пользователей с таких платформ, как Auth0, на Kratos, что позволяет обеспечить более плавный переход.
🚀Discover More

Stay Ahead of the AI Curve

Discover the best AI tools, agents, and MCP servers curated by Stork.AI. Find the right solutions to supercharge your workflow.

Back to all posts