Files
transcriber/tasks/items/login-url-from-collection-settings.md
T
av 312caf0fa3 tasks: тип login-url-from-collection-settings сменён на feature
- задача оказалась шире chore: у нормированного адреса входа появляется
  новый исход отказа, а обязательность проверочного кода PKCE переезжает
  в настройки провайдера в хранилище
- дальше она идёт сценарием решения, следующим прогоном
2026-08-14 08:45:44 +03:00

3.5 KiB

Строить адрес входа из настроек коллекции, а не из конфига

  • Тип: feature
  • Категория: Очередь — Замыкает тройку правок обработчиков входа.
  • Зачем: Первая половина входа собрана руками из конфига и на настройки провайдера не смотрит, вторая берётся из коллекции: обновление библиотеки изменит только вторую половину.

Найдено ревью задачи oidc-login 2026-08-12, отчёт триажа — review/report.md, пункт срезанного потолком под номером 7.

Сегодня адрес согласия собирается своим кодом: состав запрашиваемых сведений, способ проверочного кода и признак ответа записаны у нас, а обмен кода берёт настройки провайдера из коллекции хранилища. Библиотека умеет собирать этот адрес сама — она делает это своим обработчиком способов входа.

Цена расхождения отложенная: адреса провайдера и идентификатор клиента получают второго потребителя мимо единственного места, где настройки живут, а правка провайдера в панели на начало входа не влияет вовсе. Обновление библиотеки, тронувшее форму запроса согласия, доедет до половины протокола и разойдётся молча — отказом на живой выкладке, которого нечем воспроизвести.

Затрагивает

  • эндпоинт GET /auth/login, где сегодня адрес согласия собирается вручную;
  • поля auth_url и client_id в секции [auth] конфига и их проброс — часть из них перестаёт быть нужной приложению;
  • дельта-спека access, требование «Вход через внешнего провайдера» — состав запрашиваемых сведений и способ проверочного кода перестают быть нашими.

Критерии приёмки

  • Адрес согласия строится из настроек коллекции: правка провайдера в панели меняет адрес, куда уводит вход. Оракул — тест: сменить настройки провайдера в хранилище и убедиться, что адрес перенаправления изменился.
  • Проверочный код и состав запрашиваемых сведений берутся у библиотеки, а не записаны у нас. Оракул — чтение кода: своих литералов состава больше нет.
  • Вход по-прежнему проходит целиком. Оракул — существующий тест входа через подставного провайдера остаётся зелёным.