> ## 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 は、Node.js で記述された安全なテナント固有の[バージョン管理された](/ja/docs/customize/actions/manage-versions)関数で、Auth0 プラットフォーム内の特定のポイントで実行されます。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 パートナーを利用して、License や Passport などの認証情報を検証する Action をログイントリガーに追加できます。

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

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

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

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

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

  <Accordion title="Machine to Machine: ユーザーではなくアプリケーションが認証・認可されて API を使用するとき。">
    | トリガー                   | 説明                       |
    | ---------------------- | ------------------------ |
    | `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="/ja/docs/glossary?term=Auth0+Dashboard">Auth0 Dashboard</Tooltip> で Action を編集すると、各トリガーで実行可能な内容に関する豊富な型情報とインラインドキュメントを参照できるため、各 トリガー で利用できる機能を簡単に把握できます。
* Action は、現在本番トラフィックを処理しているバージョンに影響を与えることなく、編集およびテストできます。
* Action 内で問題が見つかった場合は、以前のバージョンにロールバックできます。

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

* [Actions Modules](/ja/docs/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 Logs](/ja/docs/deploy-monitor/logs) に関連付けます。
* デバッグには、[Actions Real-time Logs](/ja/docs/customize/actions/actions-real-time-logs) 機能を使用します。

<div id="multiple-actions-on-every-trigger">
  ### 各トリガーで複数の Actions を使用可能
</div>

* すべての Action トリガーで、複数の独立した Actions をサポートします。

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

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

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

* [最初の Action を作成する](/ja/docs/customize/actions/write-your-first-action)
* [トリガーを確認する](/ja/docs/customize/actions/explore-triggers)
* [Actions の制限事項](/ja/docs/customize/actions/limitations)
* [バージョンを管理する](/ja/docs/customize/actions/manage-versions)
* [Actions Beta から Final への移行](/ja/docs/customize/actions/migrate/migrate-from-actions-beta-to-final)
