Связывает callback с начатой сессией через непредсказуемый state
Зачем
Зачем это нужно
Использует PKCE там, где клиент не может надёжно хранить общий секрет
Привязывает внешний subject к локальной учётной записи без доверия email вслепую
Вопросы
Частые вопросы
Зачем нужны одновременно state и PKCE?
Они защищают разные участки: state связывает ответ с вашей пользовательской сессией, PKCE не позволяет обменять перехваченный код без исходного verifier. Один не заменяет другой. Модель покажет, где генерировать, хранить и одноразово проверять оба значения в вашем потоке.
Можно ли считать email уникальным идентификатором?
Надёжнее использовать пару issuer и subject, которую поставщик выдаёт как стабильный идентификатор. Email может измениться, быть неподтверждённым или совпасть в разных источниках. Модель сохранит внешний ключ отдельно и разработает явный процесс привязки к уже существующему аккаунту.
Где хранить access token?
Только если он действительно нужен для вызова внешнего API, и тогда — на сервере в защищённом хранилище с минимальным сроком. Для простого входа часто достаточно локальной сессии после проверки ответа. Модель не будет передавать долгоживущий внешний токен в JavaScript без необходимости.
Рядом
Соседние страницы каталога
Дальше — весь каталог задач: поиск по названию, темы и фильтры.