パスキーの動作確認をデスクトップブラウザとパスワードマネージャーのマトリックスで調べた

自社サービスでパスキー認証機能を実装したけど、どこまでをサポート対象とするべきかよくわからなかったので、実際に動作確認してみた。

パスキーのキープロバイダーはパスワードマネージャーになるため、「ブラウザごと」だけじゃなく「パスワードマネージャーとの組み合わせ」によっても挙動が変わる。そのため、各組み合わせで確認した。

1Passwordなどのパスワードマネージャーは、公式のブラウザ拡張を入れて確認している。他にも Dashlane, Proton, Keeper, KeePassXC あたりもパスキー対応していそうだけど、利用シェアが少なそうだったので今回は対象外。

確認対象は、自社で開発しているサービスなので、実装側の問題でうまく動かないケースもあり得る。そこで、NGだった組み合わせは passkeys-demo でも再確認した。

キープロバイダー Chrome Firefox Safari Edge 補足
Windows Hello (Windows) N/A
iCloud Keychain (macOS) N/A
Google Password Manager N/A N/A N/A macOSでのChromeで確認した
Google Chrome Profile N/A N/A N/A macOSでのChromeで確認した
1Password ✅ (*4) ドメインが重複しても登録できてしまうので使い勝手が悪い
LastPass ❌ (*1) - - そもそもベータ版の機能で動かなかったのでSafariからは調査せず
BitWarden ❌ (*2) ✅ (*3) ドメインが重複していたら確認が出る。使い勝手が良い
  • *1 https://passkeys-demo.appspot.com/home でも動かない。ベータ機能を有効にして追加のUser Verificationもオンにしたけどダメ。どのサイトだと動くんだろう?
  • *2 Safari + BitWardenはパスキーautofillも登録も不可。https://passkeys-demo.appspot.com/home でも動かない。念のため Nulab でも確認したが結果は同じ。
  • *3 「フォームフィールドに自動入力の候補を表示」のオプションがデフォルトで無効ログインフォームに何も出ない。オプションを有効にしたらOKだった。Edge の拡張だけデフォルト無効で、それ以外のブラウザ拡張はデフォルト有効。なんだそりゃ
  • *4 登録直後の認証テストでは 1Password 拡張が反応せず失敗したけど、リロードしたら成功した

感想

OS/ブラウザ組み込みのキープロバイダーはちゃんと動作していて安心感があった。だけど、独立系パスワードマネージャーは対応にムラがある印象。1Password がしっかりしていたのは、会社にリソースの余裕があるからだったりするのかもしれない。