4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Auth0のNew Universal Loginでサインアップ画面を直接呼び出す

Last updated at Posted at 2020-03-04

いつの間にかAuth0のNew Universal Loginでもアプリからサインアップ画面に直接遷移できるようになっていたので簡単にですが試してみました。

ClassicのUniversal Loginではできてたけど、Newのほうはログイン画面にしか遷移できず、ログイン画面下部のリンクからしかサインアップ画面に行けなかったはず

今まで通りのログイン画面への遷移

手っ取り早く試すためにブラウザ(Chrome)のアドレスバーに/authorizeのエンドポイントとパラメーターを打ち込んでます。
(どの画面が表示されるかを確認したいだけなのでstateとnonceは省略しています。)

スクリーンショット 2020-03-04 19.18.16.png

GET https://.../authorize?
  scope=openid&
  response_type=code&
  client_id=...&
  redirect_uri=https://.../callback&
  state=xxxx&
  nonce=xxxx

Enterを押すといつものログイン画面が表示されます。
アカウントが未登録の場合は画面下部のリンクから、サインアップ画面に遷移してアカウント登録をしないといけません。

スクリーンショット 2020-03-04 19.19.07.png

サインアップ画面への直接遷移

Auth0のNew Universal Loginのドキュメントにサインアップ画面に直接遷移するためのパラメーターが載っていました。(これも以前は載っていなかったはず)

New Universal Login Experience

ここに載っているscreen_hint=signupパラメーターをつけて/authorizeにアクセスします。

スクリーンショット 2020-03-04 19.17.49.png

GET https://.../authorize?
  scope=openid&
  response_type=code&
  client_id=...&
  redirect_uri=https://.../callback&
  state=xxxx&
  nonce=xxxx&
  screen_hint=signup

すると、サインアップ画面に直接行けます。

スクリーンショット 2020-03-04 19.19.22.png

追加パラメーター

Auth0のドキュメントには/authorizeの追加パラメーターごとの振る舞いが以下のように記載されています。

New Universal Login Experience #signup

スクリーンショット 2020-03-04 23.06.54.png

パラメーターとセッションの有無で振る舞いが変わるようです。
promptパラメーター自体は前からあるやつですね。Silent Authenticationprompt=noneって設定して使っていました。

まとめ

New Universal Loginでも/authorizeにパラメーターを追加することで、直接サインアップ画面に遷移することが可能になりました。これでサインアップとログインの導線を分けることができるようになったのでUI設計の幅が広がると思います。

New Universal LoginはClassicと比べるとまだ制限がありますが、この制限もどんどん解消されていっているので今後にさらに期待したいですね。

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?