AI API Keyの安全性とコスト管理
Key分離、Quota、有効期限、Model Limit、IP Allowlist、Routing PolicyでWorkloadとCost Attributionを保護します。
AI API Keyは組織全体を永久に表すものではなく、管理可能な一つのWorkloadを識別すべきです。Keyを分離すると、Access、Quota、Routing、Rotation、Cost Attributionを独立して制御でき、無関係なApplicationでSecretを共有せずに済みます。
WorkloadごとにKeyを分ける
Production API、Background Worker、Development、CI、Coding Agent、Customer Application、一時的なContractor、高コストBatchを分離します。prod-support-agentのような名前なら、Secretを公開せず環境と目的を説明できます。
完全なKeyはServer側のSecret Managerへ保存します。Browser JavaScript、Mobile Package、Source Control、Container Image、Screenshot、Ticket、Analytics、Log、URL、実値入りSampleに含めません。BrowserはUserを認証しKeyを保持する自社Backendを呼びます。漏えいの可能性があれば代替Keyを作り、Trafficを移し、旧Keyを失効させます。
Quota、有効期限、Modelを組み合わせる
有限QuotaはKeyに帰属する使用量を制限し、有効期限はCredentialの寿命を制限し、Revokeは新規Accessを直ちに止めます。Development、Evaluation、一時利用には通常Quotaと期限の両方が必要です。Productionも独立した帰属とRotation計画を持つべきです。
Model Limitは、互換性がない、または想定外に高価なModelの誤利用を防ぎ、明確な403境界を作ります。Modelが見えてもEndpoint形式への対応は保証されません。モデルと料金で現在の契約を確認します。
IP制限は安定したEgressだけに使う
AllowlistはModelflareが観測したAddressをIPまたはCIDRと比較します。NAT、Proxy、IPv4/IPv6、Network変更でTrafficが止まることがあります。実際のEgressを確認し、緊急Rotation手段を残してください。IP制限はSecret保護の代替ではありません。
Routingを意図的に選ぶ
| 種類 | 動作 | 適する用途 |
|---|---|---|
| 通常API Key | 明示的な主Groupと順序付きFallback | Route順とGroup Policyを固定したいWorkload |
| Smart API Key | Balance、Stability First、Low Price Firstで利用可能Groupを評価 | より広い自動選択を求めるWorkload |
Routingは指定Modelを提供できるGroupを選びますが、全機能を保証しません。信頼できるRoutingに沿って互換性、Latency、Priceを実測します。
安全なRotation
- 同じ目的の制限を持つ新Keyを作る。
- Secret Systemへ登録し、旧Keyを残してDeployする。
- Model Access、実Request、Usage Recordを確認する。
- すべてのDeploymentから旧Keyを削除する。
- 旧Keyを失効させ、残存Accessを監視する。
Keyが分かれていれば、Model、Group、Input、Output、Status、Retry、Costを比較できます。Quotaは将来の使用を止め、記録は消費理由を説明します。詳しくはAI APIコスト追跡を参照してください。