0Pricing
Cyber Security Academy · レッスン

APIキーの保護

認証情報を保護します

「APIキーの保護」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。

APIキーとは

APIキーは、APIを呼び出すクライアントを識別し、認証する秘密の文字列です。

キーを持っている人は誰でもそのクライアントとして操作できるため、キーは秘密にしておく必要があります。

キーはパスワードと同じように扱う

APIキーはパスワードと同じように慎重に扱ってください。

キーが漏えいすると、攻撃者はリクエストを実行し、コストを膨らませ、信頼されたクライアントに見せかけたままデータにアクセスできます。

キーをハードコードしない

よくある間違いは、キーをコードに直接記述することです。

const apiKey = "sk_live_abc123"

このキーはリポジトリや履歴に残るため、アクセス権を持つ人なら誰でも読み取れます。

環境変数を使う

キーは環境変数に保存し、コードの外で管理してください。

const apiKey = process.env.API_KEY

シークレットはソースファイルではなく、環境内に保存されます。

キーをGitから除外する

シークレットファイルがコミットされないよう、.gitignoreに追加してください。

.env *.key

キーを一度でもコミットした場合、後から削除するだけでは不十分です。キーをローテーションする必要があります。

キーはサーバー上で管理する

フロントエンドやモバイルのコードに秘密鍵を埋め込まないでください。

誰でもアプリを調査してキーを取り出せます。秘密鍵はサーバー上で管理し、そこからサードパーティAPIを呼び出してください。

シークレットマネージャーを使う

本番環境では、専用のシークレットマネージャーにキーを保存してください。

Vaultやクラウドのシークレットサービスなどのツールは、キーを暗号化し、アクセスを制御し、誰が読み取ったかを記録します。

スコープと最小権限

各キーには、必要な権限だけを付与してください。

読み取り専用のキーであれば、漏えいしてもデータを削除できません。スコープ設定によって、1つのキーが侵害された場合の被害を抑えられます。

キーを定期的にローテーションする

ローテーションとは、スケジュールに従ってキーを交換し、漏えいの疑いがある場合は直ちに交換することです。

有効期間の短いキーを使うと、盗まれたキーが攻撃者にとって有効であり続ける期間を短縮できます。

制限して監視する

特定のIPやドメインからのアクセスだけを許可して、キーをさらに厳しく制限してください。

そのうえで使用状況を監視します。予期しないトラフィックや新しい場所からのアクセスによって、キーの盗難に気づけることがあります。

漏えいに対応する

キーが漏えいした場合は、すぐに対応してください。

  • 古いキーを直ちに無効化してください
  • 新しいキーを発行してください
  • 悪用されていないかログを確認してください

迅速に対応するほど、漏えいしたシークレットによる被害を抑えられます。

クイックチェック

本番環境のWebアプリでは、秘密のAPIキーをどこに保存すべきですか。

まとめ

APIキーはパスワードと同じように保護してください。コードやGitに含めず、環境変数またはシークレットマネージャーに保存し、最小権限に合わせてスコープを設定し、ローテーションし、使用を制限して監視し、漏えいしたキーは速やかに無効化します。

よくある質問

「APIキーの保護」レッスンは無料ですか?

はい。「APIキーの保護」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。

「APIキーの保護」で何を学びますか?

認証情報を保護します ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Cyber Security Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「APIキーの保護」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このCyber Security Academyレッスンでコードを書いて実行できますか?

はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. API攻撃対象領域
  2. 認可の不備
  3. レート制限と不正利用
  4. APIキーの保護
← Cyber Security Academyに戻る