GitHubのパスキー/Passkey対応を試してみた
こんばんは、ritouです。
今回はこれを試してみます。
まずはパスキーを有効にします。
PCの画面だと右上のプロフィール画像をクリックするとワーっと出てくる中の "Feature preview" ですね。
"Passkeys" のところを選んで
こう! (Enable)
で、右に表示されている "Add a Passkey" を押してもこれ ただの画像なので何も起こらないですよ。
本物は "Settings" -> "Password and authentication" と進めばあります。
2FAで使っていたPasskeyの昇格
追加してみようと思うと、再認証が必要...わかります。
そういえば自分は2FAで既にHybrid Transportを使ってAndroidのPasskeyを利用していました。
とりあえずそっちで再認証を終わると...
・・・おや!? 2FA用のPasskeyのようすが・・・!
これUpgradeできそうです。2FAのフローからPasswordlessに昇格みたいなフロー、みたことないですね。
やってみるともう一回Passkey登録の手順を踏んで、Upgradeできました。
もともと "Android Passkey" にしてたんですが親切に後ろに "passkey" をつけてくれたので、 今からお前の名前は "Android Passkey passkey" だ。 みたいになってニヤニヤしてしまったのでそのまま行きます。
ログアウトしてみます。
ログイン画面に "Sign-in with a passkey" って出てきました。
後述しますがAutofillと両方に対応しています。
これでいつもの手順を踏むとサクッとログインできます。
シークレットウィンドウで見るとAutofillがパスワードのみのやーつ&ボタンも出てこなかったので、設定したブラウザのみ有効になるのかもしれません。というかプレビューだからかもしれません。
(2023/8/13 追記: 上記ボタンを表示する方法についてコメントいただきました。ありがとうございます。)
既にご存知でしたら恐縮ですが, Passkey を設定した端末以外からのアクセスでも Sign-in with a passkey ボタンを表示させる方法を見つけました.
こちらのように, ログインページのクエリを /login?passkey=true とすると動作するみたいです.
Single-Device Credential
MacOSのChromeで試すと、同期されないSingle-Deviceなパスキーを登録できます。
この時はデフォルトで OS名 - ブラウザ名 みたいなnicknameが指定されます。よくあるやつ。
ログイン画面のAutofillも動きました。
Multi-Device Credential
MacOSのSafariで試すと、自分の環境ではiCloud Keychainが有効なので Multi-device なパスキーが登録できます。
この時はnicknameが空でした。この辺の出し分けは芸が細かくて良いと思います。
Autofillも動きました。
まとめ
早速GitHubのパスキー対応を試してみました。
- 登録前にHybrid Transportsを使って2FAで使っていたパスキーで再認証したら、昇格できた
- Single-device / Multi-deviceで文言とnicknameの扱いなど、登録フローを細かく出し分けている
- 今の所は設定した端末のみのようだが、Autofillとボタンの両方に対応
というところでしょうか。
ではまた!
おまけ
ボタンがあるので1Passwordの拡張でもちゃんと動きますね。
前に調べた時は1PasswordがAutofillに対応していなかったので、今後も無理ならボタンと併用するメリットはありそう。
Discussion
既にご存知でしたら恐縮ですが, Passkey を設定した端末以外からのアクセスでも Sign-in with a passkey ボタンを表示させる方法を見つけました.
こちらのように, ログインページのクエリを
/login?passkey=true
とすると動作するみたいです.現時点ではまだ動作しますので, 参考程度にどうぞ..! 🙇🙇
ありがとうございます!
追記させていただきますね