Skip to main content
特定のケース (以下で説明) では、Auth0 が OIDC のサードパーティ開始ログインを使用して、アプリケーションの Login Initiation エンドポイントにリダイレクトし直す必要が生じる場合があります。詳しくは、OpenID FoundationInitiating Login from a Third Party をご覧ください。 これらの URI は、Auth0 Dashboard の Application Settings または Tenant Advanced Settings、あるいは を使用して設定できます。

login_url は、最終的に Auth0 の /authorize エンドポイントにリダイレクトするアプリケーション内のルートを指す必要があります。たとえば https://mycompany.org/login です。なお、https が必須であり、localhost を指定することはできません。login_url にはクエリパラメータと URI フラグメントを含めることができます。 OIDC Third Party Initiated Login 仕様に従い、Issuer Identifier を含む iss パラメーターは、リダイレクト前に login_url にクエリ文字列パラメーターとして追加されます。

メタデータプレースホルダーを含む動的なログイン URI

複数のカスタムドメイン または Organizations を使用している場合は、アプリケーションレベルの initiate_login_uri にメタデータプレースホルダーを含めるよう設定できます。これらのメタデータプレースホルダーは、実行時に動的に解決されます。

サポートされているプレースホルダー

メタデータキーは public_ で始まる必要があります (例: public_app_host) 。リクエストにカスタムドメインと組織コンテキストの両方が含まれる場合は、同じ URI 内で両方の種類のプレースホルダーを組み合わせて使用できます。 検証ルールと制限事項の一覧については、カスタムドメイン URL プレースホルダーを参照してください。
メタデータプレースホルダーは、テナントレベルの default_redirection_uri ではなく、アプリケーションレベルの initiate_login_uri でのみサポートされています。

フォールバック時の動作

プレースホルダーを解決できない場合、Auth0 はテナントレベルの default_redirection_uri にフォールバックします。たとえば、組織が不明な場合や、メタデータのキーが存在しない場合です。default_redirection_uri も設定されていない場合、Auth0 はエラーページをレンダリングします。確実なフォールバック先として、テナントレベルの default_redirection_uri を設定することをお勧めします。

デフォルトのログインルートにリダイレクトされるケース

ユーザーがログインページをブックマークする

アプリケーションがログインプロセスを開始すると、必要なパラメーターを付けて https://{yourDomain}/authorize に遷移します。続いて Auth0 は、次のような URL の https://{yourDomain}/login ページへエンドユーザーをリダイレクトします。 https://{yourDomain}/login?state=g6Fo2SBjNTRyanlVa3ZqeHN4d1htTnh&... state パラメーターは、認可トランザクションの status を追跡する内部データベース内の record を指します。トランザクションが完了したとき、または一定時間が経過した後、その record は内部データベースから削除されます。 Organizations を使用していて、エンドユーザーが organization のログイン prompt をブックマークした場合、Auth0 はユーザーをデフォルトのログインルートにリダイレクトする際に organization パラメーターも含めます。 ユーザーがログインページをブックマークしている場合、ブックマークした /login URL にアクセスした時点ではトランザクションの record がすでに存在せず、Auth0 がログインフローを続行できないことがあります。その場合、Auth0 は、設定されていればデフォルトのクライアント URL に、設定されていなければ tenant レベルの URL にリダイレクトします。デフォルトのログイン URL が設定されていない場合、Auth0 はエラーページをレンダリングします。

パスワードリセットフローの完了

パスワードリセットフローの完了後、アプリケーションまたはテナントのデフォルトURIが設定されている場合、ユーザーにはログインページに戻るためのボタンが表示されます。 この動作が発生するのは、 エクスペリエンスを有効にしている場合のみです。クラシックログインでは、Change Password テンプレートでリダイレクトURLを設定する必要があります。詳しくは、メールテンプレートをカスタマイズするを参照してください。 Universal Login を使用しているテナントでは、/post-password-changeエンドポイントで、ユーザーを特定のアプリケーションにリダイレクトして戻すことができます。client_id が指定され、アプリケーションのログインURIが設定されている場合、ユーザーにはパスワードリセットの完了後にアプリケーションへ戻るためのボタンが表示されます。

メールアドレス確認フロー全体

サインアップ プロセスの一環として、識別子にメールアドレスを選択したユーザーには、メールアドレスを確認するためのメールが送信されます。ユーザーがそのリンクをクリックすると、メールアドレスの確認が完了したことを示すページが表示され、アプリケーションに戻るためのボタンが表示されます。そのボタンをクリックすると、ユーザーはログインページにリダイレクトされ、すでに有効なセッションがある場合は、そのままアプリケーションにリダイレクトされます。 この動作は、Universal Login エクスペリエンスが有効な場合にのみ発生します。クラシックログインを使用している場合は、確認メールテンプレートでリダイレクト URL を設定する必要があります。

組織メンバーを招待する

ユーザーが組織への参加に招待されると、招待リンクがメールで送信されます。ユーザーがそのリンクを選択すると、招待固有のパラメーターが追加された、設定済みのデフォルトのログインルートにリダイレクトされます。 たとえば、Application Login URIhttps://myapp.com/login に設定された組織対応のアプリケーションがある場合、エンドユーザーがメールの招待で受け取るリンクは https://myapp.com/login?invitation={invitation_ticket_id}&organization={organization_id}&organization_name={organization_name} になります。 したがって、アプリケーション内のそのルートは、クエリ文字列を通じて invitationorganization の両方のパラメーターを受け取れる必要があります。招待受諾トランザクションを開始するには、それら2つのパラメーターをエンドユーザーとともに Auth0 の /authorize エンドポイントに転送する必要があります。
ユーザーがブラウザーで Cookie を無効にした状態で https://{yourDomain}/authorize にアクセスすると、Auth0 はユーザーを Application Login URI にリダイレクトします。Application Login URI が設定されていない場合は、代わりにテナントの login URI にリダイレクトされます。 ユーザーをログインページに戻すと、リダイレクトループが発生する可能性があります。この問題を回避するには、ランディングページを使用して Cookie が利用可能かどうかを確認し、無効になっている場合は、続行するには有効にする必要があることをユーザーに知らせてください。

詳細はこちら