Как стать автором
Обновить

Комментарии 7

Ого, какой изумруд под конец года! Похоже пока что это бесспорный лидер по соотношению количества лайков к количеству просмотров ;)

В конце статьи в списке ссылок первые две имеют один адрес.

Поправил ссылку. Спасибо, что заметили!

Спасибо за статью.

Правильно понял, что взяли в стек Oathkeeper в качестве API gateway? Если еще будет статья про это, интересно узнать, как и почему выбрали его, под какие именно задачи подошел. Раньше мнения были неоднозначные, некоторые писали, что продукт сыроват.

Вообще в комьюнити очень не хватает реальных кейсов использования Kratos/Hydra, было бы интересно почитать про опыт реализации и поддержки боевого решения:

  • Решали ли вопрос мультитенантности/мульти-realm, что Kratos из коробки не поддерживает

  • Какие впечатления от работы с кодовой базой, насколько удобно расширение функциональности

  • Вопросы масштабирования и работы под реальной нагрузкой, возможно, особенности работы с БД

  • Опыт организации деплоймента под Kratos

  • Анализ с точки зрения ИБ, есть ли нюансы

  • С какими еще проблемами можно столкнуться при разработке и эксплуатации

Все так, мы использовали комбинацию Kratos + Hydra + Oathkeeper и обязательно оформим опыт в статью.

Если коротко ответить на часть ваших вопросов:
Oathkeeper - скорость и простота с которой можно было настроить интеграцию с Kratos. Количество необходимых усилий и подробные примеры подкупили. На текущей стадии развития проектов с поставленными задачами справляется.

На момент старта эксплуатации в Kratos не было возможность реализовать passwordless login flow телефон + код. С частичной занятостью в течение недели проблему решили. Никто не плевался. Судя по релизным записям проекта - этот кейс доработан, последим и обновимся.

Будьте добры раскройте:

— OTP в Keycloak-е есть (https://www.keycloak.org/docs/latest/server_admin/#one-time-password-otp-policies), о каком отсутствии именно идет речь?

— Чем именно Java не дала вам кастомизации? Просто фраза «ну она на жабе, сложно кастомить» — это не аргумент в полной мере, хочется конкретики для чего велосипед, кроме как выполнять хотелки стейкхолдеров или инвесторов, или чтобы показывать что работу работаете 🙂 даешь большее сравнение что зачем и почему)

1) Возьмем кейс, что нам нужно реализовать passwordless login phone + OTP. У ORY Kratos есть возможность реализовать это как для браузерных, так и нативных клиентов.
https://www.ory.sh/docs/kratos/passwordless/one-time-codehttps://www.ory.sh/docs/kratos/self-service#api-flows-native-mobile--desktop-apps-command-line-interfaces-smart-tvs-and-more

Сделать подобное в Keycloak без написания плагинов - не получится.

2) У команды есть стек с которым она работает. Go в него входит, а Java - нет. Хочется избежать увеличения зоопарка технологий на проектах. Если говорить о кастомизации UI части приложения, то Kratos предлагает шаблоны репозиториев, которые как угодно можно переиначить под себя, без особых ограничений, а в случае с Keycloak или CAS - работа с темами и их шаблонами не выглядит столь же удобной. Если же речь о том, зачем еще 1 велосипед как Ory Kratos - то это отличное решение для старта проекта. Быстро и легко можно разобраться, все подробно и понятно написано. Это не промышленный комбайн, а хороший выбор для старта.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий