インフラ用語集へ戻る

セキュリティ・認証 / Web/認証

Cookieとは

HTTP Cookie。ブラウザに保存され、セッション管理などに使われる小さなデータです。

用語集内のカードを見る

詳細な図解

ブラウザに保存され認証で使われる流れ
サーバー応答ログイン応答を返す
Set-Cookie属性付きで保存を指示
ブラウザ保存Domain/Pathに従って保持
次回リクエスト条件に合う通信へ送信
  • SecureとHttpOnlyを確認
  • SameSiteとCSRFを考える
  • 機密情報を直接入れない

この記事で学べること

Cookieを、定義だけで終わらせず、現場で出てくる場面、確認材料、見落としやすい点、関連語とのつながりまで順に確認できます。

  1. Cookieを読むときの前提
  2. SecureとHttpOnlyを確認する
  3. SameSiteとCSRFを考える
  4. DomainとPathの広げすぎに注意する
  5. 変更証跡と引き継ぎ

実務メモ

認証Cookieの属性と送信範囲を確認する

どこで効くか

Cookieはログイン状態、セッション、CSRF対策、外部IdP連携、設定保持で効きます。ログイン不具合、CSRF、XSS影響、HTTPS化後の認証不具合で確認します。

残す証跡

証跡にはSet-Cookieヘッダー、Cookie名、Secure、HttpOnly、SameSite、Domain、Path、Expires/Max-Age、認証状態、確認ブラウザを残します。

避けたい誤解

SecureやHttpOnlyがない認証Cookieは盗聴やXSS時の影響が大きくなります。SameSiteを強めすぎるとIdP戻りや決済連携が壊れ、Domainを広げすぎると不要な送信が増えます。

まず確認すること

  • 認証CookieのSecureとHttpOnlyを確認する
  • SameSiteとログイン戻り動作を確認する
  • Domain/Pathと有効期限を確認する

Cookieを読むときの前提

Cookie(HTTP Cookie)は、ブラウザに保存され、ログイン状態、セッション、設定、トラッキングに使われる小さなデータです。認証ではセッションIDやトークンの運び方として重要です。

実務では、Set-Cookie、Secure、HttpOnly、SameSite、Domain、Path、Expires/Max-Age、機密情報混入、ログ出力、HTTPSとの関係を確認します。

証跡には、対象URL、Set-Cookieヘッダー、Cookie名、属性、送信先Domain/Path、保存期限、認証状態、確認ブラウザ、開発者ツールの結果を残します。

SecureとHttpOnlyを確認する

SecureがないCookieは、条件によってHTTP通信でも送信される可能性があります。認証CookieはHTTPS前提でSecureを付けるのが基本です。

HttpOnlyがないCookieは、JavaScriptから読み取れます。XSSが起きたときにセッションIDを盗まれやすくなるため、画面側で読む必要がない認証CookieにはHttpOnlyを付けます。

  • 認証CookieにSecureがあるか確認する。
  • JavaScriptで読む必要があるか確認する。
  • HttpOnlyの有無を記録する。

SameSiteとCSRFを考える

SameSiteは、クロスサイトのリクエストでCookieを送る条件を制御します。CSRF対策や外部IdP連携、決済、SaaS埋め込みで影響します。

SameSite=LaxやStrictは防御を強めますが、外部サイトから戻るログインフローを壊すことがあります。SameSite=Noneを使う場合はSecureも必要です。

  • ログイン戻りURLでCookieが送られるか確認する。
  • CSRFトークンとの併用を確認する。
  • SameSite=NoneにはSecureを付ける。

DomainとPathの広げすぎに注意する

DomainやPathを広く設定すると、意図しないサブドメインやパスにもCookieが送られます。共有ドメイン、検証環境、古いサブドメインがある場合は特に注意します。

Cookie値に個人情報、権限、機密情報を直接入れると、ブラウザ、プロキシ、ログ、問い合わせ画面から漏れるリスクが増えます。値は最小限にします。

  • DomainとPathの送信範囲を確認する。
  • 不要に長い有効期限を避ける。
  • Cookie値に機密情報を入れない。

変更証跡と引き継ぎ

Cookie対応では、Cookie名、用途、属性、発行元、送信範囲、保存期限、ログ出力有無、認証フローへの影響を残します。ブラウザ仕様変更の影響も受けやすい領域です。

引き継ぎでは、アプリ担当、認証基盤担当、セキュリティ担当、関連語としてSet-Cookie、SameSite、HttpOnly、CORS、HTTPSを残すと確認しやすくなります。

  • Set-Cookieヘッダーを証跡化する。
  • 認証フローごとのCookie送信を確認する。
  • 変更時のログイン影響を記録する。

関連語

同じ主要カテゴリの用語

セキュリティ・認証の学習順

同じ主要カテゴリの用語をまとめて確認できます。現在の用語を起点に、前後の用語へ進むと文脈を保ったまま読み進められます。

InfraEngKit内の関連機能