Gatehouse
Open source · доступ по принципу just-in-time
Сервис запросов и согласования доступа на собственной инфраструктуре: узкий и временный доступ, а каждое решение записывается в проверяемый журнал аудита.

Задача
При постоянном доступе к продакшену трудно понять, у кого был доступ, зачем и по правилам ли он выдан.
Решение
Процесс запроса и согласования доступа just-in-time с контекстом политик, изоляцией пространств и журналом аудита на хеш-цепочке.
Под капотом
Ключи идемпотентности, оптимистичные блокировки и журнал аудита на хеш-цепочке для каждого рабочего пространства. Живое демо и публичный OpenAPI.
Обзор
Постоянный доступ к продакшену создаёт неясность во время инцидента: у кого был доступ, зачем он понадобился и соответствовало ли решение политике. Gatehouse отвечает на это небольшим и прозрачным процессом выдачи доступа just-in-time: инженер запрашивает узкий доступ на ограниченное время, а согласующий принимает решение, видя риски и контекст политик.
Бэкенд — асинхронный FastAPI с валидацией на Pydantic, SQLite локально и PostgreSQL в продакшене. Корректность обеспечена явно: ключи идемпотентности, оптимистичные блокировки, TTL в пределах политики и безопасная обработка конфликтующих решений. У каждого рабочего пространства свой журнал аудита на хеш-цепочке, в который можно только добавлять.
Интерфейс согласования на React + TypeScript работает в режимах live и demo, им удобно управлять с клавиатуры. Поставка на том же уровне: многоэтапные образы без root, пробы health и readiness, оверлеи Kustomize, Terraform и публикация образов в GHCR.
Что делает
- Инженеры запрашивают узкий доступ на ограниченное время
- Согласующие видят риски и контекст политик до принятия решения
- Каждое решение попадает в журнал аудита на хеш-цепочке своего рабочего пространства
- Изоляция рабочих пространств и роли: заявитель, согласующий, администратор
Что дальше
Ищете full-stack, Python- или AI-разработчика — или нужно сделать что-то похожее? Давайте обсудим.
Готов приступить сразу: офис или гибрид в Москве, либо удалённо; полная занятость или контракт. Отвечаю в течение 48 часов, в Telegram — быстрее.