セッション管理と
認証の深部
2026.04.21
11 MIN READ
AUTHOR: MAYA
"誰がアクセスしているかを正しく知る。それはセキュリティの基本であり、パーソナライズの出発点でもあります。"
1. セッション固定攻撃の回避
ログイン前後でセッションIDを変えないことは、鍵を差しっぱなしにするのと同じです。BICSTATION の PHP 構造では、認証成功時に `session_regenerate_id(true)` を呼び出し、古いセッションを即座に破棄する設計を標準化しました。
Auth Core Logic
- Password Hashing: `password_hash()` によるソルト付き暗号化
- Cookie Attributes: HttpOnly, Secure 属性による漏洩防止
- Timeout: 長時間放置されたセッションの自動無効化
2. 「見えない」壁を構築する
万が一データベースが流出しても、元のパスワードが特定されないよう、ストレッチング回数を調整した堅牢なハッシュ化を採用しました。自前で認証を組むことで、フレームワークの背後で何が起きているのかを「手触り感」を持って理解することができました。
Security Depth
ログイン試行回数の制限(レートリミット)も実装。ブルートフォース攻撃から、BICSTATION のユーザーデータを守るための重層的な防御を敷いています。