Аутентификация и авторизация в проекте с микросервисной архитектурой: стратегии, практический пример
«Аутентификация и авторизация в проекте с микросервисной архитектурой: стратегии и практический пример реализации» — Олег Казаков, технический директор, Digital Spectr. Доклад с митапа #DevTalks ({Perm} Dev Meetup) (11 декабря 2021) 0:00 - Представление спикера 1:30 - История развития веб-разработки 1:57 - Обзор монолитной архитектуры 6:40 - Обзор SPA-решений 8:58 - Обзор микросервисной архитектуры 15:28 - Описание проблемы 18:20 - Аутентификация на каждом микросервисе 20:20 - Работа с пользователями в отдельном микросервисе 23:27 - Паттерн API Gateway 26:04 - Процесс аутентификации 26:52 - Процесс авторизации 29:10 - Описание JWT 31:34 - Описание OAuth 2.0 32:52 - Пример реализации API Gateway 35:00 - Блок вопросов У микросервисной архитектуры много преимуществ: гибкость и автономность, возможность выбора стека для каждого микросервиса, простота кода и небольшое кол-во зависимостей в рамках одного микросервиса, масштабируемость под нагрузки. Однако есть и минусы. С развитием любого проекта неизбежно растет и сложность его поддержки. Рассмотрим один из показательных кейсов: аутентификация пользователей. Сложность в том, что у каждого микросервиса часто есть изолированная БД, но при этом нам необходимо разграничивать доступ в рамках всей системы. Будет разобран практический опыт реализации данного функционала. Будет полезно: — тем, кто только начинает знакомство с микросервисной архитектурой — тем, кто уже столкнулся с проблемами данной архитектуры на своем проекте В докладе: — рассмотрен паттерн API Gateway: обзор, конфигурация nginx — поговориили об OAuth2 — рассмотрены возможные стратегии для реализации аутентификации и практический пример одной из них Материалы доклада: — https://gitlab.com/users/ok-digital-s...
- пример реализации — https://microservices.io/
- большой портал с информацией про MSA — https://www.nginx.com/resources/libra...
- книга про микросвервисы от Nginx — https://mcs.mail.ru/blog/26-osnovnyh-...
- описание различных паттернов MSA — https://tsh.io/blog/microservices-arc...
- блог про веб-разработку, а данная статья - компиляция нескольких других статей про MSA — https://microarch.ru/blog
- блог автора курса по микросервисной архитектуре. Статей немного, но надеюсь будут добавляться #devtalks #devtalks_russia