![見出し画像](https://assets.st-note.com/production/uploads/images/57942962/rectangle_large_type_2_1956f67d198412865f8896ed38677aa8.jpg?width=1200)
laravel8でFirebase Admin SDK for PHPを使ってみた(メール認証方法)
firebase authenticationではメール認証もデフォルトで提供しています。
さくっと認証を使いたい場合には便利です。
自分で認証用メールを送りたい!
まずは自前でユーザーにメールを送って、ユーザーにリンクを踏んでもらいたい場合です。
$link = $this->auth->getEmailVerificationLink($email);
$link = $this->auth->getEmailVerificationLink($email, $actionCodeSettings);
こちらのコードで認証用のリンクが発行されます。
このリンクをメールに貼って、あとはユーザーに送るだけ!
めちゃ簡単にできますね!
emailは実際に登録されているものじゃないとエラーになるので注意!
actionCodeSettingはURLを踏んだあとにどうするかというのを設定することができます。
下記を参考に設定することで、androidやiosアプリを開くことも可能だったりするみたいです。
$actionCodeSettings = [
'continueUrl' => 'https://www.example.com/checkout?cartId=1234',
'handleCodeInApp' => true,
'dynamicLinkDomain' => 'coolapp.page.link',
'androidPackageName' => 'com.example.android',
'androidMinimumVersion' => '12',
'androidInstallApp' => true,
'iOSBundleId' => 'com.example.ios',
];
firebaseの機能で送りたい!
firebaseの機能でメールを送ることができます。
$this->auth->sendEmailVerificationLink($email);
$this->auth->sendEmailVerificationLink($email, $actionCodeSettings);
$this->auth->sendEmailVerificationLink($email, null, $locale);
$this->auth->sendEmailVerificationLink($email, $actionCodeSettings, $locale);
メールの実装をしなくて良いので、めちゃめちゃ便利!
メール文言についてはfirebase tuthenticationの画面から設定できます。
他にもパスワードの再設定やメールアドレスの変更、そしてSMS認証のメッセージも編集できます。
名前とかはfirebaseに設定されているのが自動で入るので、すごく便利ですね!
もっと他にもできることありそうなので、機会があればまた書いていきます。
一旦、今回はこちらでfirebase authenticationについては終了します。
また技術系の記事も書いていければと思っているので、そのときはよろしくお願いいたします。
この記事が気に入ったらサポートをしてみませんか?