メインコンテンツへスキップ
侵害されたエージェントはひとりでに止まりません。それを再試行ループに陥らせるプロンプト インジェクション、あるいは CI ログ内の漏洩キーは、何かが止めと言うまでモデルを呼び続け ます。OrcaRouter では、その「何か」はキー自体の 2 つのフィールドです:支出上限失効。キーエディタで一度設定すれば、ゲートウェイは両方をすべてのリクエストで強制します — エージェントのコード変更なし、再デプロイなし。 このページはその 2 つの制限の集中リファレンスです。完全なキーフィールドリストについては トークンオブジェクトを、それらを取り巻くアイデンティティ モデルについてはスコープ付きキー概要を参照してください。

1. API キーの支出制限:credit_limit_usd

credit_limit_usd は、プレーンな USD で表現された、キーの生涯支出の上限です。キーエディタで ドル数を入力すると、OrcaRouter はそれをキーの開始クォータに変換し、すべての呼び出しをそれに 対して課金します。

境界づけ

credit_limit_usd: 25$25 の支出を持つキーを発行します。各呼び出しはそのコストを 引き落とし;残高がゼロに達すると、キーは認可を停止し、それ以降のすべてのリクエストが 拒否されます。

無制限

credit_limit_usd: 0上限なしのセンチネルです — キーはキーごとの上限なしに ワークスペース残高を引き出します。便利ですが、漏洩した場合に最悪の被害範囲です。
0 は「ゼロドル」を意味しません無制限を意味します。ごく小さな予算にロックダウン したいキーは、正の数字を運ばなければなりません。「このキーは何も費やしてはならない」を 表現するには、それを無効化または削除してください、上限を 0 に設定しないでください。

2. 上限がどう課金されるか:remain_quotaused_quota

入力するドル上限は、人間に向いた表面です。その下で、ゲートウェイはキー上の 2 つの実行中 カウンターを追跡します:
フィールド意味
remain_quotaキーが認可を停止するまでに残された支出。
used_quotaキーの生涯にわたってこれまでに消費された支出。
正の credit_limit_usd を設定すると、そのドル数から remain_quota がシードされます;課金 されるすべての呼び出しが、コストを remain_quota から used_quota へ移します。無制限の上限を 持つキーは代わりに unlimited_quota を運び、残高チェックは完全にスキップされます。
ガードレールまたはファイアウォールのブロックは、モデルが実行される前に発火するとき、上限に 対して何のコストもかかりません — 入力ステージの guardrail_blocked と inbound の firewall_blocked はどちらも課金前に発生するため、remain_quota は手つかずです。出力 ステージのガードレールブロックはリクエストを返金します。 ガードレールファイアウォールを参照。

3. 自動失効:expired_time

expired_time は絶対的な締め切りです — その後キーが認可を停止する、Unix エポック タイムスタンプ(秒)で、残り予算がどれだけあろうと関係ありません。
  • 未来のタイムスタンプは、その瞬間にキーを失効させます。ゲートウェイはすべての リクエストでそれを現在時刻と比較し、過ぎていれば呼び出しを拒否します。
  • -1決して失効しないのセンチネルです。
2 つの制限は独立しており、両方が通過しなければなりません。予算は残っているが expired_time を過ぎたキーは死んでいます;有効期間内だが remain_quota がゼロのキーは 死んでいます。先にトリップした境界が勝ちます。エディタは過去に設定された失効を拒否するため、 誤って生まれながらに失効したキーを発行することはできません。
CI 実行ごと、または一時的なエージェントごとに発行される短命キーについては、 失効するキーを参照してください。

4. ひとつの具体的な上限付き失効キー

1 つの安価なモデルで請求書を照合し、2 週間のパイロットを実行し、一晩あたり数ドルを超える コストがかかるべきでない夜間ジョブは、ほとんど権限を必要としません。そのキーをコンソールの キーエディタ(/console/tokenDeveloper+)で設定します:
1

支出上限を設定

credit_limit_usd: 40 — パイロットの全予算。暴走再試行ループは、あなたのワークスペース 残高ではなくキーを枯渇させます。
2

失効を設定

expired_time:パイロットウィンドウの終了の Unix タイムスタンプ。キーは自動失効し、 パイロットの出荷後は再利用できません。
3

他のスコープとペアにする

model_limits を追加してフロンティアモデルにエスカレートできないようにし、allow_ips を追加して漏洩キーがスケジューラのホスト外で役に立たないようにします。
このエージェントが 3 日目に乗っ取られても、被害は $40 の残りが何であれそれに境界づけられ、 キー全体はどのみち 11 日で消えます。ワークスペースの残りは無傷です。
両フィールドはキー上の USD と時間であり、ワークスペース全体のポリシーではありません。単一の エージェント実行の支出を(キーの生涯ではなく)上限設定するには、ファイアウォールの cap_cost 判定が実行ごとのサーキットブレーカーです — ファイアウォールルールを参照。この 2 つは組み合わさります: キー上限は生涯を境界づけ、cap_cost は単一の実行を境界づけます。

5. 誰がこれらを設定できるか

credit_limit_usdexpired_time の設定は、キーの作成または編集の一部であり、Developer ロール以上を必要とします。どのワークスペースメンバーもキーのマスクされたレコードを読めます; Developer+ だけがその制限を変更できます。キーは表示時にマスクされます — 平文は作成時に一度 表示されます(キーマスキングを参照)。

6. デフォルトで境界づけ

credit_limit_usd: 0 かつ expired_time: -1 のキーは、支出上限がなく決して失効しません — 最大の権限、最悪の被害範囲。それをデフォルトではなく、意図的な例外にしてください。

無制限 vs 境界づけ

上限なしの非失効キーが実際に正しい選択であるとき — そしてそうでないとき。

最小権限チェックリスト

すべての本番キーを、出荷前に同じ強化パスに通す。

7. 関連

トークンオブジェクト

クォータカウンターを含む、キー上のすべてのフィールド。

ポリシーをバインド

ガードレールとファイアウォールポリシーを同じキーにアタッチします。

過剰な権限

支出上限と失効が封じ込めるために作られた脅威。
支出上限と失効は、キーにかける最も安価な保険です:オープンエンドな資格情報を、あなたの請求書が 気づくまで走り続ける代わりに、安全に失敗する — 空または失効 — ものに変える 2 つの数字です。