環境
- macOS Monterey 12.1
- Google Chrome 97.0.4692.71
- Android 12(Pixel 3a)
まとめ
Android端末を使って本人確認(MFA)をできるようにするには、mac側のChromeでBluetoothの使用を許可されている必要があります。
許可するには「システム環境設定」→「セキュリティとプライバシー」→「プライバシー」→「Bluetooth」で"Google Chrome.app"を許可します。
許可後に必要に応じてChromeを開き直します。
起きたこと
macのChromeでGoogleアカウントやFacebookログイン時にMFAの認証でAndroid端末を選択できるものの、タイムアウトして認証ができない。
- Googleアカウントの場合はAndroid側に認証の通知すら飛ばない(Android側でBluetoothをオンにすることは求められる)
- Facebookアカウントの場合(Googleアカウント以外)はAndroid側に本人確認の通知が飛ぶものの認証に失敗する(タイムアウトする)
- Android側の認証画面で「問題が発生しました」「パソコンに接続できません。他の確認オプションをお試しください」と表示される
試したこと
原因
mac側のChromeにBluetoothの使用が許可されていませんでした(許可が必要でした)。
- 「システム環境設定」→「セキュリティとプライバシー」→「プライバシー」→「Bluetooth」で"Google Chrome.app"が許可されている必要がある
- 許可リストでChromeが拒否(チェックがついていない)とエラーやメッセージは表示されずにタイムアウトする
- ChromeにBluetoothの使用を許可していなくても、ChromeがBluetoothを一時的にオンにすることは可能
まとめ(再掲)
Android端末を使って本人確認(MFA)をできるようにするには、
- mac側のChromeでBluetoothの使用を許可されている必要がある
- 「システム環境設定」→「セキュリティとプライバシー」→「プライバシー」→「Bluetooth」で"Google Chrome.app"を許可する
- 許可後に必要に応じてChromeを開き直す
- 「システム環境設定」→「セキュリティとプライバシー」→「プライバシー」→「Bluetooth」で"Google Chrome.app"を許可する
- Android側のChromeで「付近のデバイス」を許可する
- Bluetoothを有効にする(mac/Android両方)
Android側は位置情報サービスの有効化も必要かもしれない(元々オンだったので試してない)。
「パソコンに接続できません。他の確認オプションをお試しください」で検索してもヘルプページも出てこないので、対処するのに時間がかかりました。
ログインをやり直したり、MFAの認証設定を解除したりして試しまくりました。
Windows 10の端末で試したときに問題なく認証できたのは、アプリごとのBluetoothの使用許可設定が無いからなのかな(プライバシー設定で許可設定を大概、絞っているはずだけど変更した記憶がない)
トラブルシュートできるように適切なエラーメッセージを表示するというのは大事だと思いました。
今回の場合だと、「Bluetoothの使用が許可されていません」などのメッセージをmac側のChromeに出して欲しかったです。