8.12. Identity Management
割り当てられたメモリーが操作完了後に解放されるようになりました
以前は、各操作に対して KCM によって割り当てられたメモリーは、接続が閉じるまで解放されませんでした。その結果、接続を開いて同じ接続で多くの操作を実行するクライアントアプリケーションでは、接続が閉じるまで割り当てられたメモリーが解放されないため、メモリーが著しく増加しました。この更新により、操作に割り当てられたメモリーは、操作が完了するとすぐに解放されるようになりました。
IdM クライアントは、信頼できる AD ユーザーの名前に大文字と小文字が混在している場合でも、当該 AD ユーザーの情報を適切に取得する
以前は、ユーザーの検索または認証を試行した際に、その信頼できる Active Directory (AD) ユーザーの名前に大文字と小文字が混在しており、かつ IdM でオーバーライドが設定されていた場合、エラーが返され、ユーザーは IdM リソースにアクセスできませんでした。
この更新により、大文字と小文字を区別する比較は、大文字と小文字を区別しない比較に置き換えられました。その結果、IdM クライアントは、ユーザー名に大文字と小文字が混在しており、IdM でオーバーライドが設定されている場合でも、AD の信頼済みドメインのユーザーを検索できるようになりました。
SSSD は、パスワード変更時に猶予ログインが残っていない場合にエラーを正しく返します
以前は、ユーザーの LDAP パスワードの有効期限が切れた場合、猶予ログインが残っていないためにユーザーの最初のバインドが失敗した後でも、SSSD はパスワードの変更を試みていました。しかし、ユーザーに返されたエラーには失敗の理由が示されていませんでした。この更新により、バインドが失敗した場合、パスワード変更要求は中断されるようになりました。SSSD は、猶予ログインが残っていないため、別の方法でパスワードを変更する必要があることを示すエラーメッセージを返します。
realm leave
コマンドを使用したドメインからのシステム削除
以前は、sssd.conf
ファイルの ad_server
オプションに複数の名前が設定されている場合、realm leave
コマンドを実行すると解析エラーが発生し、システムがドメインから削除されませんでした。この更新により、ad_server
オプションが適切に評価されるようになり、正しいドメインコントローラー名が使用され、システムがドメインから適切に削除されるようになりました。
KCM は正しい sssd.kcm.log
ファイルにログを記録します
以前、logrotate
は Kerberos Credential Manager (KCM) ログファイルを正しくローテーションしていましたが、KCM はログを誤って古いログファイル sssd_kcm.log.1
に書き込んでいました。KCM を再起動した場合、正しいログファイルが使用されました。この更新により、logrotate
が呼び出されるとログファイルがローテーションされ、KCM は sssd_kcm.log
ファイルに正しくログを記録するようになりました。
realm leave --remove
コマンドが認証情報を要求しなくなる
以前は、realm
ユーティリティーは、realm leave
操作を実行するときに、有効な Kerberos チケットが利用可能かどうかを正しく確認していませんでした。その結果、有効な Kerberos チケットが利用可能であったにもかかわらず、ユーザーはパスワードの入力を求められました。この更新により、realm
は有効な Kerberos チケットがあるかどうかを正しく検証するようになり、realm leave --remove
コマンドを実行するときにユーザーにパスワードの入力を要求しなくなりました。
KDC は、一般的な制約付き委任リクエストを処理するときに追加のチェックを実行するようになりました
以前は、Red Hat Enterprise Linux 8 で実行中の KDC が発行した Kerberos チケットの forwardable フラグに脆弱性があり、検出されることなく不正な変更を加えることが可能でした。この脆弱性により、特定の権限を持たないユーザーによるなりすまし攻撃が発生する可能性がありました。この更新により、KDC は、一般的な制約付き委任リクエストを処理するときに追加のチェックを実行するようになりました。これにより、不正なフラグ変更を検出および拒否し、脆弱性を排除します。
Jira:RHEL-9984[1]
ドメインに対して SID が生成されている場合、forwardable フラグのチェックは無効になります
以前、CVE-2020-17049 の修正を提供する更新では、KDC が一般的な制約付き委任リクエストを処理するときに、Kerberos PAC を使用して、チケットの forwardable フラグに関する特定のチェックを実行していました。ただし、PAC は、過去に SID 生成タスクが実行されたドメインでのみ生成されます。このタスクは、Red Hat Enterprise Linux (RHEL) 8.5 以降で作成されたすべての IdM ドメインに対しては自動的に実行されますが、古いバージョンで初期化されたドメインでは、このタスクを手動で実行する必要があります。
RHEL 8.4 以前で初期化された IdM ドメインに対して SID 生成タスクを手動で実行しなかった場合、Kerberos チケットから PAC が欠落し、一般的な制約付き委任リクエストがすべて拒否されます。これには、一般的な制約付き委任に依存する IdM の HTTP API が含まれます。
この更新により、ドメインに対して SID が生成されなかった場合、forwardable フラグのチェックが無効になります。一般的な制約付き委任に依存するサービス (IdM HTTP API など) は引き続き動作します。ただし、Red Hat では、特にドメインにカスタムの一般的な制約付き委任ルールが設定されている場合は、できるだけ早くドメインで SID 生成タスクを実行することを推奨しています。このタスクが完了するまでは、ドメインは CVE-2020-17049 に対して脆弱なままとなります。
FIPS モードで IdM Vault 暗号化および復号化に失敗しなくなりました
以前は、IdM Vault は、デフォルトのパディングラッピングアルゴリズムとして OpenSSL RSA-PKCS1v15 を使用していました。しかし、RHEL の FIPS 認定モジュールはいずれも FIPS で承認されたアルゴリズムとして PKCS#1 v1.5 をサポートしていなかったため、IdM Vault は FIPS モードで失敗していました。この更新により、IdM Vault は、RSA-OAEP パディングラッピングアルゴリズムをフォールバックとしてサポートするようになりました。その結果、IdM Vault の暗号化と復号化が FIPS モードで正しく動作するようになりました。
Jira:RHEL-12143[1]
ページ結果検索を中止した後に Directory Server が失敗しなくなりました
以前は、競合状態が、ページ化された結果の検索を中止する際にヒープ破損と Directory Server 障害の原因となっていました。この更新により、競合状態が修正され、Directory Server 障害は発生しなくなりました。
Jira:RHEL-16830[1]
nsslapd-numlisteners
属性値が 2
より大きい場合、Directory Server は失敗しなくなる
以前は、nsslapd-numlisteners
属性値が 2
より大きい場合、Directory Server は受け入れられたファイル記述子ではなく、リスニング中のファイル記述子を閉じることがありました。その結果、Directory Server でセグメンテーションエラーが発生してしまいました。この更新により、Directory Server は正しい記述子を閉じ、ポートを正しくリッスンし続けます。
自動バインド操作が、他の接続で実行される操作に影響を与えなくなる
以前は、自動バインド操作の進行中に、Directory Server は接続時の新しい操作のリッスンを停止していました。この更新により、自動バインド操作は他の接続で実行される操作に影響を与えなくなります。
IdM クライアントインストーラーは、ldap.conf
ファイルで TLS CA 設定を指定しなくなる
以前は、IdM クライアントインストーラーは ldap.conf
ファイルで TLS CA 設定を指定していました。この更新により、OpenLDAP はデフォルトのトラストストアを使用し、IdM クライアントインストーラーは ldap.conf
ファイルに TLS CA 設定をセットアップしません。
ローカルユーザーキャッシュ用の shadow-utils
と sss_cache
のインテグレーションが無効化されている
RHEL 9 では、/etc/shadow
などのローカルファイルからユーザー情報を取得し、/etc/groups
からグループ情報を取得する SSSD 暗黙的 files
プロバイダードメインがデフォルトで無効になっていました。ただし、shadow-utils
のインテグレーションは完全に無効化されていなかったため、ローカルユーザーを追加または削除するときに sss_cache
が呼び出されました。不要なキャッシュ更新により、一部のユーザーにパフォーマンスの問題が発生しました。この更新により、shadow-utils
と sss_cache
のインテグレーションが完全に無効化され、不要なキャッシュの更新が原因のパフォーマンスの問題が発生しなくなりました。