proxykey API KEY VAULT

Прокси для API-ключей: что это и как работает

Схема, при которой настоящий ключ вообще не покидает хранилище, а приложения ходят в API с виртуальными токенами. Разбираем устройство, отличия от секрет-менеджеров и цену перехода.

05.07.2026 · proxykey

Проблема: ключ нужен всем, а доверять нельзя никому

Один ключ OpenAI расходится по бэкенду, скриптам, CI, ноутбукам разработчиков и ИИ-агентам. Каждая копия — самостоятельная точка утечки: коммит в публичный репозиторий, строка в логе, дамп окружения. При этом у провайдера ключ один: утёк — отзывать и перевыпускать приходится везде сразу, с простоем всего, что на нём сидело.

Как устроен credential proxy

Прокси для ключей (credential proxy) разрывает связь «приложение — настоящий ключ». Три объекта:

ОбъектЧто это
СекретНастоящий ключ провайдера. Вводится один раз, шифруется (в proxykey — AES-256-GCM с конвертным шифрованием) и больше никогда не возвращается наружу ни одним API.
ПроходкаВиртуальный токен (vlt_…), привязанный к секрету. Именно его получают приложения. У каждой проходки — свой IP-биндинг, свои лимиты rpm/rpd, свой срок жизни и свой лог.
ПроксиШлюз, через который идут запросы. Проверяет проходку, расшифровывает секрет в памяти на время одного запроса, подставляет его и передаёт запрос провайдеру как есть.
приложение ──(vlt_проходка)──▶ прокси ──(настоящий ключ)──▶ провайдер
                                │
                     проверка: статус, IP, лимиты
                     лог: метод, путь, статус, время

Ключевое следствие: зона, где может утечь настоящий ключ, сжимается до одного сервера. Всё остальное — код, конфиги, CI, контексты агентов — оперирует только отзываемыми токенами.

Чем это отличается от секрет-менеджера

Vault или AWS Secrets Manager решают задачу хранения и доставки: ключ лежит централизованно, приложение получает его при старте. Но в момент работы ключ всё равно находится в памяти и окружении приложения — и утекает вместе с ним.

Credential proxy решает задачу невыдачи: приложение не получает ключ ни в какой момент. Это другой класс гарантий — утечка на стороне приложения по построению не может раскрыть оригинал.

Секрет-менеджерCredential proxy
Ключ в приложенииДа, в runtimeНикогда
Утечка на стороне приложенияРаскрывает ключРаскрывает отзываемый токен
ОтзывРотация ключа вездеОдин клик, оригинал не тронут
Лимиты и IP на потребителяНетНа каждый токен
Видимость трафикаНетЛог каждого запроса

Что меняется в коде

Две строки — хост и ключ. Всё остальное (путь, метод, тело, стриминг SSE) проходит через прокси без изменений:

# было — напрямую в OpenAI
curl https://api.openai.com/v1/chat/completions \
  -H "Authorization: Bearer sk-...настоящий..."

# стало — через proxykey
curl https://api.proxykey.org/p/openai/v1/chat/completions \
  -H "Authorization: Bearer vlt_openai_..."

Для SDK это одна настройка baseURL. Поддерживаются OpenAI-совместимые API, Anthropic, Telegram-боты (токен в пути URL), Stripe, Slack, GitHub и любые кастомные REST API — полный список в документации.

Когда это особенно оправдано

Частые вопросы

Насколько это замедляет запросы?

Один дополнительный хоп и проверка токена по кэшу — единицы миллисекунд на фоне сотен миллисекунд генерации LLM. Стриминг проксируется потоково, без буферизации.

А если упадёт сам прокси?

Это честный trade-off схемы: прокси — критичная точка. Смотрите на устройство конкретного сервиса: в proxykey горячий путь работает с кэшем валидации и деградирует предсказуемо (кэш при недоступной БД, fail-closed для валидации).

Прокси видит мои запросы?

Прокси по определению стоит на пути трафика — важно, что он логирует. proxykey пишет метаданные (метод, путь, статус, задержку), но не авторизационные заголовки и не значения ключей; превью тел запросов — только если вы явно включили его для конкретной проходки.

Попробуйте на одном ключе

Заведите ключ, получите проходку и переключите один сервис — это займёт минуту. Бесплатно, без карты.

Начать →