Auth0 Dashboard を使用してメールプロバイダー Action を設定する
- Auth0 Dashboard > Branding > Email Provider に移動します。
- Use my own email provider トグルを有効にします。
- Email Provider セクションで、Custom Provider を選択します。
- From フィールドに、メールの送信元として使用するデフォルトのメールアドレスを入力します。
- コードエディターで、メールプロバイダー経由でメッセージを送信するための Action コードを記述します。API または SMTP 接続の詳細については、利用するプロバイダーのドキュメントを参照してください。 コードエディターの左側のメニューでは、キーアイコンをクリックして secrets (たとえば API 認証に使用するもの) を追加し、ボックスアイコンをクリックして dependencies を追加できます。
- Action の記述が完了したら、Save をクリックしてデプロイします。
Terraform を使用してメールプロバイダー Action を設定する
1. 競合するActionのバインドを解除または削除する
custom-email-provider トリガーにバインドできる Action は最大 1 つです。
テナントですでにカスタムメールプロバイダーActionが設定されている場合は、Terraform で新しいメールプロバイダーActionを作成する前にリセットしてください。
- Auth0 Dashboard > Branding > Email Provider に移動します。
- Email Provider セクションで、Custom Provider をクリックします。
- Actions Code Editor の下にある Reset をクリックします。
custom-email-provider トリガーにバインドされた、デプロイ済みの別の Action があるかどうかは、Management API を使用して確認できます。
- 重複する Action を特定するには、Actions の一覧を取得します。
- それらのトリガーバインディングを更新する か、Action を削除します。
2. 新しいメールプロバイダー Action を作成する
auth0_action リソースを使用して、custom-email-provider トリガーに対応する Action を作成します。deploy = true を設定すると、Action の新しいバージョンがすぐに作成されます。
3. Action をメールプロバイダーのトリガーに紐付ける
auth0_trigger_action リソース を使用して、Action を custom-email-provider トリガーに紐付けます。
4. Action を使ってテナントのメールプロバイダーを設定する
auth0_email_provider リソースを使用して、テナントでメールプロバイダー Action を使うように設定します。
custom-email-provider トリガーに、すでにデプロイ済みの Action がバインドされている可能性があります。この問題を切り分けて解決するには、この記事の最初の手順に従って、競合する Actions のバインドを解除するか削除してください。
メールプロバイダー Action の例
custom-email-provider トリガー用の Action の例です。
このコードサンプルでは、関数 onExecuteCustomEmailProvider は custom-email-provider イベントオブジェクト から 2 つの引数を受け取ります。event にはユーザーや通知のコンテキストに関する情報が含まれ、custom-email-provider api オブジェクト の api では、通知の送信時にカスタム動作を実装するためのヘルパーメソッドが提供されます。