Аутентификация и авторизация в проекте с микросервисной архитектурой: стратегии, практический пример

«Аутентификация и авторизация в проекте с микросервисной архитектурой: стратегии и практический пример реализации» — Олег Казаков, технический директор, 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/devtalks-api-gateway - пример реализации — 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

MySQL и PostgreSQL: что «под капотом» и почему это важно знать прикладному разработчику
▶︎

MySQL и PostgreSQL: что «под капотом» и почему это важно знать прикладному разработчику

Что такое JWT, Access и Refresh токены. Разница между JWT и Сессиями. Bearer и виды авторизации.
▶︎

Что такое JWT, Access и Refresh токены. Разница между JWT и Сессиями. Bearer и виды авторизации.

Авторизация и аутентификация | Глубокая теория 2025
▶︎

Авторизация и аутентификация | Глубокая теория 2025

Cybersecurity Incident Investigation and Response
▶︎

Cybersecurity Incident Investigation and Response

Паттерны отказоустойчивой архитектуры / Александр Кривощёков (Яндекс Еда)
▶︎

Паттерны отказоустойчивой архитектуры / Александр Кривощёков (Яндекс Еда)

Микросервисы на пальцах. API-Gateway, API-Composition, BFF. Теория и практика на FastApi, KrakneD.
▶︎

Микросервисы на пальцах. API-Gateway, API-Composition, BFF. Теория и практика на FastApi, KrakneD.

Архитектура платежной системы: почти enterprise / Филипп Дельгядо
▶︎

Архитектура платежной системы: почти enterprise / Филипп Дельгядо

System Design - теория шардирования | Как масштабировать базы данных
▶︎

System Design - теория шардирования | Как масштабировать базы данных

Микросервисная архитектура, как в BigTech (микросервисы vs монолит)
▶︎

Микросервисная архитектура, как в BigTech (микросервисы vs монолит)

Михаил Вовренчук — OpenID Connect и OAuth2.0
▶︎

Михаил Вовренчук — OpenID Connect и OAuth2.0

Лучший Гайд по Kafka для Начинающих За 1 Час
▶︎

Лучший Гайд по Kafka для Начинающих За 1 Час

«Микросервисы vs монолит: разбираемся в архитектуре приложений»
▶︎

«Микросервисы vs монолит: разбираемся в архитектуре приложений»

Шаблоны проектирования для микросервисов
▶︎

Шаблоны проектирования для микросервисов

Денег на компенсации нет. Wildberries знал об атаке на склад. ЦБ пугает экономика | Владимир МИЛОВ
▶︎

Денег на компенсации нет. Wildberries знал об атаке на склад. ЦБ пугает экономика | Владимир МИЛОВ

Аутентификация в Веб-Приложениях 👨‍💻JWT и Сессии
▶︎

Аутентификация в Веб-Приложениях 👨‍💻JWT и Сессии

Круглый стол «Микросервисная архитектура vs Монолитная архитектура»  / {Perm} Dev Meetup
▶︎

Круглый стол «Микросервисная архитектура vs Монолитная архитектура» / {Perm} Dev Meetup

Филипп Вагнер «Распределенные транзакции в условиях микросервисной архитектуры»
▶︎

Филипп Вагнер «Распределенные транзакции в условиях микросервисной архитектуры»

Микросервисная архитектура, подходы и технологии / Кирилл Ветчинкин (TYME)
▶︎

Микросервисная архитектура, подходы и технологии / Кирилл Ветчинкин (TYME)

Распределенные транзакции / Что выбрать? Saga или 2pc? / Как подружить микросервисы
▶︎

Распределенные транзакции / Что выбрать? Saga или 2pc? / Как подружить микросервисы

API Gateway: пустая трата сил или полезный инструмент? / Василий Сошников (Quantil Inc.)
▶︎

API Gateway: пустая трата сил или полезный инструмент? / Василий Сошников (Quantil Inc.)