ユーザー名に使って欲しくない文字列
ユーザー登録をしてもらうシステムを構築しているのですが、ユーザー名として登録してほしくない文字列ってありますよね。
代表的なものは制限しているケースが多いかもしれませんが、こんなユーザー名も制限しておくと便利かもしれません、という話です。
「admin」「root」みたいなアカウント文字列は実際先に使っていたりして、ある意味では既に予約されていることもあるかもしれませんが、それ以外にもあんまり使ってほしくないな…というアカウント文字列はいろいろとあります。
ちょっと探してみるだけでも、結構情報が出てきました。
特にまとまっていると思われたのがこちら。
Twitter連携とかならそこまで気にする必要はないかもしれませんが、オリジナルのユーザー名をつけるサービスなら、何かしらの制限が必要です。
そこまではやりすぎとか色々意見はあると思いますが、上記に追加で日本語についての配慮(kanriとか)もしたほうがいいかもしれません。
リストは上記の記事にお任せするとして、今作っているシステムのユーザー名登録ルールは以下のようにしようかと。
- 使える文字列は半角英数字、ドット(.)、ハイフン(-)、アンダーバー(_) (但し記号の連続はNG)
- 文字数は3文字以上
- 上記の条件を満たしていても、除外リストにある文字列はNG
ちなみに、以前からそうしてますが、ユーザーを特定するためのユニークIDとアカウント名は別にしてます。
下記参照。
【余談】
アカウント名をURIにする文化はTwitterで広まった気がするけど、正直あまりやりたくない。
やるとしても、 http://hoge.com/user/piyopiyo/ くらいかな…
それでも、運営と関係ない人に
http://hoge.com/user/support/
とか
http://hoge.com/user/admin/
とか名乗られたら嫌だなと…
リストで弾くっつっても限界ある気がするんですよね。