8.11. 認証セッション
Web ブラウザーで初めてログインページを開くと、Red Hat build of Keycloak は、認証セッションと呼ばれるオブジェクトを作成し、そこに要求に関する有用な情報を保存します。同じブラウザーの別のタブから新しいログインページが開かれるたびに、Red Hat build of Keycloak は、認証セッション内に保存される認証サブセッションと呼ばれる新しいレコードを作成します。認証要求は、管理 CLI などの任意のタイプのクライアントから取得できます。この場合、認証サブセッションが 1 つ含まれる、新しい認証セッションが作成されます。認証セッションは、Browser Flow を使用する以外の方法でも作成できます。
認証セッションは通常、デフォルトで 30 分後に期限切れになります。正確な時間は、レルムを設定する ときに、管理コンソールの Sessions タブにある Login timeout スイッチで指定されます。
8.11.1. より多くのブラウザータブでの認証
前のセクションで説明したように、1 つのブラウザーの複数のタブから Red Hat build of Keycloak サーバーに認証を試みているユーザーが関与する状況が考えられます。ただし、そのユーザーが 1 つのブラウザータブで認証すると、他のブラウザータブでは自動的に認証が再開されます。この認証は、Red Hat build of Keycloak ログインページで利用可能な小さな JavaScript によって行われます。通常、再起動すると、ユーザーは他のブラウザータブで認証され、クライアントにリダイレクトされます。これは、ユーザーが最初のブラウザータブで正常に認証されたため、SSO セッションが現時点で存在するためです。OIDC パラメーター prompt=login を使用する場合や、現在認証されている要素よりも強力な認証要素を要求する ステップアップ認証 を使用する場合など、ユーザーが他のブラウザータブで自動的に認証されないというまれな例外が存在します。
まれのケースでは、最初のブラウザータブで認証した後、認証セッションがすでに期限切れになっているため、他のブラウザータブで認証を再開できない場合があります。この場合、特定のブラウザータブは、期限切れの認証セッションに関するエラーをプロトコル固有の方法でクライアントにリダイレクトします。詳細は、アプリケーションの保護 セクションの OIDC ドキュメント の対応するセクションを参照してください。クライアントアプリケーションがこのようなエラーを受信すると、前述のように、既存の SSO セッションにより通常はユーザーが自動的に認証されるため、すぐに OIDC/SAML 認証要求を Red Hat build of Keycloak に再送信できます。その結果、エンドユーザーはすべてのブラウザータブで自動的に認証されます。アプリケーションの保護 セクションの Keycloak JavaScript アダプター と Red Hat build of Keycloak アイデンティティープロバイダー は、このエラーを自動的に処理し、このような場合に Red Hat build of Keycloak サーバーへの認証を再試行することをサポートします。