Lock認証モード

Lockは、2つの異なるモードで機能します。デフォルトモードはリダイレクトモードです。このモードでは、ユーザーは、認証のためにリダイレクトされ、その後アプリケーションに戻されます。2番目のモードのポップアップモードでは、ポップアップウィンドウにより、ユーザーはアプリケーションを離れることなく、IDプロバイダーで認証できます。

リダイレクトモード

リダイレクトモードを使用したIdPボタン(たとえば、Facebook)をクリックすると、すぐに Facebookにリダイレクトされます。リダイレクトモードは、Lockがデフォルトで、ほとんどのユースケースに推奨されるモードです。(たとえばこの例ではFacebookへの)ログインに成功したら、Facebookは(Auth0を通して)ユーザーを再びアプリにリダイレクトします。参考資料のほとんどの例またはサンプルは、リダイレクトモードを採用しています。

ポップアップモード

IdPボタン(たとえば、Facebook)をクリックしてポップアップ(新しいタブまたはウィンドウ)が開いた場合は、ポップアップモードが使用されていることを意味します。そのポップアップで、Facebookページが表示されます。Facebookへのログインに成功したら、ポップアップが閉じ、Webアプリはユーザーが認証されたことを認識します。Webアプリは、別のページへはリダイレクトされません

ポップアップモードのLockの実装は、デフォルトからリダイレクトオプションを変更するだけです。

codeblockOld.header.login.configureSnippet
var lock = new Auth0Lock(
  '{yourClientId}',
  '{yourDomain}',
  {
    auth: {
      redirect: false
    }
  }
);

Was this helpful?

/

Lockがポップアップモードで、アプリケーションに埋め込まれているときは、多要素認証(MFA)がサポートされません。さらに、ポップアップモードは、ユニバーサルログインでは機能しません。

複数アプリケーション間のシングルサインオン(SSO)などのAuth0機能の中には、ユーザーが'{yourDomain}'でCookieを設定するために、Auth0にリダイレクトされることに依存しているものもあります。

ポップアップモードを使用する場合、このCookieを設定するためにポップアップウィンドウが表示されます。プロンプトが必要ない場合は、中断を最小限に抑えるために、このポップアップウィンドウは空白で、非表示のiframe(インラインフレーム)内で表示されます。この理由は、アプリケーションからAuth0に送信されたクロスオリジン要求はCookieを設定できないからです。

ポップアップウィンドウを表示したくなく、かつ複数アプリケーション間のSSOが必要ない場合は、Lockまたはauth0.js使用時にsso: falseを設定できます。

var options = {
  auth: {
    sso: false
  }
}

Was this helpful?

/