Перейти к основному содержимому

Платёжные полномочия для агентов: ограниченные учётные данные на траты лучше сохранённых карт

Сохранённые карты предоставляют неограниченные, многоразовые полномочия. Ограниченные токены на траты привязывают сумму, продавца, срок действия и задачу, делая платежи агентов отзываемыми и проверяемыми.

In the Space Station Processing Facility, technicians and factory workers assemble parts on the Japanese remote manipulator system, while li

Почему сохранённые учётные данные — неправильный примитив

Карта на файле — это предъявительский инструмент. Тот, у кого есть номер, может тратить по нему, многократно, пока эмитент или продавец не решит иначе. Никакой системный промпт, никакая инструкция на уровне инструмента и никакое количество рассуждений по цепочке мыслей не меняют это свойство. Агент, которому передали сохранённую карту, не имеет бюджета; он имеет возможность. Различие важно, потому что возможности не ограничены намерением. Они ограничены криптографией, точками применения политик и готовностью эмитента отклонить платёж.

Как только агент владеет многоразовыми учётными данными, отзыв становится единственным оставшимся контролем. Отзыв груб. Он не может отличить законную повторную попытку от дублирующего списания, санкционированного продавца от подменённого или одну крупную покупку от двадцати мелких. Он также медленный относительно выполнения агентом. Цикл отзыва, измеряемый минутами, не управляет циклом, который выдаёт вызовы за миллисекунды.

Ограниченные токены на траты с единой целью

Альтернатива — выпустить учётные данные, которые сами являются политикой. Ограниченный токен на траты — это подписанный артефакт с небольшим, явным набором утверждений:

{
  "issuer": "studio-payments",
  "subject": "agent-run-8f3a",
  "task_id": "replenish-inventory-2026-04-11",
  "merchant_category": "office_supplies",
  "merchant_id": "supplier-4421",
  "amount_ceiling_minor": 25000,
  "currency": "EUR",
  "not_before": "2026-04-11T09:00:00Z",
  "not_after": "2026-04-11T09:15:00Z",
  "max_uses": 1,
  "nonce": "b7c1...",
  "signature": "..."
}

Три свойства выполняют работу. Во-первых, токен привязан к конкретному идентификатору задачи, поэтому авторизующая траектория восстановима: трата отображается обратно на запуск, который её запросил, а не просто на учётную запись пользователя. Во-вторых, токен одноразовый или короткоживущий, поэтому утёкший артефакт имеет ограниченную ценность. Украденный номер карты — это обязательство, пока эмитент не примет меры; украденный одноразовый токен с пятнадцатиминутным окном и привязкой к продавцу — мёртвая строка к тому времени, как злоумышленник его перенаправит. В-третьих, потолок выражен в минорных единицах и применяется на рельсе, а не агентом. Агент не может поднять свой лимит, потому что лимит — это подписанное утверждение, а не переменная в промпте.

Close-up of an industrial control panel with colorful buttons in a factory setting.

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

Авторизация и расчёты

Решение тратить и механизм оплаты разделимы и должны быть разделены. Решение принадлежит политике: движок правил, который оценивает контекст задачи, продавца, сумму и историю против бюджета и выдаёт подписанную авторизацию или отказ. Механизм принадлежит рельсу: карточная сеть, перевод со счёта на счёт или слой расчётов в стейблкоинах. Разделение этих частей означает, что политику можно проверять, версионировать и тестировать, не касаясь рельса, а рельс можно заменить, не переписывая политику.

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

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

Режимы отказа, против которых нужно проектировать

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

Подмена продавца. Токен, авторизованный для поставщика A, не должен рассчитываться у поставщика B. Привяжите токен к идентификатору продавца, а не только к категории, и проверяйте при расчёте. Блокировки категорий слабее блокировок продавцов и должны рассматриваться ка

Close-up view of a complex industrial conveyor system inside a manufacturing facility.

Циклы повторных попыток. Потерянный ответ неотличим от неудачного запроса, если операция не идемпотентна. Дайте каждому токену nonce и требуйте от рельса отклонять второе расчётное списание с тем же nonce. Тогда повторная попытка агента возвращает исходный результат, а не списывает дважды. Это та же дисциплина, что и ключи идемпотентности в платёжных API, применённая к делегированным тратам.

Что это меняет

Ограниченные учётные данные на траты перемещают точку контроля с отзыва на выпуск. Вопрос перестаёт быть «как нам остановить агента» и становится «что именно мы авторизовали, для какой задачи, у какого продавца, до какого времени». Это вопрос, на который может ответить аудит. Сохранённая карта не может.

FAQ

В: Ограниченный токен — это просто виртуальная карта? О: Его можно реализовать как таковую, но важное свойство — подписанный набор утверждений — идентификатор задачи, привязка к продавцу, потолок, срок действия, nonce — а не формат карты.

В: Что мешает агенту запросить новый токен, когда он достигает потолка? О: Служба авторизации, а не агент. Кумулятивный бюджет на задачу и на продавца применяется при выпуске, поэтому повторные запросы против той же задачи отклоняются.

В: Как это взаимодействует с расчётами в стейблкоинах? О: Токен — это полномочие; перевод стейблкоина — это рельс. Утверждения токена проверяются до подписания перевода, а ссылка перевода несёт nonce для сверки.

В: Какова основная стоимость? О: Задержка выпуска и служба выпуска, которая должна быть настолько же доступной, как агент. Выпуск на задачу с короткими окнами — обычный компромисс; выпуск на сессию возвращает повторное использование.

ПоделитьсяXLinkedInПостоянная ссылка5 мин чтения

Связанное чтение

На какие вопросы это отвечает

Is a scoped token just a virtual card?

It can be implemented as one, but the important property is the signed claim set — task identifier, merchant lock, ceiling, expiry, nonce — not the card format.

What stops an agent from requesting a new token when it hits a ceiling?

The authorisation service, not the agent. Cumulative budget per task and per merchant is enforced at issuance, so repeated requests against the same task are refused.

How does this interact with stablecoin settlement?

The token is the authority; the stablecoin transfer is the rail. The token's claims are checked before the transfer is signed, and the transfer's reference carries the nonce for reconciliation.

What is the main cost?

Issuance latency and an issuing service that must be as available as the agent. Per-task issuance with short windows is the usual compromise; per-session issuance reintroduces reuse.