3行でいうと
- APIキーは、アプリがAIのサービスを使うときに示す長い文字列で、合鍵のようなものです。
- 鍵やパスワードは、人に渡さず、メールやチャットにも書きません。鍵はコードや公開される場所にも書きません。
- パスワードは長くして、使い回しません。可能なら、多要素認証やパスキーを使います。
- 漏れたかもしれないと思ったら、まず鍵を無効にします。片づけは、そのあとです。
この記事は、公式・一次資料(AI会社の公式ヘルプ、GitHubの公式ドキュメント、IPAの注意喚起)を読んでまとめたものです。この記事は、実際に使って確かめた記録ではありません。画面や操作の名前は、公式の英語ページの表記で、日本語の画面では確かめていません。
先に結論
公式資料に共通して書かれていることは、4つです。
- 鍵やパスワードは、人に渡さない。メールやチャット、問い合わせにも書かない。
- 鍵を、アプリの中身(コード)や、公開される場所に書かない。
- パスワードは長くして、使い回さない。可能なら、多要素認証やパスキーを使う。
- 漏れたかもしれないと思ったら、まず無効にする。片づけは、そのあと。
APIキーとは
APIキーは、アプリがAIのサービスを使うときに、「この呼び出しは、このアカウントからです」と示すための、長い文字列です。合鍵のようなものです。
見立てです。鍵を持っている人は、その鍵の持ち主として、AIを使えます。そのため、他人に知られると、持ち主の料金で使われるおそれがあります。AI会社のヘルプも、漏れたと思ったら、すぐに無効にして、使用状況に身に覚えのない動きがないか見るように書いています。
APIの料金が、チャットの月額プランとは別に請求されることがあります。これは、Raycastの記事で、OpenAIとAnthropicのヘルプを引いて書きました。
公式資料に書かれた、APIキーの守り方
AnthropicのClaudeのヘルプ(API Key Best Practices、2026年3月16日の表示)と、OpenAIのヘルプ(Best Practices for API Key Safety)を読みました。内容を、言い換えて並べます。
| 守り方 | 公式に書かれていること | 確認元 |
|---|---|---|
| 人に渡さない | 鍵は秘密にする。公開の掲示板、メール、問い合わせ(Anthropic自身へのものを含む)にも書かない | Anthropic |
| 1人に1本 | 使う人ごとに自分の鍵を持つ。チームの全員で共有しない | Anthropic、OpenAI |
| コードに直接書かない | 鍵は、コードや設定ファイルに直接書かず、環境変数(パソコンやサーバーの設定に鍵を置く仕組み)や、クラウドの鍵の保管サービスから読み込む | Anthropic、OpenAI |
| リポジトリに入れない | 鍵を、リポジトリ(ソースコードの置き場)に入れない。非公開のリポジトリでも入れない | OpenAI。Anthropicは、公開リポジトリに平文で入れないよう書いている |
| ブラウザやスマホアプリに入れない | 利用者の手元で動く場所に、鍵を置かない | OpenAI |
| 用途ごとに分ける | 開発用、テスト用、本番用で別の鍵にして、1つが漏れても他に影響しないようにする | Anthropic |
| 定期的に入れ替える | 例として90日ごとに、新しい鍵を作って古い鍵を無効にする。OpenAIは、有効期限つきの鍵を作れる | Anthropic、OpenAI |
| 使用量と上限を見る | 使用状況を定期的に確認する。上限額を決める | Anthropic、OpenAI |
| 信頼できる道具にだけ預ける | 信頼できない第三者のツールに鍵を入れない。入れると、その開発者があなたの管理画面に入れるようになる | Anthropic |
OpenAIのヘルプには、上限額のアラートだけでは通信は止まらないので、止めたいなら上限を強制する設定を使う、と書かれています。ただし、強制しても、上限を少し超えることがある、とあります。
見立てです。「環境変数」は、初めて聞く人が多い言葉だと思います。ここでは、「鍵を、作ったプログラムの外に置いておく」くらいの理解で足りると思います。具体的な設定の仕方は、OpenAIのヘルプに、WindowsとMac・Linux別の例があります。
公開してしまったときの、公式の仕組みと手順
勝手に見つかる仕組み
Claudeのヘルプによると、GitHubは、公開のリポジトリで、Claudeのキーが見えていないかを調べます。見つけると、Anthropicに知らせます。するとAnthropicが自動でそのキーを無効にして、持ち主にメールで知らせる、と書かれています。
GitHubのドキュメントでも、公開のリポジトリでは、シークレットスキャン(鍵やパスワードの検出)が無料で自動的に動くとされています。提携している会社の鍵が見つかると、その会社に知らせて、無効にするなどの対応をとってもらう、とあります。ただし、検出できるのは、既知の型の鍵が中心で、それ以外は設定が必要です。
GitHubの「プッシュ保護」は、鍵を含む変更を、送る時点で止める機能です。公開リポジトリへの送信を止める、個人向けのプッシュ保護は、GitHub.comで既定でオンと書かれています。検出がすべてを保証するとは、書かれていません。
見立てです。これらは、最後の砦です。頼り切らずに、そもそも書かない、が基本だと思います。
漏れたかもしれないときの手順
GitHubの公式ドキュメント(漏れた秘密情報への対処)は、こう順番を示しています。
- 鍵を発行したサービスの側で、無効にする。「最も重要な対処」と書かれています。鍵を使っているサービスがあるなら、先に新しい鍵を作ってから、古い鍵を無効にします。
- 影響を受けるサービスを、新しい鍵に更新して、動作を確かめる。
- 不正に使われていないか、記録(監査ログ、AI会社の使用状況)を確かめる。
- そのあとで、リポジトリの履歴から、鍵を消す。履歴の書き換えは、強い影響があるため、セキュリティの担当者と相談してから決める、と書かれています。
- 警告を閉じて、記録に残す。
履歴から消しても、無効にしていない鍵は、すでに誰かが写していれば、使われます。順番は「無効にする」が先です。
鍵を無効にする場所は、AnthropicのヘルプではConsoleの「API keys」のページで、鍵の横の三点のメニューから「Delete API Key」、OpenAIのヘルプでは「API Keys」のページで入れ替える(rotate)、と書かれています。
:::
ふだんのパスワードの守り方
AIのアカウント自体の守りも大切です。AIのアカウントには、過去の会話が残っていることがあります。乗っ取られると、その中身を見られたり、API料金を使われたりするおそれがあります。これは見立てです。
IPAの「不正ログイン対策特集ページ」(2023年9月29日更新)と、「インターネットサービスへの不正ログインによる被害が増加中」(2025年8月28日公開)には、こう書かれています。
- パスワードは「できるだけ長く」「複雑で」「使い回さない」ものにする。
- 一歩進んだ対策として、多要素認証(記憶、持ち物、生体の3種類のうち2つ以上で本人を確かめる方式)を設定する。1つ目のパスワードが漏れても、それだけではログインできません。
- パスワードに代わる新しい方法として、パスキー(指紋認証や顔認証、端末の画面ロックの解除で、アカウントに入る方式)の利用を推奨する。ただし、サービス側が対応している必要があります。
- 不正ログインの主な原因として、単純なパスワードを推測される、漏れたパスワードのリストを試される、偽のサイトでパスワードを入力してしまう、が挙げられています。
- 偽のメールやSMSに迷ったら、書かれたURLや電話番号を使わずに、公式サイトや公式アプリで確かめる。
- 被害にあったら、ログインできるなら、すぐにパスワードを変える。同じパスワードを他のサービスで使っているなら、それも変える。
IPAの特集ページには、Apple、Google、Microsoft、Yahoo!、Amazonなどの、多要素認証の設定方法のリンクが並んでいます。お使いのサービスは、そこから探せます。
今日からできるチェックリスト
- AIのアカウントのパスワードを、他のサービスと同じにしていないか。
- AIのアカウントに、多要素認証かパスキーを設定したか。
- APIキーを使っているなら、AI会社の管理画面で、上限額を決めたか。
- APIキーを、ファイルやメモ、チャット、スクリーンショットに残していないか。
- 使っていない鍵を、無効にしたか。
- 使っているツールが、鍵を預けてよい相手か、確かめたか。
- 鍵を人に渡す必要が出たら、渡すのではなく、その人用の鍵を作ったか。
見立てです。AIのチャットに、パスワードやAPIキーを貼ることも、避けた方がいいと思います。公式資料は、鍵を人に見せないことを求めていて、会話は保存されることがあります(別の記事に書きました)。AIに手順を教えてもらうときは、鍵の部分を「(ここに鍵)」のように、伏せ字にして聞けば足ります。
気をつけること
- この記事は、実際に使って確かめた記録ではありません。公式の文書を読んでまとめたものです。
- 画面や操作の名前(API keys、Delete API Key、rotateなど)は、公式の英語のページの表記です。日本語の画面では確かめていません。
- OpenAIのヘルプは、更新日が「何日前」としか表示されていませんでした。90日ごとの入れ替えは、Anthropicのヘルプが「例として」挙げた数字で、OpenAIは期限つきの鍵と定期的な入れ替えを勧める、と書くだけです。
- GitHubの機能(プッシュ保護、シークレットスキャン)の提供範囲や条件は、プランや設定で違います。この記事では、確かめていません。
- パスワード管理ソフト(パスワードマネージャー)の使い方は、この記事で読んだIPAの2ページには、見つけられませんでした。記載がないので、僕らからは推奨も否定もしません。
- IPAのページに挙げられた多要素認証の手順は、リンク先が変わることがあります。
- 鍵が漏れたかもしれないときは、公式の手順に加えて、AI会社のサポートに連絡することも、OpenAIのヘルプに書かれています。
- 不正利用の被害や補償の扱いは、各社の規約によります。この記事では確認できていません。
出典
- API Key Best Practices: Keeping Your Keys Safe and Secure(Claude Help Center、2026年10月23日確認)
- Best Practices for API Key Safety(OpenAI Help、2026年10月23日確認)
- Remediating a leaked secret in your repository(GitHub Docs、2026年10月23日確認)
- Push protection(GitHub Docs、2026年10月23日確認)
- About secret scanning(GitHub Docs、2026年10月23日確認)
- 不正ログイン対策特集ページ(IPA 独立行政法人情報処理推進機構、2026年10月23日確認)
- インターネットサービスへの不正ログインによる被害が増加中(IPA 情報セキュリティ安心相談窓口だより、2026年10月23日確認)
更新履歴
-
2026年10月25日 書き方を直しました。
- 前:運営者が使っていないと読める書き方 → いま:「この記事は、実際に使って確かめた記録ではありません」。公式の資料を読んでまとめた記事で、使い心地は書いていない、という意味に直した
-
2026年10月23日 公式の資料を読み直しましたが、書いてあることに変わりはありませんでした。
