Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 058

API キー

監修Cybersecurity entrepreneur & security researcher

API キー とは何ですか?

API キーサービスが発行する静的なシークレット文字列。呼び出し元を識別・認証するため、通常は各 API リクエストのヘッダーやクエリパラメータで送信される。


API キーは、バックエンド API に対してプロジェクト、サービスアカウント、開発者を識別する、長くランダムに生成された文字列です。発行も利用も簡単ですが、その保証は弱いものです。識別する対象は呼び出し元であってユーザーではなく、既定では失効せず、紐づけられた権限がそのまま付与されます。これらは静的なベアラーシークレットであるため、その文字列を入手した者は誰でも、キーが失効されるまで正規の呼び出し元になりすますことができます。

最も多い失敗パターンは、ソース管理を経由した漏洩です。GitHub は、2024 年に同プラットフォーム全体で 3,900 万件 を超えるシークレットが露出したと報告しており、GitGuardian の調査レポート State of Secrets Sprawl では、スキャンしたプライベートリポジトリの約 8% に AWS IAM キーが見つかりました。2025 年の例では、公開された「Private-CISA」リポジトリにおいて、GitGuardian の研究者 Guillaume Valadon が、米国政府システムに紐づく AWS GovCloud の資格情報、平文パスワード、SAML 証明書の露出を発見しました。キーは、モバイルアプリ(逆コンパイルされた APK)、フロントエンドの JavaScript バンドル、CI ログ、スクリーンショットを通じても漏洩します。

防御策としては、キーをコードではなくシークレットマネージャに保管すること、プロバイダ側のシークレットスキャンとプッシュ保護を有効化すること、各キーを最小限のエンドポイントにスコープ制限すること、IP や HTTP リファラーで制限すること、有効期限を設定して定期的にローテーションすること、露出時には即座に失効することが挙げられます。エンドユーザーの認可や価値の高い操作には、資格情報をユーザー・オーディエンス・短い有効期間に結びつける OAuth 2.0、mTLS、あるいは HMAC 署名付きリクエストを優先してください。

flowchart LR
  A[開発者が API キーを発行] --> B[キーをアプリや設定に埋め込み]
  B --> C{安全に保管されているか}
  C -->|シークレットマネージャ + スキャン| D[呼び出し元 -> API リクエスト<br/>Authorization ヘッダー]
  C -->|リポジトリ / APK / ログに混入| E[シークレットスキャナや攻撃者が<br/>キーを収集]
  E --> F[失効まで<br/>なりすましと悪用]
  D --> G[スコープ + IP 許可リスト + ローテーションで<br/>影響範囲を限定]

  1. 01

    Authorization: ApiKey sk_live_abc123...

  2. 02

    Stripe、Google Maps、Twilio の各 API をプロジェクト単位の API キーで利用する。

よくある質問

API キー とは何ですか?

サービスが発行する静的なシークレット文字列。呼び出し元を識別・認証するため、通常は各 API リクエストのヘッダーやクエリパラメータで送信される。 サイバーセキュリティの ID とアクセス カテゴリに属します。

API キー とはどういう意味ですか?

サービスが発行する静的なシークレット文字列。呼び出し元を識別・認証するため、通常は各 API リクエストのヘッダーやクエリパラメータで送信される。

API キー からどのように防御しますか?

API キー に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。

関連用語