ActiveTK's Note

ユーザー登録フォームを作るとき、プログラマーが絶対に知っておくべきこと27か条


作成日時 2025/09/09 16:52
最終更新 2025/09/09 20:26


  • 序章
  • 1. 名前の入力欄は「姓」と「名」で分割してはならない
  • 2. 名前の文字数に下限や上限を設けてはならない
  • 3. 名前はしばしば変わることがある
  • 4. 名前は常に特定の正規表現に収まるとは限らない
  • 5. メールアドレスは勝手に他人のものを入力できる
  • 6. メールアドレスを収集するならプライバシーポリシーを用意すべし
  • 7. メールアドレスには捨てアドサービスが存在することを理解せよ
  • 8. パスワードの「コピペ禁止」は厳禁
  • 9. パスワードに複雑な制約を求めるなら、JavaScriptで自動生成すべし
  • 10. パスワードの文字数に上限を設けてはならない
  • 11. パスワード管理・自動入力ツールを阻害してはならない
  • 12. パスワードの保管はソルト付きハッシュを利用するか、クラウドに頼れ
  • 13. パスワードで確認用の再入力を求めてはならない
  • 14. パスワードはそもそも半世紀前の技術であり、今はパスキーを利用すべし
  • 15. 性別は二分できない、そもそも入力させるべきではない
  • 16. 郵便番号と市区町村までの住所はお互いに補完し合える存在である
  • 17. 住所の入力欄を分割してはならない
  • 18. 生年月日はドロップダウンではなくカレンダーで実装すべし
  • 19. 電話番号を全ての人が持っているとは思うな
  • 20. 電話番号の区切りの有無や半角・全角の正規化をユーザーにやらせるな
  • 21. 電話番号には通話専用・SMS専用が存在するので、片方に依存するな
  • 22. 必ずしも必要のない情報を「必須」にしてはならない
  • 23. 利用規約に同意するためのチェックボックスは大きく目立つように
  • 24. データベースに何度もクエリを送るな、一つに統合して一気に送れ
  • 25. データベースにクエリを送るときはプレースホルダを利用すべし
  • 26. ユーザーが送る全ての情報は信用するな、XSS対策を徹底せよ
  • 27. まずユーザー登録を求める前に外部サービスのOAuth連携を検討せよ
  • 最後に
  • 参考文献