9.7. クライアント提案されたアイデンティティープロバイダー
OIDC アプリケーションは、使用するアイデンティティープロバイダーを示唆することで Red Hat build of Keycloak ログインページをバイパスできます。これを有効にするには、Authorization Code Flow 認可エンドポイントに kc_idp_hint クエリーパラメーターを設定します。
Red Hat build of Keycloak OIDC クライアントアダプターを使用すると、アプリケーション内の保護されたリソースにアクセスする際にこのクエリーパラメーターを指定できます。
以下に例を示します。
GET /myapplication.com?kc_idp_hint=facebook HTTP/1.1
Host: localhost:8080
この場合、レルムには facebook エイリアスを持つアイデンティティープロバイダーが必要です。このプロバイダーが存在しない場合は、ログインフォームが表示されます。
JavaScript アダプターを使用している場合は、以下のように同じ動作を実現することもできます。
const keycloak = new Keycloak({
url: "http://keycloak-server",
realm: "my-realm",
clientId: "my-app"
);
await keycloak.createLoginUrl({
idpHint: 'facebook'
});
kc_idp_hint クエリーパラメーターを使用すると、Identity Provider Redirector オーセンティケーターにアイデンティティープロバイダーを設定した場合、クライアントはデフォルトのプロバイダーをオーバーライドできます。kc_idp_hint クエリーパラメーターを空値に設定すると、クライアントは自動リダイレクトを無効にできます。