Firebase Phone Authentication を使用して PHP セキュリティ検証を実装する
概要:
Web アプリケーションを開発する場合、セキュリティ検証は非常に重要なリンクです。ユーザーの ID とデータのセキュリティを確保するには、ユーザーがログインしたり機密性の高い操作を実行したりするときに認証する必要があります。 Firebase Phone Authentication は、携帯電話番号認証の実装に役立つ強力な認証ソリューションです。この記事では、Firebase Phone Authentication と PHP を使用してセキュリティ検証を実装する方法を紹介します。
ステップ 1: 準備
Web ページを作成し、Firebase の JavaScript SDK を導入します。
<script src="https://www.gstatic.com/firebasejs/7.8.1/firebase-app.js"></script> <script src="https://www.gstatic.com/firebasejs/7.8.1/firebase-auth.js"></script>
ステップ 2: Firebase Phone 認証の統合
Firebase 送信の送信など、Firebase Phone 認証に関連する操作を処理する PHP ファイルを作成する検証コード、検証コードなど。通信にはFirebaseが提供するREST APIを使用します。
<?php $phone_number = $_POST['phone_number']; $recaptcha_token = $_POST['recaptcha_token']; $request_body = [ 'phoneNumber' => $phone_number, 'recaptchaToken' => $recaptcha_token ]; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[YOUR_API_KEY]'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($request_body)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); echo $response; ?>
注: 上記のコードの [YOUR_API_KEY]
は、Firebase コンソールで生成した API キーに置き換える必要があります。
ステップ 3: フロントエンド コードの作成
携帯電話番号を入力してトリガーするためのテキスト ボックスとボタンを Web ページ上に作成します。検証コードの送信操作。
<input type="text" id="phone_number_input"> <button onclick="sendVerificationCode()">发送验证码</button>
ボタンをクリックしたイベントを処理し、携帯電話番号をサーバーに送信する JavaScript 関数を作成します。
function sendVerificationCode() { var phoneNumber = document.getElementById('phone_number_input').value; var recaptchaToken = 'YOUR_RECAPTCHA_TOKEN'; var request = new XMLHttpRequest(); request.open('POST', 'path/to/your/php/file.php'); request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); request.onreadystatechange = function() { if (request.readyState === XMLHttpRequest.DONE && request.status === 200) { var response = JSON.parse(request.responseText); if (response.hasOwnProperty('error')) { console.log('发送验证码失败:' + response.error.message); } else { console.log('验证码已发送,请查收。'); } } } var requestBody = 'phone_number=' + encodeURIComponent(phoneNumber) + '&recaptcha_token=' + encodeURIComponent(recaptchaToken); request.send(requestBody); }
注: 悪意のある操作を防ぐために、上記のコードの YOUR_RECAPTCHA_TOKEN
を reCAPTCHA サイト キーに置き換える必要があります。
ステップ 4: 確認コードを確認する
Web ページ上に別のテキスト ボックスとボタンを作成して、確認コードを入力し、確認検証をトリガーします。コード操作。
<input type="text" id="verification_code_input"> <button onclick="verifyVerificationCode()">验证验证码</button>
ボタンのクリック イベントを処理する JavaScript 関数を作成し、検証のために検証コードを Firebase に送信します。
function verifyVerificationCode() { var verificationCode = document.getElementById('verification_code_input').value; var credential = firebase.auth.PhoneAuthProvider.credential(window.confirmationResult.verificationId, verificationCode); firebase.auth().signInWithCredential(credential) .then(function() { console.log('验证成功!'); // 验证成功后的操作 }) .catch(function(error) { console.log('验证失败:' + error.message); }); }
これまでに、Firebase Phone Authentication を使用して PHP セキュリティ検証を実装するためのすべての手順が完了しました。ここで、ユーザーが「認証コードを送信」ボタンをクリックすると、認証コードがユーザーの電話に送信されます。ユーザーが認証コードを入力した後、「認証コードを認証する」ボタンをクリックして認証します。
概要:
Firebase Phone Authentication は、PHP セキュリティ検証を実装するためのシンプルかつ強力な方法を提供します。 PHP と Firebase の REST API を組み合わせることで、ユーザー認証を簡単に実装し、アプリケーション内でユーザーのデータを安全に保つことができます。この記事がお役に立てば幸いです!
以上がFirebase Phone Authentication を使用して PHP セキュリティ認証を実装するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。