You are viewing the Japanese site, but your language preference is set to English. Switch to English site →

Menu

Expand
Rate this page:

Twilio Verify PHP Laravel Quickstart

Twilio Verifyは、コーディングの負荷を大きく軽減します。コード数行の追加で、PHP Laravelアプリケーションによる電話番号認証、セキュリティ強化が可能です。

このPHP Verifyクイックスタートでは、Verify REST API、Twilio PHPヘルパーライブラリー、Laravel PHP Frameworkを使用し、簡単に開発する方法を説明します。

このクイックスタートでは、以下について説明します。

  1. Twilioにサインアップする
  2. 開発環境を設定する
  3. SMS電話認証を送信してみる
  4. 認証コードを確認する

多忙な人のために、こちらのTwilioのCode ExchangeとQuick Deployを使用すると、2分かからずに、編集可能なローコードの認証デモを起動できます。

Twilioにサインアップする

すでにTwilioアカウントをお持ちの場合は、このステップは必要ありません。次のステップに進んでください。

PHPからSMSを送信するには、Twilioアカウントにサインアップするか、すでにお持ちのアカウントにサインインします。

無料のTwilioトライアルアカウントには、こちらからサインアップできます。

  • サインアップの際に、お客様個人の電話番号を確認させていただきます。Twilioがお客様の身元を確認するためだけでなく、お客様が試用版のご利用中に、自分のTwilioアカウントから電話にテスト用の認証メッセージを送信するためのものです。このチュートリアルでは、まさにこの電話認証ステップの構築方法を学ぶことになります。
  • 電話番号が認証されると、プロジェクトの作成を求められます。このチュートリアルでは、"Learn and Explore"(学びながら探検)テンプレートを使用します。プロジェクトに名前を付けるか、"skip remaining steps"(残りのステップを省略)をクリックし、デフォルト値で続行します。
  • プロジェクト作成フローを終えると、Twilio Consoleにプロジェクトダッシュボードが表示されます。ここでは、アカウントSIDや認証トークンを取得したり、認証サービスを作成することができます。

電話番号の購入は必要ですか?

過去にTwilioでSMSを送信したことがある方は、Twilioで電話番号を購入されたのではないでしょうか。Twilio Verifyでは、Twilioが電話番号をご用意します。(ご自分でTwilioから電話番号を購入する必要はありません。)Verify APIは最適なルートを選択し、認証コードを迅速、確実にグローバル配信します。

Verifyサービスを作成する

Verifyを利用するためには、Verifyサービスを作成する必要があります。Verify APIリクエストを送信するには、Twilioの認証情報(アカウントSIDや認証トークン)とVerifyサービスSIDの両方が必要です。サービスの作成やアップデートは、次の2通りの方法で行うことができます。

  1. Verifyコンソールで行う
  2. Verify APIを使用する

サービスの設定からは、名前(メッセージテンプレートに表示される)の編集、認証コード長(4~10文字)、ユーザーが認証コードを他の人と共有するのを防ぐための警告メッセージの有無などの設定が可能です。

これでTwilioアカウントとVerifyサービスが作成できたので、早速コードを書いてみましょう.次に、PHP用のTwilioヘルパーライブラリーをインストールします。

PHPコアをインストールする

すでに他のPHPクイックスタートをご覧になり、PHPとComposerをインストールしている場合は、このステップをスキップし、最初の認証メールを送信できます。

電話を認証し、最初のSMSを送信するには、PHP 7がインストールされている必要があります。PHPがインストールされているか不明な場合は、次のコマンドを実行すると、インストールされているバージョンを確認できます。

php --version

Twilio SDKではPHPバージョン5.3以降が必要です。ただし、5.3より古いバージョンはサポート対象外のため、このチュートリアルではPHP 7.1以降を使用します。

サポートされているバージョンのPHPがインストールされていない場合は、まずインストールします。手順に従い、ご利用のプラットフォーム(Windows、Mac、Linux)用のPHPをインストールします。

