
Вышел Issuerd: открытый Keycloak-совместимый IAM на Rust с DPoP и CIBA
Под Apache-2.0 опубликован Issuerd — сервер идентификации на Rust, совместимый с Keycloak. Для темы нашего журнала важно другое: DPoP, CIBA и token exchange (RFC 8693) там работают из коробки, а полный набор «OIDC + DPoP + CIBA» до сих пор встречается у считаных продуктов.

Что случилось
Под лицензией Apache-2.0 опубликован исходный код Issuerd — сервера идентификации и управления доступом (IAM) на Rust, совместимого с Keycloak. Проект реализует OIDC/OAuth2 в модели realm'ов, знакомой по Keycloak: единый вход, федерация (LDAP/Kerberos), кластерный режим на PostgreSQL и Redis. Всё это упаковано в один самодостаточный бинарник вместо JVM-стека — доступны релизные сборки для Linux, Windows и macOS, образ на Docker Hub и пакет на crates.io. Документация живёт на issuerd.org.
Причём здесь Agentic IAM
Для тематики нашего журнала важен не столько очередной IAM, сколько набор протоколов, доступный из коробки:
- DPoP (RFC 9449) — привязка токена к криптографическому ключу: украденный токен бесполезен без приватного ключа;
- CIBA — подтверждение операции человеком вне основного сценария (human-in-the-loop для агентов);
- Token exchange (RFC 8693) — обмен токена пользователя на новый, с суженными scope и аудиторией, вместо проброса исходного токена по цепочке.
Это ровно те примитивы, которые мы разбирали как фундамент безопасных агентных сценариев: ослабляющая авторизация — в статье про транзакционные токены, а полный эталонный сценарий — в руководстве по DPoP + CIBA. При этом полный набор «OIDC-сервер + DPoP + CIBA» до сих пор редкость: таких продуктов в мире единицы, и Issuerd — один из немногих в открытом коде.
Цифры вместо обещаний
- 3 907 проверок официального OpenID Conformance Suite — без единой ошибки и предупреждения;
- 100 003 пользователя синхронизируются из Active Directory примерно за 30 секунд;
- 2 690+ автотестов в репозитории.
Где посмотреть в работе
Практический агентский сценарий на этом стеке разобран в свежей статье на Хабре: «AI-агент с доступом к базе: как не дать ему лишнего». Там собрана вся цепочка из наших материалов: чат с LLM вызывает MCP-сервер, токен пользователя обменивается на суженный (инструмент возврата денег агенту недоступен в принципе), токен привязан к ключу по DPoP, а опасная операция требует подтверждения человека по CIBA. Стенд поднимается одной командой.
Ссылки: репозиторий — github.com/issuerd/issuerd, документация — issuerd.org.


