メインコンテンツへスキップ
Terraform Auth0 Provider を使用して、カスタム電話プロバイダーを設定できます。Terraform Auth0 Provider は、Auth0 テナントを設定するために Auth0 Management API と連携する際に使用します。詳細については、Terraform の Auth0 Provider のドキュメントを参照してください。
  • Terraform を使用してカスタム電話プロバイダーを設定する場合は、既存の Auth0 テナントのカスタム電話番号プロバイダーを削除してください。
  • Auth0 では、次のトリガーに関連付けられた Actions について、作成できる Action は 1 つまでです: custom-phone-provider および custom-email-provider。
以下の手順では、Terraform を使用してカスタム電話プロバイダーを設定する方法を説明します。
  1. auth0_action を作成します:
resource "auth0_action" "custom_phone_provider" {
  name    = "Custom Phone Provider"
  runtime = "node22"
  deploy  = true
  code    = <<-EOT
    /**
    * 電話通知の送信時に実行されるハンドラー
    * @param {Event} event - ユーザーの詳細およびログイン時のコンテキスト情報。
    * @param {CustomPhoneProviderAPI} api - 電話通知の送信動作を変更するためのメソッドとユーティリティ。
    */
    exports.onExecuteCustomPhoneProvider = async (event, api) => {
      // ここにコードを記述
      return;
    };
  EOT
  supported_triggers {
    id      = "custom-phone-provider"
    version = "v1"
  }
}
Terraform で auth0_actionauth0_trigger_action にバインドするには、auth0_action で deploy = true を設定します。詳細については、Terraform の auth0_action のドキュメントを参照してください。
  1. auth0_action を custom-phone-provider の auth0_trigger_action にバインドします。
resource "auth0_trigger_action" "custom_phone_provider" {
  trigger = "custom-phone-provider"
  actions {
    id           = auth0_action.custom_phone_provider.id
    display_name = auth0_action.custom_phone_provider.name
  }
  depends_on = [
    auth0_action.custom_phone_provider
  ]
}
  1. auth0_phone_provider リソースで auth0_action を使用するように設定します。
resource "auth0_phone_provider" "custom_phone_provider" {
  depends_on = [auth0_trigger_actions.custom_phone_provider] # `custom-phone-provider` を supported_triggers として、アクションが先に作成されていることを確認する
  name       = "custom"                         # カスタム実装を示す
  disabled   = false                            # デフォルトの電話プロバイダーを無効にする
  configuration {
    delivery_methods = ["text", "voice"]
  }
  credentials {}
},
詳細については、Terraform の auth0_phone_provider のドキュメントを参照してください。

トラブルシューティング

シナリオ: Terraform で設定したカスタム電話プロバイダーが反映されず、 に別の Action が表示される。 deploy: true が設定されたカスタムプロバイダー Actions が複数存在する可能性があります。Auth0 では、custom-phone-provider および custom-email-provider トリガーに関連付けられた Actions は、それぞれ最大 1 つまでに制限されています。
  • この状況が発生した場合は、削除すべき重複を特定するために、Actions を一覧表示することをお勧めします。
  • 複数の方法 (Terraform、Auth0 Dashboard、、および/または Auth0 SDK) でカスタムプロバイダーを管理した後にこの状況が発生した場合は、カスタムプロバイダーの設定をリセットすることをお勧めします。カスタムプロバイダーの管理に複数の方法を併用することは避けてください。
カスタム電話プロバイダーをリセットするには、Auth0 Dashboard > Branding > Phone Provider に移動します。次に、Provider Configuration の下にある Reset ボタンを選択して、カスタムプロバイダーをデフォルト設定に戻します。