さかした
Next.js × Supabase セキュリティの押さえどころの振り返り
2026年04月19日
要約を生成中...
① ユーザーの入力は全部疑う
ブラウザから来る値(名前・URLパラメータ・送信データ)はすべて偽造できる。
長さ・型・重複・見えない文字まで、受け取る側でチェックする。
② 権限チェックは入口で行う
処理の途中で「あなたは入れません」は遅い。
Next.js の Server Components は middleware を素通りするので別途対策が必要。
③ レート制限はIPの取得方法から考える
Vercel では X-Forwarded-For の末尾IPを使わないとなりすまされる。 読み取り系APIも含め、全エンドポイントに連打制限は必須。
④ 設定した ≠ 動いている
CSPやセキュリティヘッダーはコードを書くだけでなく、
本番のDevToolsで実際にエラーが出ないか確認して初めて完了。
⑤ エラーの詳細を外に出さない
本番では「エラーが起きました」とだけ返す。
スタックトレースや内部情報はサーバーログだけに留める。
「ログイン不要」は便利な分、セキュリティの手間が増える
5回監査して毎回新しい問題が出た。機能が増えると攻撃面も増える
「動く」と「安全」は別。定期的な見直しをスケジュールに組み込む
「動く」から「広がる」フェーズへ。
セキュリティと品質の土台はできた。 次は、使った人が自然とシェアして、また使いたくなるアプリを目指す。
当選の瞬間をもっと簡単にSNSで広められるようにする
ルームが途中で壊れない安心感をつくる
無料で十分楽しめて、気に入ったら課金したくなる流れをつくる
要約
コメント
まだコメントはありません。