Skip to main content
Auth0 Universal PortalにはそれぞれURLがあるため、アプリケーションにサインイン済みのユーザーは、ログインプロンプトを経由せずにPortalを開くことができます。 Portalsには、エントリーポイントとしていくつかの選択肢が用意されています。ユーザーエクスペリエンスに合ったエントリーポイントを選択してください。

前提条件

  • ポータルとそのアプリケーション。作成方法については、Universal Portalsのクイックスタートをお読みください。アプリケーションを自分で構成する場合は、Universal Portals用にアプリケーションを構成するをお読みください。
  • ポータルのURL:
    YOUR_DOMAINにはカスタムドメインを指定します。カスタムドメインがない場合はAuth0ドメインを指定します。{slug}はポータルのスラッグです。 このURLにアクセスすると、ポータルのデフォルトページが開きます。ポータルにデフォルトページが設定されていない場合、ユーザーには「Page not found」というエラーメッセージが表示されます。デフォルトページの構成方法については、Universal Portalsを構成するをお読みください。
  • ポータルをOrganizationsと併用する場合:
    • ポータルアプリケーションでOrganizationsが許可されていること。詳細については、Universal Portals用にアプリケーションを構成するをお読みください。
    • ユーザーがOrganizationのメンバーであること。
    • ビジネスポータルの場合、コンポーネントに必要なOrganizationの権限をユーザーが持っていること。詳細については、My Organization APIをお読みください。

Web アプリケーションから Portal を開く

アプリケーションからポータルの URL にリンクします。
ユーザーがPortalと同じドメインでAuth0のセッションを持っている場合、Auth0はログインプロンプトを表示せず、によってユーザーをPortalにサインインさせます。セッションがない場合は、Auth0がログインページを表示し、ログイン後にユーザーをPortalへ戻します。

ネイティブアプリケーションからポータルを開く

ネイティブからWebへのSSOを使用すると、ユーザーのセッションをネイティブアプリケーションからポータルへ引き継ぐことができます。ネイティブアプリケーションは、リフレッシュトークンを使い捨てのセッション転送トークンと交換し、そのトークンをURLに含めてアプリ内ブラウザーでポータルを開きます。 始める前に、ネイティブアプリケーションでネイティブからWebへのSSOを構成してください。詳細については、「ネイティブからWebへのSSOを構成・実装する」をお読みください。次に、ポータルアプリケーションがセッション転送トークンを受け付けるように構成します。詳細については、「ユニバーサルポータル用にアプリケーションを構成する」をお読みください。

リフレッシュトークンをセッション転送トークンに交換する

このリクエストは、アプリ内ブラウザーを開く直前に実行してください。トークンの有効期限は60秒で、使用できるのは1回限りです。
レスポンスに含まれる access_token がセッション転送トークンです。

アプリ内ブラウザーを開く

トークンを付与したポータルのURLを開きます:
Portalはトークンを Auth0 に転送し、ユーザーをサインインさせます。

アプリ内ブラウザーでポータルのナビゲーションを非表示にする

デフォルトでは、ポータルには上部バー、サイドバー、ユーザーメニューが表示されます。アプリ内ブラウザーの場合、ナビゲーションやユーザーのコンテキストはネイティブアプリケーション側ですでに提供されているため、URLパラメーターを使ってこれらの要素を非表示にできます。 以下のワイヤーフレームは、各パラメーターとよく使われる組み合わせを適用した場合の表示を示しています。 これらのパラメーターは、ユーザーがポータル内のページを移動しても保持されます。そのため、アプリ内ブラウザーを開くときに一度追加するだけで済みます。

Organizationのコンテキストでポータルを開く

特定のOrganizationを対象にポータルを開くには、organizationパラメーターを使用します。My Organization APIには操作対象のOrganizationが必要なため、ビジネス向けポータルでは必ずこのパラメーターを指定してください。コンシューマー向けポータルでは、ユーザーが複数のOrganizationに所属している場合に指定してください。

URL を作成する

ポータルの URL に Organization を追加します。
PortalはorganizationをAuth0の/authorizeエンドポイントに転送するため、他の/authorizeリクエストと同じ識別子の形式を使用してください。具体的には、org_abc123のようなOrganization IDか、テナントで名前を受け付けるようにセットアップしている場合はOrganization名を指定します。詳細については、「認証APIでOrganization名を使用する」をお読みください。

アプリケーションからポータルを開く

アプリケーションでOrganizationを選択してから、そのURLにリンクします。ネイティブアプリケーションの場合は、アプリ内ブラウザーで開くURLにorganizationを追加します。詳細については、「ネイティブアプリケーションからポータルを開く」をお読みください。
ネイティブアプリケーションの場合、organizationの値はセッション転送トークンのOrganizationと一致している必要があります。一致しない場合、Auth0はトークンを拒否するため、ユーザーは再度サインインしなければなりません。詳細については、「OrganizationsでのネイティブからWebへのSSO」をお読みください。

Organizationの切り替え

アクティブなポータルセッションを持つユーザーが別のorganizationを指定してPortalを開くと、PortalはそのOrganizationでユーザーを再度サインインさせ、既存のポータルセッションを置き換えます。

Organization コンテキストにおける Portal の動作

  • My Organization API を呼び出すコンポーネントは、ユーザーの Organization を対象に動作します。
  • Portal には、その Organization のブランディングが適用されます。
  • MFA ステップアップチャレンジが発生しても、ユーザーは同じ Organization 内に留まります。

ユーザーがPortalを開いたときにアクションを実行する

Portalへのサインイン時には、post-loginアクションが実行されます。Portalでのみロジックを実行するには、アプリケーションのClient IDとevent.client.client_idを比較します。 次の例では、ビジネス用Portalへのアクセスを制限します。なお、Organization 管理者にはadminロールを割り当てていることを前提としています。Organizationでサインインし、かつadminロールを持つユーザーだけがPortalにアクセスできるようにします。
ユーザーがPortalを開く前に利用規約への同意を求めるAuth0 Formを表示することもできます。Formのフローで同意を記録しておけば、アクションがFormを再度表示することはありません。
詳細については、「アクションを使用してFormをレンダリングする」をお読みください。

URLパラメーター

次のステップ

Universal Portals用にアプリケーションを構成する

ネイティブアプリケーションとOrganizationsで必要となるアプリケーションのオプションを設定します。

Universal Portalsのアーキテクチャ

Portal内でサインイン、コンポーネントの呼び出し、セッションがどのように機能するかを確認します。

Universal Portalsのトラブルシューティング

サインインやOrganizationに関する問題を解決します。