API Key とは
API Key の役割、形式、安全上の境界、およびテキスト課金単位との違いを理解する
API Key は、MoleAPI を呼び出す際に使用する認証情報であり、MoleAPI コンソールでは 令牌 と呼ばれることもあります。
SDK、クライアントアプリケーション、または自作の HTTP リクエストを使って MoleAPI に接続する際、システムはこの Key を通じて次の内容を判定します。
- 誰が呼び出しているか
- インターフェースを呼び出す権限があるか
- どのモデルにアクセスできるか
- 呼び出しをどのアカウントおよびどの Key に記録すべきか
最もシンプルな理解のしかた
API Key は、次のように捉えることができます。
- 外向きには:「API のパスワード」のようなもの
- 内向きには:「アクセス認証情報 + 課金帰属ラベル + 権限スイッチ」のようなもの
つまり、単に API を呼び出せるかどうかを決める文字列ではなく、次の要素にも影響します。
- 呼び出しログの帰属
- 利用可能なモデルの範囲
- Group ポリシー
- セキュリティ制限
- Quota 制御
典型的な形式
MoleAPI の API Key は通常、次のような形式です。
sk-********************************多くのサードパーティ製アプリケーションでは、次のような入力欄に設定します。
API Key密钥令牌Bearer Token(一部クライアントや UI における互換表記)
これらの入力欄に入力します。
API Key とテキスト課金単位は別物です
これは初心者が最も混同しやすいポイントです。
混同しやすい 2 つの概念
- API Key / 令牌:認証情報であり、API の呼び出しに使用します。
- テキスト課金単位(Token):モデルがテキストを処理する際の課金単位であり、費用計算に使用します。
つまり:
- 作成するのは API Key
- 消費するのは テキスト課金消費 / リクエスト費用
この 2 つの概念は完全に異なります。
1 つのアカウントで複数の API Key を作成する理由
理論上は 1 つの Key だけでも運用できますが、実際には推奨されません。
より推奨されるのは、用途ごとに分けて作成する方法です。たとえば:
dev-local:ローカルデバッグ用chatbox-test:デスクトップクライアントのテスト用web-prod:本番 Web サイトのバックエンド用ops-batch:定期実行タスクまたはバッチ処理用
このように分けるメリットは次のとおりです。
- ログが明確になる:どのシステムが呼び出しているかをすばやく把握できる
- 権限を管理しやすい:Key ごとに異なるモデルや制限を設定できる
- リスクを抑えられる:ある Key が漏えいしても、すべての業務に影響しにくい
- コストを分けて管理しやすい:誰がいくら使ったかを判断しやすい
API Key は通常どこに置くのか
実運用では、API Key は次のような場所に保存されることが一般的です。
- ローカルクライアントアプリケーションの設定ページ
- サーバーの環境変数
- バックエンドの設定ファイル(非公開)
- シークレット管理システム
開発者であれば、最もよくある書き方は次のようなものです。
export OPENAI_API_KEY="sk-..."または、プログラム内で Bearer 認証ヘッダーとして送信します。
どのような場合に API Key を再作成または差し替えるべきか
次のような状況では、古い Key を使い回すのではなく、新しい Key を作成することをおすすめします。
- テスト環境と本番環境を分離したい
- プロジェクトごとに独立した呼び出し権限を割り当てたい
- 新たに利用可能なモデル範囲を制限したい
- 既存の Key が漏えいした疑いがある
- より明確なログ監査やコスト分離を行いたい
セキュリティに関する推奨事項
API Key が漏えいすると、API 権限の漏えいと同義です
API Key を公開環境に露出させないでください。第三者がその Key を使って、あなたの Quota を直接消費する可能性があります。
少なくとも、次のような使い方は避けてください。
- フロントエンドのソースコードに書かない
- Git リポジトリにコミットしない
- チャットグループ、チケットのスクリーンショット、公開ドキュメントに載せない
- 本番 Key を複数の個人端末に長期間分散して置かない
推奨される運用方法:
- テスト用と本番用で異なる Key を使い分ける
- 重要な Key にはモデル制限や IP ホワイトリストを設定する
- 長期間使用している Key は定期的にローテーションする
- 異常な呼び出しを発見したら、ただちに古い Key を無効化または削除する
次に読むべき内容
API Key の役割を理解できたら、次に以下を確認することをおすすめします。
このガイドはいかがですか?
最終更新日