- слово «провенанс» снято из словаря проектных текстов: у числа теперь «происхождение», у вопроса и находки — «откуда» - правлены форма вопроса в docs/review.md, шапка раздела об OIDC в docs/research/pocketbase.md и две записи задач; формулировки прошли вычитку агентами doc-wording и task-wording - архив openspec/changes/archive/ не тронут: слово, верное на день записи, остаётся свидетельством
3.8 KiB
3.8 KiB
🔬 Четыре недоказанные гипотезы о поверхности входа
- Тип: research
- Категория: Очередь — Разведка закрывает тему входа последней: остальные три задачи меняют то, что она проверяет.
- Зачем: Ревью назвало четыре пути, которых не смогло ни подтвердить, ни опровергнуть: браузера и живого провайдера в прогоне не было.
Откуда — отчёт триажа ревью задачи oidc-login 2026-08-12,
review/report.md,
раздел «Гипотезы без доказательства». Каждая либо становится задачей, либо
закрывается с причиной; сегодня они не то и не другое.
Вопрос
Работает ли хоть один из четырёх путей на самом деле, и если да — чего стоит каждый?
- Выход по чужой ссылке. Адрес выхода сессии не требует и на запросе с
чужого сайта отвечает успехом, убирая куку. Применит ли браузер эту куку при
ограничении
SameSite=Lax— по коду не выяснить. Если применит, человека выкидывает молча, а унесённое значение остаётся годным. - Слияние двух учётных записей провайдера с одной почтой. Обмен ищет запись по неизменяемому признаку провайдера, а не найдя — по адресу почты. Выдаст ли Authelia двум разным субъектам один адрес, зависит от её настройки.
- Поле снимка в ответе провайдера тянет данные наружу. Оно сопоставлено файловому полю учётной записи, и библиотека скачивает названный там адрес — до потолка размера записи. Шлёт ли Authelia это поле и кто им управляет, неизвестно.
- Анонимный запрос подтверждения почты. Адрес отвечает успехом и заставляет сервис слать почту. Почта не настроена, и потолка числа запросов нет.
Куда ляжет ответ
- подтверждённый путь — задачей в беклоге, и она называет эту разведку;
- опровергнутый — строкой в
docs/security.md, раздел «Что вне модели» либо «Что разграничивает доступ», чтобы следующее ревью не открывало его заново; - то, что зависит от настройки Authelia, — строкой там же, с указанием, какая именно настройка это решает.
Рамки
Смотрим только четыре названных пути. Первый требует настоящего браузера, второй
и третий — настоящей Authelia либо её настройки из pet-project-server;
четвёртый воспроизводится своим прогоном без внешних систем и потому берётся
первым. Прогонов на боевом контуре не делаем.