Twilio Verifyでカスタム電話プロバイダーを構成する
カスタム電話プロバイダーの構成にはTwilio Verifyを使用して、不正行為を防ぎ、ユーザー アカウントの保護に役立てることができます。これにはTwilio Verifyをカスタム電話プロバイダーとしてセットアップします。
前提条件
Twilioが必要です。
Twilio Verifyサービスをセットアップする
Twilio VerifyサービスはTwilio ConsoleまたはVerify REST API通して作成できます。Auth0のカスタム電話プロバイダーをTwilio Verifyと接続するには以下が必要です。
TWILIO_ACCOUNT_SID
TWILIO_AUTH_TOKEN
TWILIO_VERIFY_SID
カスタム電話プロバイダーをTwilio Verifyと接続する
Auth0 Dashboardで[Branding(ブランディング)]>[Phone Provider(電話プロバイダー)]に移動して、[Phone Message Provider(電話メッセージプロバイダー)]ページを開きます。
[Phone Provider(電話プロバイダー)]に[Custom(カスタム)]を選択します。
[Provider Configuration(プロバイダー構成)]の下に次のサンプルコードを追加して、Twilio APIがユーザーの電話番号にメッセージを送信できるようにします。
/**
* 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,
code
})
};
Was this helpful?
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(テストメッセージの送信)]をクリックします。