Yubikey を買った。
いろんな都合でType-A用のYubiKey 5 nano だ。 一般的にはNFC対応版かType-C版がよいと思われる。
実物はこんな感じ。ちいさい。で、金属のところに軽く触ると機能する。
Yubikey、ものすごく端的にいうと「タッチしたらランダムな文字列を吐くデバイス」であって、当初思ってたのとわりと違った(文字列吐くところは何らかのテキストエディタなどで確認できる)。
ともあれ試してみよう。
初期設定
設定変更や確認なんかにつかうPINを設定しないといけない。 これを忘れると大変なことになるから慎重に。
とはいえ、画面から設定するだけなので操作自体はうっかりしようがない。
これでデバイスの初期化ができたので、いろいろ試してみる。
Windows ログインでつかう(つかえない)
参考: 【SSS】YubiKeyを使ったWindows起動時サインイン2段階認証
まず、Windowsで利用する場合、ローカルアカウントで運用しなければならないうえにそもそもYubikeyのみでのパスワードレス運用はできないらしい(セキュリティキーの確認の上にPIN入力が必要)。
素直にWindows Hello対応に認証デバイスを買えということのようだ。
まあ、二段階認証であって生体認証ではないから当然なのだが…。
例えば下記のような顔認証カメラが便利で、ここ数年使っている。かつては品薄な上に選択肢もなかったのだが、いまは値段も下がり潤沢に選べるようだ。 マウスコンピュータの製品はここ数年使っているがまったく問題がないので挙げておく。
ともあれ、YubiKeyはWindows Helloのような認証デバイスをしては使えないようだ、ログインに使うのはあきらめよう。そもそも目的が違うものなのだ。
なお、指紋認証に対応したYubiKey Bioならパスワードレスログインできるみたい。
参考: 【検証】生体認証対応セキュリティキー「YubiKey Bio」の実力は?|ブログ|NRIセキュア
1Password で使う(使いづらい)
1Password のロック解除について、毎回マスターパスワードを入力するのが面倒なのでその解除にYubikeyを使いたい。Macだと指紋認証だし、iOS版なら顔認証、WindowsでもHelloを使った顔認証みたいな、その手のやつ。
が、これもWindows Hello対応ではないので、そういう使い方はできないようだ。
参考: YubiKeyで静的パスワードを扱う – Mad Overload
上記のエントリによれば、Yubikeyには静的パスワードを登録できるようだ。 Short Touch(1-2.5秒)とLong Touch(3-5秒)があり、それぞれの動作を定義でき、オプションのひとつとして静的パスワードが登録できるようだ。
とはいえ、単一の文字列しか登録できないので、マスタパスワードを登録するのは気が引ける。 また、うっかりShort Touchだとランダム文字列が入力されてしまう(設定次第だけど)。
ので、これも厳しいけどあきらめよう。ログイン後の初回利用時だけなのでそこは我慢するしかない。
やはりこれも素直にWindows Hello対応デバイスを使えということだ。MacならTouchIDで行けるわけだし。
なお、設定用のアプリはスケーリングが考慮されておらず、4Kモニタで使うとけっこう厳しいことになってた。
Web認証で使う(使える!)
で、本命の利用方法について。 Googleアカウントとかに二段階認証で使いたい。もうSMSを受け取るのはいやだよ…(ほかの状況では受信が必要なんだけど)。
Google アカウントの場合
参考: Google アカウントに FIDO2 対応のセキュリティキーを設定してみる | DevelopersIO
こちらの記事の「セキュリティ キーの登録」を参考にするとよい。
で、設定画面は下記のリンクから直接行ける。
設定画面への直リンク: セキュリティ キーをお持ちですか?
上記の画面のあとにタッチを促され、あとは適当な名前をつけて設定を保存する。 登録時にエラーは出たのだが、登録はされたみたい。不穏だけど意図すると動作はしてるみたいなのでよしとする。
これで、Googleアカウントのログイン時にYubiKeyをタッチするだけでよくなった。
ほかに使えそうなもの
Github とかは対応している。 ほかにもあったら探そう。
かんそう
Googleアカウントの強化(利便度向上)には便利そう。
ひとまずだいぶ便利な気はするが、今回はNano(差しっぱなし運用前提)なので、一般的なユースケースとはずれているかも。
そして、使いたいのはWindowsではないので使いづらいことがあっても構わないのだった。
つぎはもともとの目的であったLiunxでも使えるようにしてみる。