注目★★★★★GitHub Advisory
Auth.js v5 の設定エラーが認証チェックを無効化、全リクエストを通す危険
30秒で把握
- 1Auth.js v5 の設定エラー時、auth オブジェクトがエラー内容で埋められ truthy になるため、存在チェックのみの認証ゲートが全リクエスト通す
- 2公式ガイドの `!!auth` パターンが実装されたアプリは設定破損で fail open となり、未認証ユーザーにもアクセス権付与
- 3Provider 必須設定不足 (Keycloak の issuer/authorization など) でトリガー、ログ監視と認証チェック実装の見直しが急務
要約
Auth.js (next-auth) v5 で、設定エラー発生時に `auth` オブジェクトが `null` ではなくエラーオブジェクトで埋められ、truthy 値となる。公式ガイドのように `!!auth` で認証チェックするアプリケーションは、設定が壊れると **すべてのリクエスト (未認証含む) にアクセスを許可してしまう (fail open)**。Keycloak など必須設定が不足した Provider でこの問題が発生する。
あなたへの影響
この記事が日本のエンジニアに与える影響と、今日取るべきアクションは、Personal会員向けに掲載しています。
クレカ不要・いつでも解約