Search by

verdeect / identity-laravel

smskin

Интеграция продукта установки Verdeect с Identity Service

Package info

github.com/smskin/verdeect-identity-laravel

pkg:composer/verdeect/identity-laravel

Statistics

Installs: 3

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.0 2026-09-08 14:33 UTC

This package is auto-updated.

Last update: 2026-09-08 15:14:00 UTC


README

Интеграция продукта установки Verdeect с Identity Service: поток входа, токены, профиль, разрешение имён, данные кросс-сервисной навигации и потребитель сообщений установки.

Кода интеграции в самом продукте нет. Обязательства продукта установки одинаковы для всех продуктов экосистемы; переписывать их в каждом означало бы переписывать и ошибки в них.

Что даёт пакет

  • Документ обнаружения и кэш JWKS с перечитыванием по неизвестному kid
  • Поток кода с PKCE, порождение и проверка state и nonce
  • Хранение токенов ключом по sid, обмен под блокировкой и с упреждением
  • Профиль текущего пользователя из /userinfo с кэшем и формами имени
  • Выход через /end-session
  • Потребление сообщений установки и механика отметок гашения сессий
  • Клиенты /api/users/resolve и /api/users/services служебным токеном
  • Сборку разделяемых свойств Inertia и вычисление origin установки для политики содержимого
  • Тестовую оснастку для наборов продукта

Что остаётся продукту

Конфигурация двух клиентов, регистрация middleware, реализация точек расширения, монтирование компонентов навигации и отображение имён на своих экранах.

Компоненты навигации поставляет отдельный npm-пакет @verdeect/identity-nav-vue: этот пакет их не публикует.

Быстрый старт

composer require verdeect/identity-laravel

Три шага, без которых вход не заработает:

  1. Заполнить окружение — адрес установки и два клиента (Установка и настройка).
  2. Добавить EnforceSessionMarks и RefreshIdentityToken в группу web именно в этом порядке, повесить RequireIdentitySession алиасом на экраны (Встраивание).
  3. Отдать IdentityProps::share() разделяемыми свойствами и включить IdentityOrigin::resolve() в политику содержимого (Встраивание).

Маршруты /auth/login, /auth/callback и /auth/logout пакет регистрирует сам — объявлять их не нужно.

Документация

Страница О чём
Установка и настройка требования, два клиента, переменные окружения, доверие посреднику
Встраивание middleware и их порядок, маршруты, разделяемые свойства, политика содержимого, выход
Данные пользователей профиль, формы имени, пакетное разрешение имён, данные рейла, деградация
Сообщения установки потребитель, supervisor, отметки гашения, очередь продукта
Точки расширения IIdentityEventHandler, IProfileDecorator
Тестирование оснастка поддельной установки, что проверять в продукте
Чек-лист и запреты что проверить перед первым входом и чего делать нельзя

Прогон

composer test        # 82 набора на orchestra/testbench
composer types:check # PHPStan уровень 7

Те же проверки и несколько сверх них собраны в Makefile: make check — разбор и прогон разом, make test-filter FILTER='…' — один набор, make validate — проверка манифеста перед тегом. Весь список — make help.

Собственного приложения у пакета нет — его поднимает testbench. База данных не подключается: пакет в неё не пишет, sub хранит продукт.