ユニバーサルログインエクスペリエンス
Auth0のユニバーサルログインには、認可サーバーの重要な機能であるログインフローが備わっています。ユーザーがアプリケーションにアクセスするために本人確認を行う必要がある場合は、ユニバーサルログインにリダイレクトし、Auth0に認証プロセスを処理してもらうことができます。
ユニバーサルログインエクスペリエンスは、使い勝手の良いカスタマイズツールを使用した効率的な実装を提供します。高度なカスタマイズについては、ページテンプレートを作成し、ログインページのコードを修正できます。また、ローカライゼーション、WebAuthn、多要素認証(MFA)、Auth0 Organizationsなどの様々な機能をサポートしています。
ユニバーサルログインの構成は動的に行われます。また、Auth0の集中型認証サーバーでホストされたWebページがログインフローを完全に駆動するため、アプリケーションレベルでの変更は不要です。さらに、アプリケーションのコードを手動で更新しなくても、Auth0がユニバーサルログインに対して行う改善のメリットが得られます。
ユニバーサルログインの特徴および機能
以下のセクションにて、ユニバーサルログインエクスペリエンスについて詳しく説明します。ユニバーサルログインとクラシックログインの機能比較については、「ユニバーサルログインとクラシックログイン」をお読みください。
Customization(カスタマイズ)
ページテンプレートで、ログインフロー内のすべてのページにLiquidテンプレートを指定できます。
カラー、フォント、カスタムロゴURLなどのページブランディングを、Auth0 Dashboardの非コードエディターや、Management APIブランディングエンドポイントを使用してカスタマイズできます。
ファビコンURLは、Auth0 Management APIのブランディングエンドポイントを使用して構成できます。
ページテキストはAuth0 DashboardまたはManagement APIを使って構成できます。詳細については、「ユニバーサルログインのテキスト要素のカスタマイズ」を参照してください。
Auth0 Management APIを使用してサインアップとログインのプロンプトをカスタマイズできます。詳細については、「サインアップとログインプロンプトのカスタマイズ」を参照してください。
ログイン
デバイス生体認証を使ったWebAuthnでパスワードレスを使用できます。
ソーシャルプロバイダー用の開発キーを使用する場合:
シングルサインオン(SSO)およびサイレント認証は正しく機能します。クラシックログインエクスペリエンスではサポートされていません。
ユーザーのログインページには、テナントが開発キーを使って構成されていることを示す警告が表示されます。
各ソーシャル接続およびエンタープライズ接続ごとにボタンが表示されます。
ユーザーを
/login
ページに直接リダイレクトする場合は、デフォルトのログインルートが構成されていない限り、ユーザーはエラーを受け取ります。詳細については、「デフォルトのログインルートを構成する」をお読みください。ユーザーを常に適切な認可要求エンドポイントにリダイレクトしなければなりません(たとえば、OpenID Connectを使用している場合は/authorize
)。Auth0にリダイレクトするときに
login_hint
を指定でき、この情報を使用して、ログインまたはサインアップページのログインフィールドに入力することができます。パスキーは、データベース接続の認証方法として利用可能です。パスキーは、従来の認証要素(識別子/パスワードなど)よりもフィッシング耐性が高く、より簡単かつ安全なログインエクスペリエンスをユーザーに提供します。詳細については、「パスキー」をご覧ください。
サインアップ
ユーザーがログインページではなくサインアップページに直接アクセスできるようにするには、
/authorize
にリダイレクトするときにscreen_hint=signup
パラメーターを指定します。このパラメーターとprompt=login
を組み合わせて、認証ページを常に表示するか、または既存のセッションが存在する場合はページをスキップするかを指示できます。
/authorize パラメーター |
既存のセッションなし | 既存のセッション |
---|---|---|
追加のパラメーターなし | ログインページを表示 | コールバックURLへリダイレクト |
screen_hint=signup |
サインアップページを表示 | コールバックURLへリダイレクト |
prompt=login |
ログインページを表示 | ログインページを表示 |
prompt=login&screen_hint=signup |
サインアップページを表示 | サインアップページを表示 |
多要素認証
ユーザーが複数のMFA要素(たとえば、SMSおよびプッシュ通知)を登録している場合は、ユニバーサルログインのMFAページで、ユーザーは好みのオプションを選択できます。
MFA要素として音声またはメールを使用できます。詳細については、「MFAのためにSMSと音声通知を構成する」と「MFA要素」を参照してください。
Guardian SDKを使用してプッシュ通知を処理する独自のネイティブアプリケーションを作成する場合は、Dashboard >[Security(セキュリティ)]>[Multi-Factor Auth(多要素認証)]セクションの[Push via Auth0 Guardian(Auth0 Guardianを介したプッシュ)]オプションでアプリケーションの名前とURLを構成して、ダウンロードできます。
MFAプロバイダーを
google-authenticator
に設定したルールがある場合は、Dashboard >[Security(セキュリティ)]>[Multi-Factor Auth(多要素認証)]セクションでOTP要素を有効にする必要があります。MFAのためにWebAuthnを使用できます。
Actionsを使用することで、MFAフローをカスタマイズし、指定要素または要素のシリーズでユーザーにチャレンジできます。ロールや組織メンバーシップなどのユーザーメタデータを利用して、より個別化されたエクスペリエンスを作成することもできます。詳細については、「ユニバーサルログインのMFA選択をカスタマイズする」をご覧ください。
パスワードリセット
ユニバーサルログインエクスペリエンスでは、成功するとユーザーをデフォルトのログインルートにリダイレクトし、ユニバーサルログインフローの一部としてエラーケースを処理します。メールテンプレート内のリダイレクトURLは無視されます。リダイレクトURLが機能するように、Dashboard >[Applications(アプリケーション)]>[Applications(アプリケーション)][Settings(設定)]タブに[Application Login URI(アプリケーションログインURL)]を提供する必要がありますのでご注意ください。
データベース接続に[Require Username(ユーザー名の要求)]が設定されている場合は、パスワードリセットフローが、ユーザーにユーザー名の入力を促し、関連するメールアドレスにパスワードリセットのメールを送信します。詳細については、「データベース接続へのユーザー名の追加」を参照してください。
Actionsを使用して、パスワードリセットフローに2番目のチャレンジを組み込むことができます。特に、
post-challenge
トリガーを使用すると、ユーザーが最初のステップ(通常はパスワードリセットメール内のリンク)を完了した後、新しいパスワードを作成する前に追加のチャレンジをユーザーに提示できます。このトリガーを使用すると、ユーザーをサードパーティ検証ツールなどの外部サイトにリダイレクトしたり、追加のMFA要素でユーザーに情報の入力を求めたりできます。ユーザーがパスワードを更新するには、この2番目のチャレンジを完了する必要があります。注意:パスワードリセットフロー中にユーザーに表示されるMFAプロンプトはカスタマイズできます。詳細については、「ユニバーサルログインのテキストプロンプトのカスタマイズ
カスタムデータベース接続
カスタムデータベース接続を使用する場合:
パスワード変更スクリプトからエラーが返された場合でも、パスワードリセットフローは正しく機能します。
ValidationErrors
またはWrongUsernameOrPasswordError
で返されたエラーは、対応するページに表示されます。詳細については、「カスタムデータベースのトラブルシュート」をお読みください。
メール検証
ユーザーがメール検証リンクをクリックすると、そのユーザーはメールが検証されたことを確認するページにリダイレクトされます。デフォルトのログインルートが設定されている場合、ユーザーはボタンをクリックすることでそのルートにリダイレクトされます。
パスワードのオートコンプリート
ユニバーサルログインページは、パスワードフィールドにオートコンプリート属性を使用します。
サインアップおよびパスワードリセットのページで、autocomplete
は"new-password"
に設定されます。これにより、パスワードマネージャーに信号が送られ、ユーザーは安全でかつランダムなパスワードを生成するよう指示されます。パスワードマネージャーにパスワードを保存するには、ユーザーが明示的な同意を提供する必要があります。
ログインページで、autocomplete
は"current-password"
に設定されます。ブラウザーのパスワードマネージャーにパスワードが保存されている場合は、ログインページにそのパスワードが自動的に入力されます。
パスワードのオートコンプリート機能をオフにしてもセキュリティは向上しないことに注意してください。
ユーザーはブラウザーのパスワードマネージャーにパスワードを保存することをオプトインする必要があります。
パスワードがパスワードマネージャーに保存されると、コンピューターにアクセスできるすべてのユーザーがパスワードマネージャーにアクセスして、パスワードを取得できるようになります。ログイン画面にパスワードが自動入力されるかどうかには関係ありません。ユーザーがブラウザーにログインしている場合は、保存されたパスワードを表示する前にパスワードの入力を求められます。ログインしていない場合は、誰でもパスワードを見ることができます。
Safariの場合は、パスワードが記入される前に、ユーザーはMacのパスワードを入力するか、Touch IDを使用するよう求められます。
ユニバーサルログインを実装する
ユニバーサルログインを使用するようにアプリケーションをセットアップする方法については、「クイックスタート」をお読みください。使用しているテクノロジーに合った方法を選択すると、実装をステップバイステップでお手伝いするクイックスタートが開きます。