title: "07 安全な使い方" icon: "🔒"
07 安全な使い方 — APIキー・コスト・リスク管理
Claude Codeは便利だけど、APIキー流出や誤操作で痛い目に遭うことも少なくありません。この章で守るべきことを整理する。
APIキー流出を防ぐ
APIキーとは?
APIキー = 「この有料サービスを使ってもいいよ」という合図。所有者のクレジットカードと連携しており、流出すると他人に勝手に使われて請求が来る。
APIキー流出の例:
❌ GitHubにAPIキーをpush → 世界中に公開 → 数百ドルの請求
❌ ChatGPTにAPIキーを貼り付け → 学習データに → 流出
❌ スクリーンショットにAPIキーを映す → SNSで拡散
安全な管理方法
| 方法 | 説明 | 安全度 |
|---|---|---|
| 環境変数 | .envファイルに書いて、コードからは os.getenv("API_KEY") で読む |
⭐⭐⭐⭐ |
.gitignore に .env を追加 |
誤ってGitに上げるのを防止 | ⭐⭐⭐⭐ |
secrets.json |
JSONでも可。.gitignore に追加 |
⭐⭐⭐ |
| ハードコード | コードに直接書く。流出リスク大 | ⭐ |
絶対にやること:
.gitignoreに*.env,secrets.json,settings.local.jsonを追加- APIキーを共有スクリーンショットに映さない
- スクリーンキャスト(画面録画)中にも映らないよう注意
危険なコマンドについて
Claude Codeは破壊的なコマンドを実行する前に必ず確認を求める。
ブロックされる可能性のあるコマンド
rm -rf / ← 全ファイル削除
DROP DATABASE ← データベース全削除
git push --force ← コミット履歴を上書き
sudo rm -rf / ← システムファイル削除
なぜブロックするか?
ユーザーが「ファイル全部消して」と入力
↓
Claude Codeが「本当に消しますか?」と確認
↓
ユーザーが「はい」と答える
↓
実行(またはブロック)
この確認があるからこそ、うっかり大規模削除防げる。
確認画面の見分け方
[Y/n] → Y=はい(実行)、n=いいえ(中止)
y/n/c → y=はい、n=いいえ、c=キャンセルしてClaudeに任せる
確認を省略する(「auto-confirm」)は便利だけど危険。 慣れてからでも必要最小限に。
コスト管理
Claude Codeの裏で動いているLLMは有料。トークン数に応じて料金が発生する。
コストが大きくなるパターン
| パターン | 対策 |
|---|---|
| 長いセッション(50ターン以上) | 定期的に /compact でコンテキスト圧縮 |
| 大きなファイルの丸ごと読込 | 「このファイル前半100行を読んで」と具体的に指定 |
| 同じ質問を何度もする | 先に「〜についてまとめて」と聞いてから質問 |
| MCPツールの乱発 | 必要なサーバーだけ有効化(使っていないサーバーは切る) |
コスト確認方法
/context
を実行すると、現在のコンテキスト使用量が表示される。4,000トークン消費するので多用は禁物。
やってはいけないこと
| やってはいけないこと | 理由 |
|---|---|
| APIキーをコードに直書き | 流出した請求が来る |
auto-confirm: true で危険な操作 |
確認なしで実行され被害拡大 |
| 理解していないコードをClaudeに書かせて実行 | バグでデータが壊れる |
| セキュリティ的に重要なファイルを気軽に触らせる | 設定ミスを突かれる |
やったほうがいいこと
| やったほうがいいこと | 理由 |
|---|---|
| 作業前に必ずバックアップ | 何があっても元に戻せる |
git commit を小まめに |
問題が起きたらロールバック可能 |
| Claudeの提案を先に読んでから「はい」 | 思ってたんと違う を防ぐ |
| 重要な操作は「1つずつ確認しながら」 | 一括実行より安全 |
まとめ
┌─────────────────────────────────────────────┐
│ 安全のための3原則 │
│ │
│ 1. APIキーは環境変数で管理・.gitignoreに追加 │
│ 2. 危険な操作は確認を読んでから許可 │
│ 3. 作業はgitで小まめにコミット │
└─────────────────────────────────────────────┘
Claude Codeは強力だけど、最終責任は使用者にある。便利さに頼りすぎず、基本を守ることで安全に活用できる。
用語確認
| 用語 | 意味 |
|---|---|
| APIキー | サービス利用の認証キー。流出すると悪用される |
| トークン | テキストの分割単位。LLMへの入出力はこの単位で計費 |
| コンテキスト | 現在の会話の流れ。長いほど多くのトークンを消費 |
| auto-confirm | 確認なしで操作を実行する設定。便利だが危険 |