はじめに
Quickstartを使ってAction Moduleを作成し、Actionからそれを利用してログを外部サービスに送信します。Action モジュールを作成
特定のActionからAction Moduleを使用するには、まずAction Moduleを作成し、その後Actionに追加して使用する必要があります。
- Auth0 Dashboard
- Management API
- Auth0 CLI
- Terraform
- Auth0 Deploy CLI
- Auth0 Dashboard > Actions > Library に移動し、Modules を選択します。
- Create Module を選択します。
- Name を入力します。
- Create を選択します。

Secretを追加
各 Action Module には、シークレットのキーと値のペアを含めることができます。これらを使って、API キーや証明書、環境ごとに変わる可能性のある値などの機密情報を保持します。追加の手順: 同じ手順で
- Dashboard
- Management API
- Auth0 CLI
- Terraform
- Auth0 導入 CLI
次に、外部サービスの URL を Secret として保存します。
Secret が Action Module の Secret 一覧に追加されます。
- コードエディターの左側のサイドバーにある アイコンを選択します。
- Add Secret を選択します。
- Name に
SERVICE_URLと入力します。 - Value フィールドに外部サービスの URL を入力します。
- Create を選択します。

API_KEY も Secret として保存します。これは、各リクエストで外部サービスに送信するヘッダーに含めるためのものです。Secret は一度作成すると、その値が Auth0 から再表示されることはありません。Auth0 はすべての Secrets を暗号化して安全に保存します。
各 Action Module Secret は、ほかの Actions Modules や Actions Secrets とは独立しています。
Action Module で Secrets を使用するには、
actions.secrets.[secret_key] と入力します。カスタムロジックを追加
次に、Action Module に以下のコードを追加します。
- Auth0 Dashboard
- Management API
- Auth0 CLI
- Terraform
- Auth0 Deploy CLI
Action Module に以下のコードを追加します。
以下の点に注意してください。
下書きを保存
Action Module のドラフトを保存できます。
これにより、新しいバージョンを公開せずに Action Module が保存されるため、それを使用している Actions には影響しません。
- Auth0 Dashboard
- Management API
- Auth0 CLI
- Terraform
- Auth0 Deploy CLI
- 下書きとして保存 を選択します。

Action モジュールを公開する
Action Module のコードに問題がなければ、公開します。
下書きを含む Action Module Version の一覧が表示されます。これで、Action で Action Module を使えるようになります。
- Auth0 Dashboard
- Management API
- Auth0 CLI
- Terraform
- Auth0 Deploy CLI
- 公開を選択します。
Action Module を公開すると、その時点のスナップショットが取得され、Action Module Version として記録されます。
- バージョン履歴を表示を選択します。

各 Action では、Action Module Version を明示的に参照する必要があります。これにより、予期しないエラーにつながる自動アップグレードを防げます。
Action 内に Action Module を追加する
次に、ActionにAction Moduleを追加します。
- Dashboard
- Management API
- Auth0 CLI
- Terraform
- Auth0 導入 CLI
- Auth0 Dashboard > Actions > ライブラリ に移動して、特定の Action を選択します。
- Action エディタに移動したら、左側のサイドバーにある アイコンを選択します。
- モジュールを追加を選択します。
- モジュールの名前とバージョンを選択します。
- 追加を選択します。

Action で Action Module を使う
次に、Action 内で Action Module を使ってみましょう。
- Dashboard
- Management API
- Auth0 CLI
- Terraform
- Auth0 導入 CLI
- require 文を追加します。
require 文では、actions:[module-name] の形式で Action Module を参照します。
- ログを送信したい箇所の Action 関数 に、
logger.sendLogの呼び出しを追加します。
- Action を Deploy します。

Action をトリガーにバインドすることを忘れないでください。
チェックポイントこれで、完全に動作する Action Module を Action で使用できるようになっているはずです。
応用的な使い方
NPM依存関係
NPM依存関係
各 Action Module では、NPM依存関係 を追加して利用できます。
Auth0 によって、その依存関係が Action Module の依存関係一覧に追加されます。
- Dashboard
- Management API
- Auth0 CLI
- Terraform
- Auth0 Deploy CLI
- コードエディターの左側のサイドバーで、 アイコンを選択します。
- Add Dependency を選択します。
- NPM package の Name を入力します。
- NPM package の Version を入力します。
- Create を選択します。

一覧に表示されている 依存関係 は、
require('[package-name]') で読み込むことで Action Module 内で使用できます。この Action を保存すると、Auth0 は依存関係の最新バージョンを解決し、今後のパッケージ更新によって Action が壊れないよう、特定のバージョン番号に置き換えます。latest の代わりに、特定のバージョンを指定することもできます。