2.2. バージョン 26.4.2 の互換性を失わせる変更


acr_values リクエストパラメーターは、認証中に OpenID Connect アイデンティティープロバイダーに自動的に転送されなくなりました。この変更により、認証コンテキスト情報が外部 IDP に意図せず公開されることを防ぎ、セキュリティーが強化されます。

acr_values パラメーターがアイデンティティープロバイダーに伝播されることに依存している場合は、アイデンティティープロバイダー設定の Forwarded query parameters 設定に acr_values リクエストパラメーターを明示的に設定する必要があります。

2.2.2. CLIENT_ATTRIBUTES と GROUP_ATTRIBUTE テーブルのインデックスを再作成

Red Hat build of Keycloak の以前のバージョンの一部では、EnterpriseDB (EDB) はサポートされていないとみなされていました。これは変更され、このリリース以降、EDB Advanced がサポートされるようになりました。以前のバージョンで EDB への接続に EDB JDBC ドライバーが使用されていた場合、一部の無効なスキーマ変更がデータベースに適用されていました。これを軽減するために、このバージョンへのスキーマ移行中に一部のインデックスが自動的に再作成されます。これは、以前のリリースで EDB を使用していたかどうかに関係なく、PostreSQL データベース (EDB を含む) を使用している場合に影響します。

これは、CLIENT_ATTRIBUTESGROUP_ATTRIBUTE テーブルのインデックスに影響します。これらのテーブルに 300,000 を超えるエントリーが含まれている場合、Red Hat build of Keycloak は、デフォルトで自動スキーマ移行中にインデックスの作成をスキップし、Red Hat build of Keycloak の起動後に手動で適用できるように、代わりに移行中にコンソールに SQL ステートメントを記録します。異なる制限を設定する方法の詳細は、アップグレードガイド を参照してください。

2.2.3. 追加のデータソースの設定変更

以前のリリースでは、追加のデータソースを設定する唯一の方法は、一般的にサポートされていないと考えられている raw の Quarkus プロパティーを使用することでした。同時に、追加のデータソースの追加がサポートされていたため、状況が不明確になっていました。

追加のデータソースを設定するためのサポートされたユーザーフレンドリーな方法を提供するために、専用の新しいサーバーオプションを導入しました。このリリース以降、Quarkus プロパティーを介した元のアプローチを使用して追加のデータソースを設定することは、サポート対象外 とみなされます。

設定を移行する方法については、次の例を確認してください。

新しい Red Hat build of Keycloak オプションを使用する (推奨)

追加のデータソースを設定するためにサポートされている方法は、新しい設定オプションを使用することです。

以下の設定を conf/quarkus.properties から、

quarkus.datasource.user-store.db-kind=postgresql
quarkus.datasource.user-store.username=my-username
quarkus.datasource.user-store.jdbc.url=jdbc:postgresql://my-remote-postgres:5432/user-store
quarkus.datasource.user-store.jdbc.transactions=xa
Copy to Clipboard Toggle word wrap

conf/keycloak.conf の以下の設定へ移行できます。

db-kind-user-store=postgres
db-username-user-store=my-username
db-url-full-user-store=jdbc:postgresql://my-remote-postgres:5432/user-store
# transactions XA is enabled by default for datasources
Copy to Clipboard Toggle word wrap

データソースオプションの詳細は、複数のデータソースの設定 を参照してください。

quarkus.properties 内の引用符を削除します (サポート対象外)

現時点で Red Hat build of Keycloak のデータソースオプションへ移行できない場合は、データソースオプションのマッピングの衝突を防ぎ、問題を回避するために、追加のデータソース名から引用符を削除してください。

つまり、以下の conf/quarkus.properties の設定を、

quarkus.datasource."user-store".db-kind=postgresql
quarkus.datasource."user-store".username=my-username
Copy to Clipboard Toggle word wrap

引用符なし以下のバージョンへ移行する必要があります。

quarkus.datasource.user-store.db-kind=postgresql
quarkus.datasource.user-store.username=my-username
Copy to Clipboard Toggle word wrap

2.2.4. 一時的にロックされたユーザーに関する情報の読み取り

以前のリリースでは、ユーザーの取得 (GET /admin/realms/{realm}/users/{user-id}) とユーザーの検索 (GET /admin/realms/{realm}/users) の REST エンドポイント結果に不一致がありました。BruteForce が有効になっていて、ユーザーが一時的にロックアウトされている場合、前者のエンドポイントは enabled=false を返し、後者のエンドポイントは enabled=true を返します。ユーザーが更新された際、一時的なロックアウトによって enabled の値が false になっていた場合、そのユーザーは永続的に無効化されます。ユーザーが一時的にロックアウトされている場合、両方のエンドポイントは enabled=true を返すようになりました。ユーザーが一時的にロックアウトされているかどうかを確認するには、BruteForceUserResource エンドポイントを利用する必要があります (GET /admin/realms/{realm}/attack-detection/brute-force/users/{userId})。

2.2.5. User API を介したユーザー検索がユーザープロファイル設定を考慮するようになる

User API を通じてユーザーをクエリーする場合、ユーザー表現とその属性では、レルムに定義されたユーザープロファイル設定が考慮されるようになりました。

過去に返された情報が多すぎる場合、ユーザープロファイルの設定によっては、ユーザー表現内の属性が利用できなくなる可能性があります。

Red Hat build of Keycloak がブローカーとして機能し、OpenID Connect によって別のアイデンティティープロバイダーに接続するシナリオでは、RFC6749 で指定されている正しいエンコードで、Basic 認証によってクライアント認証情報が送信されるようになりました。Red Hat build of Keycloak をリクエスト本文で認証情報を送信するように設定していた場合は、影響を受けません。

これにより、コロンやパーセント記号などが含まれるクライアント ID やパスワードの問題を回避できます。

古い動作に戻すには、クライアント認証を非推奨のオプションである Client secret sent as HTTP Basic authentication without URL encoding (client_secret_basic_unencoded) に変更します。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat