6.15. Identity Management
RHEL 10 では python-jwcrypto
バージョン 1.5.6 が提供される
python-jwcrypto
パッケージがバージョン 1.5.6 に更新されました。このバージョンには、攻撃者が高圧縮率の悪意のある JWE トークンを渡すことでサービス拒否攻撃を引き起こす可能性がある問題に対するセキュリティー修正が含まれています。
Jira:RHELDOCS-20100[1]
RHEL 10 では ansible-freeipa
パッケージバージョン 1.14.5 が提供される
ansible-freeipa
パッケージがバージョン 1.14.5 に更新されました。以下は、主な機能拡張およびバグ修正です。
module_defaults
を使用して、複数のansible-freeipa
タスクの変数を定義できます。freeipa.ansible_freeipa
コレクションは、ansible-freeipa
モジュールの使用を簡素化するmodule_defaults
アクショングループを提供するようになりました。module_defaults
を使用すると、Playbook で使用されるコレクションのすべてのモジュールに適用するデフォルト値を設定できます。これを行うには、freeipa.ansible_freeipa.modules
という名前のaction_group
を使用します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow その結果、Playbook はより簡潔になります。
複数の IdM
sudo
ルールを単一の Ansible タスクで管理できるようになりましたansible-freeipa
のこの機能拡張により、単一の Ansible タスクを使用して、複数の Identity Management (IdM)sudo
ルールを追加、変更、および削除できるようになります。これを行うには、ipasudorule
モジュールのsudorules
オプションを使用します。その結果、sudo
ルールをより簡単に定義し、より効率的に実行できるようになります。sudorules
オプションを使用すると、特定のsudo
ルールに適用される複数のsudo
ルールパラメーターを指定できます。このsudo
ルールはname
変数によって定義されます。これは、sudorules
オプションの唯一の必須変数です。ipagroup
モジュールを使用した外部メンバーの削除が正しく動作するようになりました。以前は、
externalmember
パラメーターを指定したansible-freeipa
ipagroup
モジュールを使用して、IdM グループに外部メンバーが存在しないことを確認しようとした場合、Ansible がタスクの結果をchanged
として表示したにもかかわらず、グループからメンバーが削除されませんでした。この修正により、externalmember
をipagroup
と併用すると、IdM グループに外部メンバーが確実に存在しなくなります。また、この修正により、AD ユーザーを識別するために DOM\name または name@domain のいずれかを使用することもできます。
IdM ID 範囲の不一致を管理するための新しいツール
この更新により、Identity Management (IdM) が ipa-idrange-fix
ツールを提供します。ipa-idrange-fix
ツールを使用して、既存の IdM ID 範囲を分析し、これらの範囲外のユーザーとグループを識別して、それらを含める新しい ipa-local
範囲の作成を提案できます。
ipa-idrange-fix
ツールは次の処理を実行します。
- LDAP から既存の範囲を読み取って分析します。
-
ipa-local
範囲外のユーザーとグループを検索します。 -
特定されたユーザーとグループをカバーするために、新しい
ipa-local
範囲を提案します。 - 提案された変更を適用するようユーザーに促します。
このツールは、システムアカウントとの競合を防ぐために、1000 未満の ID をデフォルトで除外します。Red Hat では、提案された変更を適用する前に、完全なシステムバックアップを作成することを強く推奨します。
詳細は、ipa-idrange-fix(1)
man ページを参照してください。
Jira:RHEL-56917[1]
期限切れの証明書の自動削除がデフォルトで有効化される
この更新により、新しいレプリカの Identity Management (IdM) で期限切れの証明書の自動削除がデフォルトで有効化されました。このための前提条件は、RSNv3 を使用して証明書のランダムなシリアル番号を生成することです。これもデフォルトで有効化されるようになりました。
その結果、証明書はランダムなシリアル番号で作成されようになり、有効期限が切れると、デフォルトの保持期間である有効期限後 30 日が経過すると自動的に削除されます。
RHEL 10 では python-pyasn1
バージョン 0.6.1 が提供される
python-pyasn1
パッケージがバージョン 0.6.1 に更新されました。この更新には、次のようなさまざまな機能拡張とバグ修正が含まれています。
- Python 3.13 のサポート
- Python 2.7、3.6、3.7 のサポートの削除
- エラー処理と一貫性の改善
- tagMap および typeMap エイリアスのランタイムの非推奨化
- これまで欠落していた RELATIVE-OID 構造のサポート
ldap_id_use_start_tls
オプションがデフォルトで有効化される
セキュリティーを強化するために、ldap_id_use_start_tls
のデフォルト値が false
から true
に変更されました。ID ルックアップに TLS を使用せずに ldap://
を使用すると、攻撃ベクトルのリスクが生じる可能性があります。特に、中間者 (MITM) 攻撃は、攻撃者が、たとえば、LDAP 検索で返されたオブジェクトの UID または GID を変更することによってユーザーになりすますことを可能にする可能性があります。
暗号化されていない通信はセキュアではないため、デフォルトの ldap_id_use_start_tls
オプションは true
に設定されるようになりました。
Jira:RHELDOCS-19185[1]
RHEL 10 では certmonger
バージョン 0.79.20 が提供される
certmonger
パッケージがバージョン 0.79.20 に更新されました。この更新には、さまざまなバグ修正と機能拡張が含まれています。主なものは次のとおりです。
- 内部トークン内の新しい証明書の処理が強化され、更新時の削除プロセスが改善されました。
-
CKM_RSA_X_509
暗号化メカニズムのトークンに対する制限を削除しました。 -
getcert add-scep-ca
、--ca-cert
、および--ra-cert
オプションのドキュメントを修正しました。 - D-Bus サービスと設定ファイルの名前を正規名と一致するように変更しました。
-
getcert-resubmit
の man ページで欠落していた.TP
タグを追加しました。 - SPDX ライセンス形式に移行しました。
-
getcert list
出力に所有者と権限の情報が含まれるようになりました。 -
cm_certread_n_parse
関数で NSS データベースの要件を削除しました。 - Webplate を使用して簡体字中国語、グルジア語、ロシア語の翻訳を追加しました。
Jira:RHEL-40922[1]
RHEL 10 では python-jwcrypto
のバージョン 1.5.6 が提供される
python-jwcrypto
パッケージがバージョン 1.5.6 に更新されました。このバージョンには、攻撃者が高圧縮率の悪意のある JWE トークンを渡すことでサービス拒否攻撃を引き起こす可能性がある問題に対するセキュリティー修正が含まれています。
Jira:RHELDOCS-19191[1]
Kerberos が Elliptic Curve Diffie-Hellman 鍵合意アルゴリズムをサポートするようになる
RFC5349 で定義されている PKINIT の Elliptic Curve Diffie-Hellman (ECDH) 鍵合意アルゴリズムがサポートされるようになりました。この更新により、krb5.conf ファイルの pkinit_dh_min_bits
設定で、デフォルトで ECDH を使用するように P-256
、P-384
、または P-521
を指定できるようになりました。
Jira:RHEL-71881[1]
RHEL 10 では 389-ds-base
バージョン 3.0.6 が提供される
389-ds-base
パッケージがバージョン 3.0.6 に更新されました。この更新には、次のようなさまざまな機能拡張とバグ修正が含まれています。
- エラーログのログバッファリング
- 監査ログを JSON 形式で書き込むオプション
- グループが更新されたときにグループメンバーの更新を延期するオプション
- PBKDF2 の反復回数を設定するオプション
-
logconv.py
ログアナライザーツール
389-ds-base
が LMDB を完全にサポートするようになる
以前は 389-ds-base
パッケージでテクノロジープレビューとして利用可能だった Lightning Memory-Mapped Database (LMDB) が、完全にサポートされるようになりました。
主な利点は次のとおりです。
- LMDB は読み取り操作に対して高度に最適化されています。
- LMDB はメモリーの割り当てとメモリー間のコピーを回避します。
- LMDB には最小限の設定が必要です。
- LMDB は、デッドロックのないマルチスレッドおよびマルチプロセス環境をサポートします。
- 読み取り処理は書き込み処理をブロックせず、逆も同様です。
- LMDB ではトランザクションログは必要ありません。
RHEL 10 以降、すべての新しい Directory Server インスタンスはデータベースタイプとして LMDB のみを使用するようになり、BDB を使用した標準インストールはできなくなりました。
既存の BDB インスタンスを LBDM に移行するには、新しい LMDB インスタンスを作成し、LDIF ファイルまたはレプリケーション方法を使用してデータベースの内容をインポートします。
Directory Server は、次の新しい設定パラメーターを含む cn=mdb,cn=config,cn=ldbm database,cn=plugins,cn=config
エントリーの下に LMDB 設定を保存します。
nsslapd-mdb-max-size
は、データベースの最大サイズをバイト単位で設定します。重要:
nsslapd-mdb-max-size
が、すべての目的のデータを保存するのに十分な大きさであることを確認してください。ただし、データベースファイルはメモリーマップされているため、パラメーターの値が高すぎるとパフォーマンスに影響を与える可能性があることに注意してください。-
nsslapd-mdb-max-readers
は、同時に開くことができる読み取り操作の最大数を設定します。Directory Server はこの設定を自動調整します。 -
nsslapd-mdb-max-dbs
は、メモリーマップトデータベースファイル内に含めることができる名前付きデータベースインスタンスの最大数を設定します。
新しい LMDB 設定に加えて、nsslapd-db-home-directory
データベース設定パラメーターも引き続き使用できます。
RHEL 10 では openldap
バージョン 2.6.8 が提供される
openldap
パッケージがバージョン 2.6.8 に更新されました。この更新には、次のようなさまざまな機能拡張とバグ修正が含まれています。
- TLS 接続の処理が改善されました。
-
Active Directory 証明書が Elliptic Curve Cryptography (ECC) 証明書であり、
SASL_CBINDING
がtls-endpoint
に設定されている場合でも、KerberosSASL
はSTARTTLS
で動作します。
Directory Server が、エラー、監査、監査失敗のログのバッファリングを提供するようになる
この更新前は、アクセスログとセキュリティーログにのみログバッファリングがありました。この更新により、Directory Server はエラー、監査、監査失敗のログのバッファリングを提供するようになりました。ログバッファリングを設定するには、次の設定を使用します。
-
エラーログの
nsslapd-errorlog-logbuffering
。デフォルトでは無効になっています。 -
監査および監査失敗ログ用の
nsslapd-auditlog-logbuffering
。デフォルトでは有効です。
詳細は、Red Hat Directory Server「設定およびスキーマ参照」ドキュメントの nsslapd-errorlog-logbuffering および nsslapd-auditlog-logbuffering を参照してください。
PBKDF2-* Password Storage Schemes プラグインエントリーで、ハッシュの反復値を設定できるようになる
この更新前は、Password Storage Schemes プラグインのすべての PBKDF2-* エントリーのハッシュ反復回数がハードコードされていました (10000
)。この更新により、ハッシュ反復値は、デフォルトが 100000
である新しい nsslapd-pwdpbkdf2numiterations
属性を使用して設定されるようになりました。
nsslapd-pwdpbkdf2numiterations
は、コマンドラインまたは Web コンソールを使用して設定できます。
たとえば、値を 150000
に設定し、さまざまなパスワード保存スキームの現在の値を確認するには、次のコマンドを実行します。
dsconf <instance_name> plugin pwstorage-scheme pbkdf2-sha512 set-num-iterations 150000 dsconf <instance_name> plugin pwstorage-scheme pbkdf2-sha512 get-num-iterations
# dsconf <instance_name> plugin pwstorage-scheme pbkdf2-sha512 set-num-iterations 150000
# dsconf <instance_name> plugin pwstorage-scheme pbkdf2-sha512 get-num-iterations
Web コンソールで、メニュー [Database
デフォルト値を変更する前に、次の点を考慮してください。
- 古いパスワードには、パスワードが更新されるまで古いハッシュ反復設定が適用されます。
- 反復回数が増えると、BIND 操作のパフォーマンスに影響する可能性があります。
dsctl healthcheck
が、メンバーシップ属性による部分文字列インデックスの作成を警告するようになる
メンバーシップ属性を含むエントリーは通常、多数のメンバーを持つグループです。値セットを変更する場合、単一のメンバーの削除などの小さな変更の場合でも、部分文字列インデックスのコストは非常に高くなります。現在、部分文字列インデックスタイプを追加すると、dsctl healthcheck
は、メンバーシップ属性の部分文字列インデックスのコストが高くなる可能性があることを警告し、次のエラーメッセージを表示します。
DSMOLE0002
。メンバーシップ属性に部分文字列インデックスが設定されている場合、大規模なグループからのメンバーの削除に時間がかかることがあります。
gssproxy
systemd
サービスのサービスタイプが変更される
gssproxy
systemd
サービスタイプが "forking" から "notify" に変更されました。この更新により、bootc
との互換性を向上するために必要な PIDFile への依存関係が削除されます。この更新により、gssproxy
サービスは "notify" タイプを使用するようになり、より信頼性の高いサービス状態監視が提供されるようになりました。
IdM で ACME がフルサポート対象に
Automated Certificate Management Environment (ACME) サービスが、Identity Management (IdM) で完全にサポートされるようになりました。ACME は、自動化識別子の検証および証明書の発行に使用するプロトコルです。この目的は、証明書の有効期間を短縮し、証明書のライフサイクル管理での手動プロセスを回避することにより、セキュリティーを向上させることです。
RHEL では、ACME サービスは Red Hat Certificate System (RHCS) PKI ACME レスポンダーを使用します。RHCS ACME サブシステムは、IdM デプロイメントのすべての認証局 (CA) サーバーに自動的にデプロイされますが、管理者が有効にするまでリクエストに対応しません。RHCS は、ACME 証明書を発行する際に acmeIPAServerCert
プロファイルを使用します。発行された証明書の有効期間は 90 日です。ACME サービスの有効化または無効化は、IdM デプロイメント全体に影響します。
Jira:RHELDOCS-19405[1]
HSM は IdM で完全にサポートされるようになる
Hardware Security Modules (HSM) が、Identity Management (IdM) で完全にサポートされるようになりました。IdM 認証局 (CA) および Key Recovery Authority (KRA) のキーペアと証明書を HSM に保存できます。これにより、秘密鍵マテリアルに物理的なセキュリティーが追加されます。
IdM は、HSM のネットワーク機能を利用してマシン間で鍵を共有し、レプリカを作成します。HSM は、ほとんどの IdM 操作に目に見える影響を与えることなく、追加のセキュリティーを提供します。低レベルのツールを使用する場合、証明書とキーの処理方法は異なりますが、ほとんどのユーザーはシームレスに使用できます。
既存の CA または KRA を HSM ベースのセットアップに移行することはサポートされていません。HSM 上のキーを使用して CA または KRA を再インストールする必要があります。
以下が必要です。
- サポートされている HSM。
- HSM Public-Key Cryptography Standard (PKCS) #11 ライブラリー。
- 利用可能なスロット、トークン、トークンのパスワード。
HSM にキーが保存されている CA または KRA をインストールするには、トークン名と PKCS #11 ライブラリーへのパスを指定する必要があります。以下に例を示します。
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers -–token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers -–token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
Jira:RHELDOCS-17465[1]