Страница входа и Query-модель

Продолжаем интеграцию. Когда у нас готовы сущности и репозитории создадим сам компонент OAuth-сервера. Для него сгенерируем файлы ключей и сделаем их деплой из Jenkins через Docker Secrets. Сделаем страницу входа и контроллер для генерации и обновления токенов. Все контроллеры покроем функциональными тестами.

По аналогии с Command добавим Query-модель на DBAL для выполнения запросов на чтение данных из модуля. И заодно рассмотрим, как можно избавиться от вызова синглтона SentrySDK в коде наших сервисов и экшенов:

  • 00:00:43 - Работа с Authorization Server
  • 00:05:59 - Ключи для подписи и шифрования
  • 00:07:55 - Регистрация Encryption Key
  • 00:09:50 - Использование Secrets в Docker
  • 00:14:28 - Деплой файлов из Jenkins
  • 00:16:38 - Создание авторизационного сервера
  • 00:20:43 - Функциональные тесты авторизации
  • 00:22:49 - Тестирование HTML-страниц
  • 00:29:41 - Ответ для HTML-страниц
  • 00:30:51 - Вёрстка страницы входа
  • 00:31:59 - Контроллер для входа
  • 00:35:51 - Вынос компонента Sentry
  • 00:38:16 - Избавление от вызова синглтона
  • 00:45:05 - Команды и запросы
  • 00:47:08 - Запрос пользователя по паролю
  • 00:49:25 - Отдельная Query-модель чтения
  • 00:53:04 - Запросы через DBAL
  • 00:55:17 - Реализация формы входа
  • 01:02:22 - Экшен генерации токенов

В следующем эпизоде сделаем аутентификацию для страницы просмотра профиля и добавим Cron-команды в Docker Swarm для очистки старых кодов и токенов.

Скрытый контент
Комментарии (8)
Руслан

Спасибо!

Ответить
Максим

Спасибо!)

Ответить
v

Почему Fetcher из FindIdByCreedintials сам строит запрос в базу данных, а не обращается к UserRepository?

Ответить
Дмитрий Елисеев

Как раз об этом рассказал с 49-ой минуты

Ответить
Александр

Спасибо!

Ответить
fedot

Спасибо!

Ответить
Arunas

Спасибо :)

Ответить
Артем Астапов

Дмитрий, добавляйте пожалуйста ссылки на гайды - например, с сайта developer.okta.com и oauth2.thephpleague.com

Ответить
Зарегистрируйтесь или войдите чтобы оставить комментарий

Или войти через:

Google
GitHub
Yandex
MailRu