> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Auth0 Actions の仕組みと、Actions で実現できることを説明します。

# Auth0 Actions の仕組みを理解する

Actions は、Auth0 プラットフォーム内の特定のタイミングで実行される、Node.js で記述された安全なテナント固有の[バージョン管理された](/docs/ja-jp/customize/actions/manage-versions)関数です。Actions を使うと、カスタムロジックによって Auth0 の機能をカスタマイズおよび拡張できます。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Auth0 Actions では、Actions の非同期関数の基盤となる、モダン JavaScript の[Promise ベースのプログラミングモデル](https://developer.mozilla.org/en-US/docs/Learn_web_development/Extensions/Async_JS/Promises)を採用しています。
</Callout>

このように拡張できるプロセスは、トリガーと呼ばれます。トリガーのグループは、Auth0 の処理フローにおける特定の時点で情報が移動する論理的なパイプラインを表します。1 つのトリガーには複数の Actions を追加でき、各 Action は追加された順序で実行されます。トリガーには、関連するフローをブロックする同期実行のものと、以下の表に示すように非同期実行のものがあります。

Actions は、Auth0 の拡張性機能を支える中核的な要素です。Actions を使うと、ニーズに応じてログインフローや ID フローに重要なカスタムロジックを追加できます。また、拡張性をさらに高める外部連携を組み込むことも可能です。たとえば、本人確認を専門とする Marketplace Partner を利用して、ライセンスやパスポートなどの認証情報を検証する Action をログイントリガーに追加できます。

<div id="what-can-you-do-with-actions">
  ## Actions でできること
</div>

Action で何ができるかは、Auth0 のランタイム環境内のどこで実行されるかによって決まります。

<AccordionGroup>
  <Accordion title="サインアップとログイン: ユーザーがデータベースまたはパスワードレス コネクションに追加されたとき。">
    | Trigger                  | Description                                     |
    | ------------------------ | ----------------------------------------------- |
    | `pre-user-registration`  | ユーザーが作成される前にトリガーされます。ソーシャル コネクションでは実行されません。     |
    | `post-user-registration` | ユーザーが作成された後に非同期でトリガーされます。ソーシャル コネクションでは実行されません。 |
    | `post-login`             | ユーザーの認証後、トークンが発行される前にトリガーされます。                  |
  </Accordion>

  <Accordion title="MFA 通知: 多要素認証 (MFA) の要素として SMS を使用する場合、またはカスタムプロバイダーを設定する場合。">
    | Trigger              | Description                                                                  |
    | -------------------- | ---------------------------------------------------------------------------- |
    | `send-phone-message` | 登録プロセスおよびチャレンジプロセスのメッセージ送信にカスタムプロバイダーを使用する場合にトリガーされます。ソーシャル コネクションでは実行されません。 |
  </Accordion>

  <Accordion title="パスワードリセット: パスワードリセットのリクエストが開始されたとき。">
    | Trigger                         | Description                                  |
    | ------------------------------- | -------------------------------------------- |
    | `post-change-password`          | パスワードが変更された後にトリガーされます。ソーシャル コネクションでは実行されません。 |
    | `password-reset-post-challenge` | 最初のチャレンジが完了した後、パスワードがリセットされる前にトリガーされます。      |
  </Accordion>

  <Accordion title="Machine to Machine: ユーザーではなくアプリケーションが認証および認可され、API を使用するとき。">
    | Trigger                | Description              |
    | ---------------------- | ------------------------ |
    | `credentials-exchange` | アクセストークンが返される前にトリガーされます。 |
  </Accordion>
</AccordionGroup>

<div id="key-benefits-of-actions">
  ## Actionsの主なメリット
</div>

<div id="improved-developer-experience">
  ### 開発者体験の向上
</div>

* <Tooltip tip="Auth0 Dashboard: サービスを設定するための Auth0 の主要な製品。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Auth0+Dashboard">Auth0 Dashboard</Tooltip> 内で Action を編集する際は、各トリガーで何ができるかを示す豊富な型情報とインラインドキュメントを利用できるため、それぞれの トリガー がサポートする機能を簡単に把握できます。
* Action は、現在本番トラフィックを処理しているバージョンに影響を与えることなく、編集やテストを行えます。
* Action で問題が見つかった場合は、以前のバージョンにロールバックできます。

<div id="reuse-custom-functions">
  ### カスタム関数を再利用する
</div>

* [Actions Modules](/docs/ja-jp/customize/actions/modules/actions-modules-overview) を使用して、Actions 間で関数を作成、管理、共有できます。

<div id="access-to-npm-packages">
  ### npm パッケージへのアクセス
</div>

* Actions 内で、ほぼすべての[公開 `npm` パッケージ](https://www.npmjs.com/)を使用できます。

<div id="observability">
  ### 可観測性
</div>

* Auth0 が Actions を実行すると、それらに関する主要なメトリクスが収集され、[Auth0 ログ](/docs/ja-jp/deploy-monitor/logs) に関連付けられます。
* デバッグ時には、[Actions Real-time Logs](/docs/ja-jp/customize/actions/actions-real-time-logs) 機能を使用します。

<div id="multiple-actions-on-every-trigger">
  ### 各トリガーで複数のAction
</div>

* 各Actionトリガーでは、複数の独立したActionを利用できます。

<div id="get-started">
  ## はじめに
</div>

* [最初の Action を作成する](/docs/ja-jp/customize/actions/write-your-first-action)。
* 最新の [Action コーディングガイドライン](/docs/ja-jp/customize/actions/action-coding-guidelines) を確認します。
* 最新の [Actions の制限事項](/docs/ja-jp/customize/actions/limitations) を確認します。

<div id="learn-more">
  ## 詳細はこちら
</div>

* [最初のActionを作成する](/docs/ja-jp/customize/actions/write-your-first-action)
* [トリガーについて詳しく知る](/docs/ja-jp/customize/actions/explore-triggers)
* [Actionsの制限事項](/docs/ja-jp/customize/actions/limitations)
* [バージョンを管理する](/docs/ja-jp/customize/actions/manage-versions)
* [Actions Betaから正式版へ移行する](/docs/ja-jp/customize/actions/migrate/migrate-from-actions-beta-to-final)
