> ## 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 および Auth0 Modules に適用される制約を確認し、適用される制限内に収まるカスタムコードを設計できます。

# Actions の制限事項

Actions の使用には、以下の制限事項があります。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Entity Limits の詳細については、[Actions Entity Limits](/docs/ja-jp/troubleshoot/customer-support/operational-policies/entity-limit-policy#actions) を参照してください。
</Callout>

<div id="actions">
  ## Actions
</div>

* 各 Action のサイズは 100 kB を超えないようにしてください。サイズが大きいほど遅延が増え、システムのパフォーマンスに影響する可能性があります。このサイズ制限には、`require` 文の一部として参照される `npm` モジュールは含まれません。

<div id="actions-modules">
  ## Actions Modules
</div>

* 各 Action Module は NPM Modules には依存できますが、他の Actions Modules には依存できません。
* **Actions Modules には独自のランタイムがありません。** これらは、それを含む Action のランタイムで実行されます。

<Warning>
  **Action Module をビルドすると、Auth0 は builder ランタイムでビルドします。ただし、モジュールの実行時には、それをインポートした Action のランタイムが使用されます。**

  *例:*

  *Action Module が Node.js 22 で非推奨となった Node.js API 呼び出しを使用している場合、Node.js 18 ランタイムを使用する Actions は正常に動作しますが、Node.js 22 ランタイムを使用する Actions は失敗します。*
</Warning>

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Actions Modules は、サポート予定のすべてのランタイムバージョンと互換性のある Node.js API を使用して作成してください。
</Callout>

<div id="account-linking-setprimaryuser">
  ## アカウントのリンク (setPrimaryUser)
</div>

* `primary_user_id` は128文字までに制限されます
* `setPrimaryUser` は1つのトランザクションにつき1回だけ呼び出せます
* `setPrimaryUser` と同じ Action で設定された userMetadata は破棄され、失われます。同じトランザクション内の後続の Action では、新しいプライマリユーザーの userMetadata は保持されます。
* Rule が `context.primaryUser.` を設定するトランザクション内では、`setPrimaryUser` は使用できません

<div id="cached-data">
  ## キャッシュデータ
</div>

* キャッシュされた項目は最大24時間保持されます。
* トリガー ごとにキャッシュできるエントリは最大20件です。
* キャッシュキーの最大サイズは64バイト、値の最大サイズは4kBです。
* キャッシュされたキーと値の合計サイズは8kBを超えてはいけません。
* キャッシュは、単一の実行中であれば同じ トリガー 内のすべての Action から確実に利用できるはずですが、その後の実行 (別のフロー、別のユーザーログイン、またはユーザーがリダイレクトアクションから戻る場合など) では保証されません。
* 実行を中断して制御を戻す Action (リダイレクトなど) では、その後の Action が異なるキャッシュ状態を持つ別のインスタンスで実行されることがあります。同じ実行であっても、ある Action から次の Action にかけてキャッシュデータの整合性が保たれない可能性があります。

<div id="executions">
  ## 実行
</div>

* トリガーは、実行のたびに20秒以内に完了する必要があります。これを超えると、処理はエラーで終了します。この制限時間内に収めるには、HTTPリクエストをできるだけ抑えるのが最善です。
* トリガーは、実行のたびに20秒以内に完了する必要があります。これを超えると、処理はエラーで終了します。この制限時間内に収めるには、タイムアウトのない送信HTTPリクエストのような長時間実行される処理を制限する必要があります。[ユーザーを外部ページにリダイレクトする](/docs/ja-jp/customize/actions/explore-triggers/signup-and-login-triggers/login-trigger/redirect-with-actions) Action には、リダイレクト前と後にそれぞれ別のタイムアウトが設定されています。
* Action トリガーが中断され、その後再開されるたびに、新しい `event.request` オブジェクトが生成されます (たとえば、リダイレクトや<Tooltip tip="Management API: お客様が管理タスクを実行できるようにする製品。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=MFA">MFA</Tooltip>チャレンジによる場合) 。

<div id="logs">
  ## ログ
</div>

* 各 Action では、`console.log()` の出力を最大 256 文字まで永続的に保存できます。
* 実行ログは 10 日間保持されます。

<div id="programming-languages">
  ## プログラミング言語
</div>

* ActionsではTypeScriptはサポートされていません。ソースファイルは、デプロイ前にJavaScriptで記述しておく必要があります。

<div id="secrets">
  ## シークレット
</div>

* 各シークレットキーは最大128文字です。
* 各シークレット値は最大4096文字です。

<div id="saml-attributes">
  ## SAML 属性
</div>

* Actions を使用して、最大 100 個の <Tooltip tip="多要素認証（MFA）: SMS で送信されるコードなど、ユーザー名とパスワードに加えて別の要素を使用するユーザー認証プロセス。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=SAML">SAML</Tooltip> 属性を変更または追加できます。
* SAML 属性名の最大サイズは 1kB です。
* SAML 値の最大サイズは 2kB です。
* SAML アサーション全体の最大サイズは 10kB です。

<div id="saml-configuration">
  ## SAML 設定
</div>

* `audience` の最大サイズは 2kB です
* `recipient` の最大サイズは 2kB です
* `destination` の最大サイズは 2kB です
* `nameIdentifierFormat` の最大サイズは 0.5kB です
* `nameIdentifierProbes` は最大 10 個まで指定でき、各プローブの最大サイズは 0.5kB です
* `authnContextClassRef` の最大サイズは 0.5kB です
* `signingCert` の最大サイズは 4kB です
* `encryptionCert` の最大サイズは 4kB です
* `encryptionPublicKey` の最大サイズは 4kB です
* `cert` の最大サイズは 4kB です
* `key` の最大サイズは 4kB です

<div id="service-requests">
  ## サービスリクエスト
</div>

* Auth0の<Tooltip tip="Security Assertion Markup Language (SAML): パスワードなしで2者が認証情報を交換できる標準化されたプロトコル。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Management+API">Management API</Tooltip>への呼び出しとユーザーメタデータの更新には、[レート制限](/docs/ja-jp/troubleshoot/customer-support/operational-policies/rate-limit-policy/management-api-endpoint-rate-limits)が適用されます。
* 外部サービスへのHTTP呼び出しは、[これらのIPアドレス](/docs/ja-jp/secure/security-guidance/data-security/allowlist)から送信されます。

<div id="transaction-metadata">
  ## トランザクションメタデータ
</div>

* [post-login Actions](/docs/ja-jp/customize/actions/explore-triggers/signup-and-login-triggers/login-trigger) でのみ使用できます。
* 認証トリガーの完了後は保持されません。
* 同じトランザクション内でも、Actions の外部からはアクセスできません。
* キーは 64 文字までです。
* 値は 8 KB までです。
* 値としてサポートされる型は `string`、`number`、`boolean` のみです。
* 同じトランザクション内で使用できるメタデータの合計サイズは最大 16 KB です。
* 安全性チェックに合格しない数値は、有効な値として受け付けられません。安全でない整数値は、開発者が安全にシリアライズする必要があります。詳しくは、[safe integers](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isSafeInteger) を参照してください。

<div id="upstream-tokens-from-external-idps">
  ## 外部IdPのアップストリームトークン
</div>

* Identities配列から外部<Tooltip tip="Identity Provider（IdP）：デジタルアイデンティティを保存および管理するサービス。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=IdP">IdP</Tooltip>のトークンを取得する

<div id="user-metadata-and-app-metadata">
  ## ユーザーメタデータとアプリメタデータ
</div>

* 各セッションで、ユーザーメタデータとアプリメタデータはそれぞれ最大32kBまで永続化できます。

<div id="learn-more">
  ## 詳しく見る
</div>

* [Auth0 Actions の仕組みを理解する](/docs/ja-jp/customize/actions/actions-overview)
