> ## 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ログインページでは、Ruleからのエラーメッセージを表示できません。代わりに取るべき方法を説明します。

# ルールからエラーを発生させる

<Warning>
  ルールとHooksの提供終了 (EOL) 日は**2026年11月18日**です。これらは、**2023年10月16日**以降に作成された新規テナントではすでに利用できません。アクティブなHooksを使用している既存のテナントでは、提供終了までHooks製品を引き続き利用できます。

  Auth0を拡張するには、Actionsの利用を強くおすすめします。Actionsでは、豊富な型情報、インラインドキュメント、公開 `npm` パッケージを利用できるほか、外部連携に接続して拡張性に関する全体的な開発体験を向上させることもできます。Actionsでできることの詳細については、[Understand How Auth0 Actions Work](/docs/ja-jp/customize/actions/actions-overview)をご覧ください。

  移行を支援するために、[ルールからActionsへの移行](/docs/ja-jp/customize/actions/migrate/migrate-from-rules-to-actions)および[HooksからActionsへの移行](/docs/ja-jp/customize/actions/migrate/migrate-from-hooks-to-actions)のガイドを用意しています。さらに、機能比較、[Actionsのデモ](https://www.youtube.com/watch?v=UesFSY1klrI)、そのほか移行に役立つリソースを紹介した専用の[Move to Actions](https://auth0.com/extensibility/movetoactions)ページもあります。

  ルールとHooksの非推奨化について詳しくは、ブログ記事をご覧ください: [Preparing for Rules and Hooks End of Life](https://auth0.com/blog/preparing-for-rules-and-hooks-end-of-life/)。
</Warning>

Auth0ログインページでは、Ruleからのエラーメッセージを表示できません。Ruleで発生させたカスタムメッセージをユーザーに表示したい場合は、アプリケーション側でそのメッセージを表示する必要があります。

Ruleによって発生したエラーは、プロトコルの標準レスポンスモードでコールバックURLに送られます。たとえば、アプリケーションが OIDC/OAuth2 を使って認証をリクエストした場合、`error` と `error_description` という結果値を含む標準的な OAuth2 エラーを受け取ります。

コールバックURLが [https://travel0.com/callback](https://travel0.com/callback) で、標準の query レスポンスモードを使用しているとします。この場合、次のレスポンスを受け取ります。

```http wrap lines theme={null}
https://travel0.com/callback?error=access_denied&error_description=[The message you wrote in the rule]
```

このメッセージをユーザーに表示するのは、たとえば次のようにアプリ側の役割です。

<Frame>
  <img src="https://mintcdn.com/translations/c0RQ9V0YAcT0-8l5/docs/images/cdy7uua7fh8z/7wBM0h29mAwFFbmeOVwVnR/e0ec360ad403d6cdf2f2ac701c621216/rules-login-error-from-rules.png?fit=max&auto=format&n=c0RQ9V0YAcT0-8l5&q=85&s=300688772e8f02b511bcee18cefd2010" alt="表示されるエラーメッセージの例 " width="400" height="171" data-path="docs/images/cdy7uua7fh8z/7wBM0h29mAwFFbmeOVwVnR/e0ec360ad403d6cdf2f2ac701c621216/rules-login-error-from-rules.png" />
</Frame>

<div id="retry-login-after-a-rule-error">
  ## Rule エラー後にログインを再試行する
</div>

次に考えられる対応としては、新たに認可をリクエストすることです。しかし、多くの場合、Auth0 はすでにユーザーを特定しているため、ログイン情報の入力を求めません。代わりに Rule がすぐに実行され、再び認可が拒否されます。すると、これが無限ループになることがあります。

ユーザーには、新しい認証情報を入力する機会が必要です。アプリからログインページを再表示する方法は 2 つあります。

* リクエストに指定を追加して、ログインページを強制的に表示します。

  * OIDC/OAuth2 リクエストで `prompt=login` パラメーターを使用します。
  * SAML リクエストで `ForceAuthn="true"` 属性を使用します。

—or—

* 新しいリクエストを送信する前に、ユーザーを Auth0 からログアウトさせます。

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

* [Auth0 ルール](/docs/ja-jp/customize/rules)
* [ユーザーをアプリケーションからログアウトさせる](/docs/ja-jp/authenticate/login/logout/log-users-out-of-applications)
* [Rule の使用例](/docs/ja-jp/customize/rules/use-cases)
