KeePassを導入して、いろいろなパスワードを難しくして覚えさせ、自動入力でハッピーな暮らしになったかもしれない話。
今までは、一つのパスワード付きファイルを用意して、パスワードが必要なサイトごとに、
- ユーザID
- パスワードのヒント(当然、パスワードの使いまわしはないようになっている)
を、書いて保存していた。
これはこれでうまくいっていると思っていたが、以前から気になってはいたがなかなか手が出なかったパスワード管理ソフトを今回導入してみた。
検討
まずは、そもそもどれを使うのか、というところだが、とりあえず無料で利用可能でオープンソースなKeePassを使うことにした。
KeePassについて検索するとちらほら出てくる、日本語での自動入力での不具合は、自分のやった範囲(バージョン2.32)では出なかったので、修正されているのかもしれない(バージョン2.25くらいから、Auto-Typeまわりの修正が入っているようなので、そこで修正されたものと期待)。
パスワードの登録
その後、2晩かけて記録していたサイトを全て洗って、2度と使わないものはID削除、使いそうなものは、KeePassのジェネレータで生成したパスワードに更新しつつKeePassに記録していった。
パスワード入力自体は、KeePassを立ち上げて一つ一つUSERNAMEを入れて、サイトが許容するパスワード(文字数・文字種)を指定したパスワードジェネレータでほいっと作成しておわり。このエントリを作ったら一度閉じて、メニューからパスワードのところをダブルクリックするだけでクリップボードにパスワードが入るので、それをサイトの方で入力すればOK。(ここでクリップボードに入ったパスワードは、12秒でクリップボードから消えます。)
自動入力を試す
KeePassのパスワード自動入力(Ctrl+Alt+aを押下)はウィンドウのタイトルのみを見て、登録したエントリのTitleとマッチしたらキーボード入力のエミュレーションが走る、という仕組みになっている。
(これは、パスワードをコピペさせないようにしているサイトへの対策ですね)
また、ウインドウのタイトルのみを見るというのも曲者で、ログインページのタイトルが「ログイン」になっているサイトがいくつかあって、頭を抱えたりしたが、Auto-Typeタブの中で、正規表現の意味での「*」を使ってマッチを書けたので、一応はなんとかできた。
自動入力が使えなくても、コピペが簡単にできるようになっているので、条件を考えるほど利用しないサイトでは、そのまま放っておいてもよい。
デフォルトは ユーザID入力 > Tab押下 > パスワード入力 > Enter押下 となっているが、このキーボード入力は同じくauto-typeタブの中でサイトごとに変更できるようになっている。
サイトによっては、Tabを2回にしないとだめだったり、Enterの前にTabが必要だったりするところもあるが、一応はなんとかなる。
使ってみて
一通り登録し終えて、試しに使ってみたところでは、一応は自動入力など便利に使えるようではある。
ただ、この仕組み(ウインドウのタイトルで入力すべきIDパスワードを判断)だと、フィッシングサイトに間違えて自動入力を走らせてしまうおそれがあるので、ブラウザへのID・パスワードの保存も併用した方がいいのかもしれない。
使ってみて難儀したところとして、次の3点を書いておく。
- Microsoftパスワードをこれで管理するようにすると、OneDriveのパスワードとかを聞かれてアカウントの確認が走ったときに困る。(普段はパスワード入力のログインにはしてない。)
- ウインドウズタブレットのタッチキーボードで、Ctrl+Alt+aの入力を実現するには、「デバイス>入力」の設定で、「ハードウェアキーボードに準拠したレイアウトを~~追加する」にチェックしておかないといけない。このレイアウトはごちゃごちゃしていてあまりスマートじゃないので、いまいち。
- Lumia640(windowsphone8.1)向けにいまいちいいアプリがない。とりあえずWinPassを入れてみたが、パスワード入力はコピペ頼み。
上は、その都度パスワードを見るようにするか、複雑だけど覚えられる別のパスワード(KeePassのマスターパスワードもそうだけど)に変えるか、迷いどころ。
最後に、データベースファイルが破損したらどうしようもないので、バックアップしておくバッチファイルを書いて、タスクスケジューラで1日1回走らせ、ひと月分くらい保存しておくようにした。
参考まで、バッチファイルはこんな中見です。hogehogeとpoyopoyoに、データベースのフォルダと保存先をそれぞれ書いておけばOKかと。
set day=%date:~8,2% set src=%poyopoyo% set dest=%hogehoge%\%day% mkdir %dest% copy /Y /B %src%\* %dest%
以下、今回いろいろいじってみて思ったことなど、余談。
- いろいろとパスワードを変えていたら、「秘密の質問」を設定せよ、というところがいくらかあって驚いた。今さらですか、、、、。まぁ、わざわざ本当の母親の旧姓を答に設定したりはしないのですが、、、。
- 定期的にパスワード変更すると、結果としてパスワードが脆弱になる(たとえば、覚えやすい文字列+順番とか)という話があるが、KeePassで管理しておけばよさそうではある。ただし、今回パスワードを変更した限りでは、定期的なパスワードの変更を強制するサイトはなかったわけだが。
- まぁでも、定期的なパスワード変更は、すでにパスワードが漏れていた場合の影響を減らす(もしくは、パスワードの解析に時間がかかることを前提に、現実的に解析できない時間のうちに変えておく)ためなので、漏れてから変更すればいいや、とあきらめられる程度のものなら、定期的に変えなくていいや。あきらめられないようなものはほとんどない。ソーシャルハッキングなんかでパスワード抜かれたら、まで考えたら影響があるかもしれないけど、まぁ、現時点でそこまで狙われる価値が自分にあるわけではないだろうし。
- 半角英数だけ、と限定しているのはまだしも、小文字のアルファベット+数字で10文字までとか、ふざけたパスワード制限を付けているところは早急になんとかしていただきたい。そういうところに限って切れないところだったりするから困る。
- 半角英数記号で32文字まで、というところでも、記号に使える文字種が明示されていなくて困った場面があった。まぁ、32文字あれば、英数だけでも十分複雑だろうから、気にしなくてもいいだろうが。