Skip to main content

Auth0 Dashboard を使用してメールプロバイダー Action を設定する

Auth0 Dashboard を使用して、テナントにカスタムメールプロバイダー Action を設定するには、次の手順を実行します。
  1. Auth0 Dashboard > Branding > Email Provider に移動します。
  2. Use my own email provider トグルを有効にします。
  3. Email Provider セクションで、Custom Provider を選択します。
  4. From フィールドに、メールの送信元として使用するデフォルトのメールアドレスを入力します。
  5. コードエディターで、メールプロバイダー経由でメッセージを送信するための Action コードを記述します。API または SMTP 接続の詳細については、利用するプロバイダーのドキュメントを参照してください。 コードエディターの左側のメニューでは、キーアイコンをクリックして secrets (たとえば API 認証に使用するもの) を追加し、ボックスアイコンをクリックして dependencies を追加できます。
  6. Action の記述が完了したら、Save をクリックしてデプロイします。
設定をテストするには、Send Test Email をクリックします。 他の Actions と同様に、Management API を使用して Action とそのバージョンを管理できます。すべての Actions には、同じ制限事項が適用されます。

Terraform を使用してメールプロバイダー Action を設定する

Terraform Auth0 provider は、Auth0 Management API を使用して Auth0 プラットフォーム上で操作を行います。 Terraform Auth0 provider を使用してカスタムメールプロバイダー Action を作成し、それを使用するようにテナントを設定できます。

1. 競合するActionのバインドを解除または削除する

custom-email-provider トリガーにバインドできる Action は最大 1 つです。 テナントですでにカスタムメールプロバイダーActionが設定されている場合は、Terraform で新しいメールプロバイダーActionを作成する前にリセットしてください。
  1. Auth0 Dashboard > Branding > Email Provider に移動します。
  2. Email Provider セクションで、Custom Provider をクリックします。
  3. Actions Code Editor の下にある Reset をクリックします。
custom-email-provider トリガーにバインドされた、デプロイ済みの別の Action があるかどうかは、Management API を使用して確認できます。
  1. 重複する Action を特定するには、Actions の一覧を取得します
  2. それらのトリガーバインディングを更新する か、Action を削除します

2. 新しいメールプロバイダー Action を作成する

Terraform の auth0_action リソースを使用して、custom-email-provider トリガーに対応する Action を作成します。deploy = true を設定すると、Action の新しいバージョンがすぐに作成されます。
関数スタブに、メッセージをメールプロバイダーに送信するための Action コードを記述します。API や SMTP サーバーの詳細については、プロバイダーのドキュメントを参照してください。

3. Action をメールプロバイダーのトリガーに紐付ける

Terraform auth0_trigger_action リソース を使用して、Action を custom-email-provider トリガーに紐付けます。

4. Action を使ってテナントのメールプロバイダーを設定する

Terraform の auth0_email_provider リソースを使用して、テナントでメールプロバイダー Action を使うように設定します。
Terraform で新しいメールプロバイダー Action を作成しても有効にならない場合は、custom-email-provider トリガーに、すでにデプロイ済みの Action がバインドされている可能性があります。この問題を切り分けて解決するには、この記事の最初の手順に従って、競合する Actions のバインドを解除するか削除してください。

メールプロバイダー Action の例

これは、custom-email-provider トリガー用の Action の例です。 このコードサンプルでは、関数 onExecuteCustomEmailProvidercustom-email-provider イベントオブジェクト から 2 つの引数を受け取ります。event にはユーザーや通知のコンテキストに関する情報が含まれ、custom-email-provider api オブジェクトapi では、通知の送信時にカスタム動作を実装するためのヘルパーメソッドが提供されます。
Actions の詳細については、Auth0 Actions の仕組みを理解するをお読みください。