86キーボードの甘い罠

今日、仕事をしていて、そろそろ帰ろうかなと思っていたころ、前の席の先輩が、その隣の席の後輩と意味不明なやり取りをしていた。

先:どうにもならないって
後:とりあえず相談してみましょうよ

なにが起こっているのか聞いてみると、

  1. 開発屋さんから新製品のシステム環境をサーバ上に構築してもらった。OSはWindowsServer2008。
  2. 構築してもらったサーバが届いたので、セットアップしてログオンしたところ、無事に動作した。
  3. しかしWindowsへのログオンパスワードがやたら複雑なので、AdministratorのパスワードをAdministratorに変更した。*1
  4. ログオフしログオンしようとしたところ、先ほど設定したパスワードでどうやってもログオンできない。
  5. 変更前のパスワードを使用してもログオンできない。

つまり、開発屋さんが構築してくれた環境を、パスワード変更のミスで、一瞬でオシャカにしてしまったのだ。先ほどの意味不明トークは、「パスワードをどうにかリセットできないか」という相談を私に対してしようかすまいかというやり取りだった。
まあ、コンソールが目の前にあって、ハードディスクの暗号化を行っていなければ、パスワードリセットなんて別にむずかしい話じゃない。パスワードリセット専用のCDBootLinuxでどうにでもなる。たとえばこんなのとか。まあ話を聞いてから10分程度で無事パスワードがリセットできた。
しかしよくよく考えてみると、Windows2008のパスワードポリシーで、Administratorとか、それに似たパスワードなんて設定できるはずが無い。複雑さの要件を満たせないのだ。そこで気がついたのだが、使っていたキーボードがELECOMの86キーボードではないか。86キーボードはNumlockが有効になっていると「英字キーの一部が数字キーとして扱われる」。要はパスワード変更の際に、Numlockが有効になっていて「Administrator」とパスワードを設定したつもりが「Ad05n5strat6r」と入力されていたのだろう。これは複雑さの要件を満たす。*2
最近のWindowsはパスワード入力時、CapsLockが押下されていると警告してくれるが、残念ながらNumlockでは警告してくれない。

おそろしい事件だった(嘘)。はぐれメタルと戦った気分だった*3

*1:手順書を作るための環境だからパスワードとかどうでもいい

*2:アルファベット大文字、アルファベット小文字、数字、記号のいずれか3種類以上を含む、連続した同じ文字を使用しない、6文字以上のパスワード

*3:経験値が無駄に多く入った的意味