> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Twilio Verifyでカスタム電話プロバイダーを構成する

> Twilio Verifyを使用してカスタム電話プロバイダーを構成する方法について説明します。

カスタム電話プロバイダーの構成には[Twilio Verify](https://www.twilio.com/docs/verify)を使用して、不正行為を防ぎ、ユーザー アカウントの保護に役立てることができます。これにはTwilio Verifyをカスタム電話プロバイダーとしてセットアップします。

## 前提条件

[Twilio](https://twilio.com/)が必要です。

## Twilio Verifyサービスをセットアップする

Twilio Verifyサービスは[Twilio Console](https://www.twilio.com/console/verify/services)または[Verify REST API](https://www.twilio.com/docs/verify/api/service#create-a-verification-service)通して作成できます。Auth0のカスタム電話プロバイダーをTwilio Verifyと接続するには以下が必要です。

* TWILIO\_ACCOUNT\_SID
* TWILIO\_AUTH\_TOKEN
* TWILIO\_VERIFY\_SID

## カスタム電話プロバイダーをTwilio Verifyと接続する

1. Auth0 Dashboardで[［Branding（ブランディング）］>［Phone Provider（電話プロバイダー）］](https://manage.auth0.com/dashboard/#/phone/templates/phone/provider)に移動して、**［Phone Message Provider（電話メッセージプロバイダー）］** ページを開きます。
2. **［Phone Provider（電話プロバイダー）］** に **［Custom（カスタム）］** を選択します。
3. **［Provider Configuration（プロバイダー構成）］** の下に次のサンプルコードを追加して、Twilio APIがユーザーの電話番号にメッセージを送信できるようにします。

```javascript lines theme={null}
/**
* Handler to be executed while sending a phone notification
* @param {Event} event - Details about the user and the context in which they are logging in.
* @param {CustomPhoneProviderAPI} api - Methods and utilities to help change the behavior of sending a phone notification.
*/
exports.onExecuteCustomPhoneProvider = async (event, api) => {
 const { TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN, TWILIO_VERIFY_SID } = event.secrets;

  const client = require('twilio')(TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN);

  // map auth0 voice value to call
  const messageType = event.notification.delivery_method === 'voice' ? 'call' : 'sms';

  const { recipient, code } = event.notification;

  // add this to fix " 1333444999  "
  // "333 444 5555"
  const sanitizedNumber = recipient.replace(/\s/g, '').trim();

  await client.verify.v2.services(TWILIO_VERIFY_SID)
    .verifications.create({
      to: sanitizedNumber,
      channel: messageType,
      customCode: code
    })

};
```

3. **［鍵］** アイコンをクリックして、**［Secrets（シークレット）］** メニューを開きます。Twilio Verifyサービス設定から以下の値を追加します。

* TWILIO\_ACCOUNT\_SID
* TWILIO\_AUTH\_TOKEN
* TWILIO\_VERIFY\_SID

4. Twilioヘルパーライブラリーを読み込むには、**［Dependency（依存関係）］** アイコンをクリックします。そして、**［Add Dependency（依存関係の追加）］** ボタンをクリックします。**［Add Dependency（依存関係の追加）］** ポップアップウィンドウが開いたら、以下を入力します。

* **［Name（名前）］：** Twilio
* **［Version（バージョン）］：** 最新（自動入力されるはずです）

**［Create（作成）］** クリックすると、Auth0がTwilioヘルパーライブラリーを探して最新バージョンを読み込みます。

5. **［Save（保存）］** をクリックします。**［Save（保存）］** をクリックすると、アクションが自動的に保存されてデプロイされます。運用環境で使い始める前に、カスタム電話プロバイダーをテストするには、**［Send Test Message（テストメッセージの送信）］** をクリックします。
