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

● 関連用語