概要
この記事ではFirebaseAuthの電話番号認証(SMS)にてボット判定(reCAPTCHA 検証)をなくす方法についてご紹介します。
今回iOS,Androidそれぞれボット判定を消す事が出来たのでそれぞれ解説します!
そもそもボット判定とは?
以下のような画面を指します。まずこのような画面が表示されたあとに
これをユーザにサインアップ、ログインしてもらう度に実施してもらうのはユーザビリティ的に微妙なので、
上記の画面を消す設定をご紹介します!
iOS
まずはiOSから説明していきます。
基本的には公式に書いてあるこちらの記事を参考にしてもらえれば大丈夫なのですが、こちらの記事に書かれていない設定がプラスα必要なのでそちらも合わせて解説します。
Xcodeでプロジェクトのプッシュ通知を有効にする
こちらの記事の1.のステップにある通りにプロジェクトのプッシュ通知を有効にしてください。
APNs認証キーを登録する
以下の画像のようにFirebaseのコンソールからAPNs認証キーを登録してください。
Remote notificationsを有効にする
公式の記事だとAPNsを登録するまでやればOKなように書かれていたのですが、プラスで設定を追加する必要がありました…!(ここがハマりました)
Background Modes
-> Remote notifications
を有効にすることでボット判定が出なくなります!
Android
Androidは公式に書いてあるこちらの記事の通りに実装してもらえれば大丈夫です!
Android DeviceCheck APIを有効にする
FireBaseに紐づくGCPプロジェクトを有効にします。
アプリのSHA-256フィンガープリントを登録する
上記の設定をすることでAndroidでもボット判定が出なくなります!
基本的には公式の通りにやれば大丈夫なのですが、
iOSのRemote notificationsの部分だけ記事を書いた当時記載がなくハマりました。
以上がiOS,Androidの設定方法の解説になります!