---
title: "Ключи доступа"
id: "2015"
type: "page"
slug: "keys"
published_at: "2026-09-20T18:37:25+00:00"
modified_at: "2026-09-21T00:00:47+00:00"
url: "https://pastukhov.com/agents/proxy/docs/keys"
markdown_url: "https://pastukhov.com/agents/proxy/docs/keys.md"
excerpt: "Ключ доступа — это пропуск, который вы выдаёте человеку, программе или подрядчику. Через него они…"
---

# Ключи доступа

[https://pastukhov.com/agents/proxy/docs/keys.md](https://pastukhov.com/agents/proxy/docs/keys.md)

Ключ доступа — это пропуск, который вы выдаёте человеку, программе или подрядчику. Через него они пользуются моделями, но не видят ваших ключей от поставщиков. У каждого ключа свои пределы расхода и свой список разрешённых моделей, поэтому одного взгляда на раздел «Ключи» достаточно, чтобы понять, кому что можно и сколько уже потрачено.

## Зачем отдельные ключи

Можно было бы просто раздать всем ключ поставщика. Но тогда вы не узнаете, кто именно тратит деньги, и не сможете закрыть доступ одному человеку, не задев остальных. Свой ключ на каждого решает обе задачи:

- **Главный ключ поставщика не уходит на сторону** — он остаётся только на сервере.
- **Доступ закрывается точечно** — ключ подрядчика отзывается мгновенно, остальные продолжают работать.
- **Расход считается по каждому** — в списке видно, сколько потрачено за день, неделю, месяц и всего.

## Как выглядит ключ

Ключ собирается из постоянного начала `proxyagent-`, имени, которое вы задали (строчными буквами, пробелы заменены дефисами), и 24 случайных знаков. Например, для ключа с именем «Claude Code» получится что-то вроде `proxyagent-claude-code-a1b2c3d4e5f6g7h8i9j0k1l2`.

## Ключ показывается один раз

Готовый ключ виден **ровно один раз** — в момент создания и при перегенерации. В базе хранится только его необратимый отпечаток (сумма SHA-256) и последние 8 знаков для опознания. Это значит, что посмотреть ключ задним числом нельзя: если он потерян, остаётся только перегенерировать.

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

## Пределы расхода

У ключа можно задать до четырёх пределов расхода — все в долларах, все необязательные. Пока предел не задан, расход ничем не ограничен.

- **День** — с начала текущих суток.
- **Неделя** — с понедельника.
- **Месяц** — календарный месяц.
- **Всего** — за всё время существования ключа.

Перед каждым запросом продукт смотрит на уже потраченное и проверяет пределы по порядку: день, неделя, месяц, всего. Первый достигнутый даёт отказ с понятным текстом, например `Spend limit exceeded: daily $12.50 of $10.00`. Предел, равный нулю, блокирует всё — это удобный способ мгновенно «выключить» ключ, не удаляя его.

Две честные тонкости. Запрос, который **перешагнул** предел, доводится до конца и списывается полностью — блокируется уже следующий. А сами отказы денег не тратят: заблокированный запрос не добавляет расход ни в один период, поэтому блокировка не углубляет нарушение.

## Ограничение по моделям

Ключу можно разрешить не все модели, а конкретный список. Пока список пуст, разрешено всё. Если в нём есть хотя бы одна модель, запрос к любой другой отклоняется с отказом `Access to model '{имя}' is not allowed for this key` — **без замены на другую модель**: подставленная «похожая» модель тут не появится.

Порядок проверок важен: сначала продукт находит модель и только потом смотрит список. Поэтому ограничение по моделям срабатывает раньше, чем предел расхода, — и это правильно: нечего считать расход по модели, которую ключу и так нельзя.

## Ограничение каналов связи

Отдельный список задаёт, какими каналами связи ключ может пользоваться для обычного трафика через прокси-службу. Пока список пуст, ограничений нет. Если в нём есть каналы, ключ пользуется только ими, а когда ни один не работает — **не выходит в интернет напрямую**, а просто получает отказ. Это защита от случайного «света» вашего адреса: ограниченный ключ никогда не идёт мимо указанных каналов.

## Что видно про ключ в списке

- **Имя** и последние 8 знаков ключа — чтобы отличать ключи с похожими именами.
- **Потрачено** за день, неделю, месяц и всего.
- **Ограничения** — какие модели и каналы связи разрешены.
- **Состояние** — активен ключ или деактивирован, и когда он был перегенерирован.

## Деактивация и удаление

Деактивация закрывает доступ сразу и окончательно — с первого же следующего запроса, — но ключ и его история остаются на месте. Если человек вернётся, его можно так же просто включить обратно: тот же самый ключ снова начнёт работать, выдавать новый не нужно.

Удаление убирает ключ насовсем вместе с его ограничениями. Записи в журнале запросов остаются и по-прежнему называют прежнее имя ключа — история не пропадает.

Дальше: как описать модели, к которым обращаются программы, — в разделе [Модели и цены](/agents/proxy/docs/models)
.

[← Оглавление документации](/agents/proxy/docs)
