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

Menu

Expand
このページを評価:

Verify Ruby on Railsクイックスタート

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

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

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

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

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

Twilioにサインアップする

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

Ruby on Railsから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サービスが作成できたので、早速コードを書いてみましょう。次に、Ruby用のTwilio Rubyヘルパーライブラリーをインストールします。

RubyとTwilio Rubyヘルパーライブラリーをインストールする

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

電話認証を開始するには、RubyとTwilio Rubyヘルパーライブラリーをインストールします。

Rubyをインストールする

Macをお使いの場合は、古いバージョンのRubyがすでにインストールされている可能性があります。homebrewを使用すれば、次のコマンドで最新バージョンをインストールできます。

brew install ruby 

Linuxマシンをお使いの場合は、デフォルトのパッケージマネージャーを使用してインストールできます。例えばUbuntuの場合は、次のコマンドを実行します。

sudo apt-get install ruby-full

他のディストリビューションのコマンドは、こちらのリストを参照してください。

Rubyがインストールされているかどうか、どのバージョンがインストールされているかを確認するには、ターミナルを開いて次のコマンドを実行します。

ruby --version

次のように表示されます。

$ ruby --version
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin18]

WindowsユーザーはRubyInstallerを使用します。

TwilioのRuby SDKでは、古いバージョンのRubyもサポートしています。ただし、このクイックスタートでは、使用する一部の依存関係との互換性を保つため、Ruby 2.3以降の使用をお勧めします。

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

        SMS認証コードを送信する

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

              認証コードを確認する

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

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

              最初に、Railsリポジトリをクローンします。

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

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

              環境設定、依存パッケージをインストールする

              Ruby環境にbundlerをインストールします。次のコマンドを実行します。

              gem install bundler

              次に、サンプルプログラムで使用する依存パッケージをインストールします。インストールしたディレクトリに移動してbundlerを実行します。

              cd verify-v2-quickstart-rails
              
              bundle install

              .env.example.envにコピーします。ここで機密データを環境変数に格納します。

              cp .env.example .env

              .envファイルから環境変数が自動的に読み込まれ、ロードされます。最後に、SQLiteデータベースを自動的に準備してくれるMigrationを実行し、開発サーバーを起動します。

              rails db:migrate
              rails server

              環境変数にTwilioの資格情報が正しく設定されていれば、アプリケーションが起動したというメッセージが表示されます。

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

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

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

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

              verification entry form

              Twilio Verifyを使った電話認証が成功しました。

              次のステップ

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

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

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

              Samuel Mendes Mica Swyers Alexis Crespo
              このページを評価:

              サポートが必要ですか?

              コーディングに関するご質問、ご不明点等ございましたら、お問い合わせからご連絡いただくか、TwilioのStack Overflow Collectiveにアクセスいただくか、Stack OverflowサイトでTwilioタグを検索してください。

                    
                    
                    

                    フィードバックいただき、ありがとうございました。

                    フィードバックいただいた理由を選択してください。その他、ご意見をいただければ、今後のドキュメントの改善に役立てさせていただきます。

                    フィードバックを送信中...
                    🎉 フィードバックいただき、ありがとうございました。
                    何らかの問題が発生しました。もう一度試してください。

                    フィードバックいただき、ありがとうございました。

                    Twilioを紹介して$10ゲットしてください。次の3ステップです。

                    ステップ1

                    リンクの取得

                    無料の個人用紹介リンクをこちらから取得してください

                    ステップ2

                    $10受け取るには

                    あなたの顧客がサインアップし、リンクからアップグレードすると、プレゼントします

                    ステップ3

                    $10ゲット

                    1,250通の無料SMS
                    または、1,000分の無料音声通話
                    または、12,000チャット
                    そのほか