プロジェクトの依存関係は、Composerを使用して管理します。インストールされていない場合は、手順に従ってダウンロードし、インストールします

        
        
        
        ユーザーの電話番号にワンタイムパスコードを送信します。

        SMS認証コードを送信する

        ユーザーの電話番号にワンタイムパスコードを送信します。
              
              
              
              ユーザーに送信したワンタイムパスコードを確認します。返されたJSONの「status」の値が「approved」であれば、指定したコードが正しいことを表します。

              認証コードを確認する

              ユーザーに送信したワンタイムパスコードを確認します。返されたJSONの「status」の値が「approved」であれば、指定したコードが正しいことを表します。

              認証アプリケーションのサンプルプログラムを構築する

              最初に、VerifyクイックスタートのPHPリポジトリをクローンします。

              git clone git@github.com:TwilioDevEd/verify-v2-quickstart-php.git

              gitをインストールしていない場合や、ソースコードをダウンロードする場合は、こちらからプロジェクトのzipファイルを入手してください。

              プロジェクトの依存関係をインストールする

              次のコマンドを実行し、新しいプロジェクトディレクトリを入力します。

              cd verify-v2-quickstart-php/

              以下の手順でComposerをインストールし、起動します。

              php composer.phar require Twilio/sdk

              次のコマンドを実行し、.env.example.envにコピーします。

              cp .env.example .env

              内容を更新し、Twilioアカウントの機密データを設定します。

              # Twilio API credentials
              # (find here https://www.twilio.com/console)
              TWILIO_ACCOUNT_SID=ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              TWILIO_AUTH_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
              
              # Verification Service SID
              # (create one here https://www.twilio.com/console/verify/services)
              TWILIO_VERIFICATION_SID=VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

              ローカルSQLiteデータベースファイルを作成します。

              touch database/twilio_verify_quickstart.sqlite (Unix like OS only)

              データベースのマイグレーションを実行します。

              php artisan migrate

              アプリケーションキーを作成します。

              php artisan key:generate

              アプリケーションを実行します。

              php artisan serve

              すべての情報が正しく設定されている場合、アプリが起動したというメッセージがすぐに表示されます。

              サンプルプログラムでTwilio Verifyを動かしてみる

              http://localhost:8000/registerを開きます。次のような登録フォームが表示されます。

              sign up form with phone verification

              電話番号を入力し、どのチャネルで認証するか選択します。最後に、緑色の[Sign Up](サインアップ)ボタンをクリックし、待ちます。入力した電話番号に音声通話が着信するか、認証トークンの記載されたSMSが届きます。音声通話で認証する場合は、セキュリティ強化のための操作が必要です。(電話のプッシュボタンで番号を入力するように求められます。)

              トークンを認証入力フォームに入力し、[Verify](認証)をクリックします。

              verification entry form

              Twilio Verifyを使った電話認証が成功しました。ログアウトし、まだ試していないチャネルを試すことができます。

              次のステップ

              デモアプリは、不正ユーザーによる会員登録、データベースの書き換えを防止できるようになりました。次に、利用可能なすべての変数とオプションをVerify APIのリファレンスで確認します。

              その後、Verify APIでサポートされている認証チャネル(以下)が追加されることを確認します。

              最後に、不正行為からサービスを保護するために、Verifyを使用する際の不正利用防止に関するガイダンスをご覧ください。

              Maylon Pedroso Mica Swyers
              Rate this page:

              Need some help?

              We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Community Forums or browsing the Twilio tag on Stack Overflow.

                    
                    
                    

                    Thank you for your feedback!

                    We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

                    Sending your feedback...
                    🎉 Thank you for your feedback!
                    Something went wrong. Please try again.

                    Thanks for your feedback!

                    Refer us and get $10 in 3 simple steps!

                    Step 1

                    Get link

                    Get a free personal referral link here

                    Step 2

                    Give $10

                    Your user signs up and upgrade using link

                    Step 3

                    Get $10

                    1,250 free SMSes
                    OR 1,000 free voice mins
                    OR 12,000 chats
                    OR more