Skip to content

[Refactor] フロントエンドにおけるAPIクライアントのセッションリーク脆弱性の解消 #41

Description

@yufoxda

概要

frontend/src/lib/client.ts でエクスポートされているAPIクライアントのシングルトンインスタンスを廃止し、セッションリーク脆弱性を解消します。

課題

Next.jsのサーバーサイド実行時(Server Components / Route Handlers / Server Actions)において、複数ユーザーの並行リクエストが同一のメモリ空間を共有するため、シングルトンの認証ヘッダーが他人のトークンで上書きされ、セッションリークが発生するリスクがあります。

対応方針

  • シングルトンの直接エクスポートを廃止
  • リクエストヘッダーからCookie/トークンを受け取ってインスタンスを動的生成するファクトリパターン(createApiClient)への移行
  • Reactの cache を用いたリクエストスコープ限定のシングルトン化の導入

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions