4.14. Identity Management
samba
がバージョン 4.18.6 にリベース
samba
パッケージはアップストリームバージョン 4.18.6 にアップグレードされ、以前のバージョンに対するバグ修正と拡張機能が提供されています。最も注目すべき変更点:
- 以前のリリースでのセキュリティーの向上は、メタデータの高いワークロードの Server Message Block (SMB) サーバーのパフォーマンスに影響を与えました。この更新により、このシナリオでのパフォーマンスが向上します。
-
新しい
wbinfo --change-secret-at=<domain_controller>
コマンドは、指定されたドメインコントローラーの信頼アカウントのパスワードの変更を強制します。 -
デフォルトでは、Samba はアクセス制御リスト (ACL) をファイルの
security.NTACL
拡張属性に保存します。/etc/samba/smb.conf
ファイルのacl_xattr:<security_acl_name>
設定を使用して属性名をカスタマイズできるようになりました。カスタム拡張属性名は、security.NTACL
のように保護された場所ではないことに注意してください。その結果、サーバーにローカルにアクセスできるユーザーはカスタム属性のコンテンツを変更し、ACL を侵害する可能性があります。
Samba 4.11 以降はサーバーメッセージブロックバージョン 1 (SMB1) プロトコルが非推奨となり、今後のリリースで削除されることに注意してください。
Samba を起動する前にデータベースファイルがバックアップされます。smbd
、nmbd
、またはwinbind
サービスが起動すると、Samba が tdb
データベースファイルを自動的に更新します。Red Hat は、tdb
データベースファイルのダウングレードをサポートしていません。
Samba を更新した後、testparm
ユーティリティーを使用して /etc/samba/smb.conf
ファイルを確認します。
ipaclient
ロールにより、IdM レベルでユーザーの subID 範囲を設定できるようになる
この更新により、ipaclient
ansible-freeipa
ロールにより ipaclient_subid
オプションが提供され、これを使用して Identity Management (IdM) レベルでサブ ID 範囲を設定できるようになりました。新しいオプションを明示的に true
に設定しないと、ipaclient
ロールはデフォルトの動作を維持し、IdM ユーザーに設定された subID 範囲なしでクライアントをインストールします。
以前は、このロールは sssd
authselect
プロファイルを設定し、それによって /etc/nsswitch.conf
ファイルがカスタマイズされていました。subID データベースは IdM を使用せず、/etc/subuid
および /etc/subgid
のローカルファイルのみに依存しました。
複数の IdM グループとサービスを単一の Ansible タスクで管理できるようになる
ansible-freeipa
のこの機能拡張により、単一の Ansible タスクを使用して、複数の Identity Management (IdM) ユーザーグループとサービスを追加、変更、削除できるようになりました。そのためには、ipagroup
モジュールと ipaservice
モジュールの groups
と services
オプションを使用します。
ipagroup
で使用できる groups
オプションを使用すると、特定のグループにのみ適用される複数のグループ変数を指定できます。このグループは、name
変数によって定義されます。これは、groups
オプションの唯一の必須変数です。
同様に、ipaservice
で使用できる services
オプションを使用すると、特定のサービスにのみ適用される複数のサービス変数を指定できます。このサービスは、name
変数によって定義されます。これは、services
オプションの唯一の必須変数です。
Jira:RHELDOCS-16474[1]
ansible-freeipa
ipaserver
ロールが Random Serial Numbers をサポートするようになる
この更新により、ansible-freeipa
ipaserver
ロールで ipaserver_random_serial_numbers=true
オプションを使用できるようになりました。このようにして、Ansible を使用して Identity Management (IdM) サーバーをインストールするときに、PKI で証明書とリクエストの完全にランダムなシリアル番号を生成できます。RSNv3 を使用すると、大規模な IdM インストールでの範囲管理を回避し、IdM を再インストールする際の一般的な競合を防ぐことができます。
RSNv3 は、新しい IdM インストールでのみサポートされます。有効にした場合、すべての PKI サービスで RSNv3 を使用する必要があります。
Jira:RHELDOCS-16462[1]
ipa
がバージョン 4.10.2 にリベース
ipa
パッケージがバージョン 4.10.2 にアップグレードされました。主な変更点は、以下のとおりです。
- IdM CLI および Web UI での証明書の検索とリスト表示のパフォーマンスが向上しました。
詳細は、アップストリームの FreeIPA のリリースノート を参照してください。
ipaserver_remove_on_server
オプションと ipaserver_ignore_topology_disconnect
オプションが、ipaserver
ロールで利用できるようになりました。
ipaserver
ansible-freeipa
ロールの remove_server_from_domain
オプションを使用して、Identity Management (IdM) トポロジーからレプリカを削除すると、トポロジーが切断されます。ここで、ドメインの保持したい部分を指定する必要があります。具体的には、次のことを行う必要があります。
-
ipaserver_remove_on_server
値を指定して、トポロジーのどの部分を保持するかを指定します。 -
ipaserver_ignore_topology_disconnect
を True に設定します。
remove_server_from_domain
オプションを使用して IdM からレプリカを削除した場合に、接続されたトポロジーが保持される場合は、これらのオプションはどちらも必要ないことに注意してください。
IdM は min_lifetime
パラメーターをサポートするようになる
この機能拡張により、min_lifetime
パラメーターが /etc/gssproxy/*.conf
ファイルに追加されました。min_lifetime
パラメーターは、サービスチケットの残りの有効期間がこの値よりも短い場合にサービスチケットの更新をトリガーします。
デフォルトの値は 15 秒です。NFS などのネットワークボリュームクライアントの場合、KDC が一時的に利用できなくなった場合にアクセスが失われるリスクを軽減するには、この値を 60 秒に設定します。
ipacert
Ansible モジュールを使用して IdM 証明書を管理できるようになる
ansible-freeipa
ipacert
モジュールを使用して、Identity Management (IdM) ユーザー、ホスト、およびサービスの SSL 証明書をリクエストまたは取得できるようになりました。ユーザー、ホスト、およびサービスは、これらの証明書を使用して IdM に対する認証を行うことができます。証明書を取り消したり、保留された証明書を復元したりすることもできます。
optional_pac_tkt_chksum
オプションで、krb5
の異なるバージョン間の相互運用性を維持
options_pac_tkt_chksum
オプションを使用して、異なるバージョンの krb5
パッケージを実行している RHEL Kerberos Distribution Center (KDC) サーバー間の相互運用性を維持できるようになりました。具体的には、特権属性証明書 (PAC) チケットの署名検証に関する動作を変更できます。チケットに署名することが予期される Kerberos プリンシパルに対して optional_pac_tkt_chksum
文字列属性を true
に設定すると、KDC は、PAC チケット署名のないチケットを含む Service for User (S4U) リクエストを拒否しません。チケットに署名するプリンシパルは、チケットのターゲットサービスのレルムに応じて、チケット保証サービス (TGS) のプリンシパルまたはレルム間 TGS のプリンシパルです。
krb5-1.20
リリース以降、MIT Kerberos KDC では、S4U リクエストを正常に処理できるように、Kerberos チケットの暗号化部分に基づくチケット署名が PAC に存在する必要がありました。以前は、特定の KDC が krb5-1.19
以前を使用し、他の KDC が krb5-1.20
以降を使用する段階的なアップグレードシナリオで、問題が発生していました。新しいバージョンの krb5
を S4U リクエストに使用する KDC は、サービスが S4U リクエストに古いバージョンの krb5
を使用している場合に、当該古いバージョンを使用する KDC が提供するサービスチケットを拒否していました。
この機能が Identity Management (IdM) でどのように使用されるかの詳細は、こちらのプルリクエスト を参照してください。
IdM がリソースベースの制約付き委任をサポートするようになる
この更新により、IdM はリソースベースの制約付き委任 (RBCD) をサポートするようになりました。RBCD を使用すると、リソースレベルで委任をきめ細かく制御でき、認証情報が委任されるサービスの所有者がアクセスを設定できます。
RBCD は、IdM と Active Directory (AD) の統合などに役立ちます。これは、ターゲットサービスとプロキシーサービスの両方が異なるフォレストに属している場合に AD が RBCD の使用を強制するためです。
現在、RBCD ルールで設定できるのは、IdM ドメイン内のサービスのみです。ターゲットサービスが AD ドメインの一部である場合、パーミッションは AD 側でのみ付与できます。AD ドメインコントローラーは IdM サービス情報を解決してルールを作成することができないため、この機能は現在サポートされていません。
委任シナリオの詳細は、FreeIPA の設計ページ を参照してください。
RHEL 9.3 は 389-ds-base
2.3.4 を提供します
RHEL 9.3 は、389-ds-base
パッケージバージョン 2.3.4 とともに配布されます。バージョン 2.3.4 への主なバグ修正および機能強化は、以下のとおりです。
- https://www.port389.org/docs/389ds/releases/release-2-2-8.html
- https://www.port389.org/docs/389ds/releases/release-2-2-9.html
- https://www.port389.org/docs/389ds/releases/release-2-3-0.html
- https://www.port389.org/docs/389ds/releases/release-2-3-1.html
- https://www.port389.org/docs/389ds/releases/release-2-3-2.html
- https://www.port389.org/docs/389ds/releases/release-2-3-3.html
- https://www.port389.org/docs/389ds/releases/release-2-3-4.html
bind
操作が失敗した場合、Directory Server がクライアント接続を閉じることができるようになる
以前は、bind
操作が失敗すると、bind
戻りコードを無視する一部のアプリケーションが、さらなるリクエストで Director Server をロードする可能性がありました。
cn=config
エントリーの下の新しい nsslapd-close-on-failed-bind
設定属性を使用すると、サーバーは bind
操作が失敗したときに、クライアント接続を閉じることができます。その結果、サーバーの負荷を軽減することができます。
Automembership プラグインの改善。デフォルトではグループをクリーンアップしなくなる
以前は、automember 再ビルドタスクは、すべての automember ルールを調べてすべてのメンバーシップを削除した後、メンバーシップを最初から再ビルドしていました。したがって、特に他の be_txn
プラグインが有効になっている場合、再ビルドタスクは高いコストがかかりました。
この更新により、Automembership プラグインには次の改善が加えられました。
- 一度に許可される再ビルドタスクは 1 つだけです。
Automembership プラグインは、デフォルトでは以前のメンバーをクリーンアップしなくなりました。新しい CLI オプション
--cleanup
を使用して、最初から再ビルドする前にメンバーシップを意図的にクリーンアップします。# dsconf slapd-instance_name plugins automember fixup -f objectclass=posixaccount -s sub --cleanup "ou=people,dc=example,dc=com"
- 修正の進行状況を表示するためのログが改善されました。
新しい passwordAdminSkipInfoUpdate: on/off
設定オプションが利用可能になる
新しい passwordAdminSkipInfoUpdate: on/off
設定を cn=config
エントリーに追加すると、パスワード管理者が実行するパスワード更新をきめ細かく制御できます。この設定を有効にすると、パスワードの更新では、passwordHistory
、passwordExpirationTime
、passwordRetryCount
、pwdReset
、および passwordExpWarned
などの特定の属性は更新されません。
新しい slapi_memberof()
プラグイン関数が Directory Server プラグインおよびクライアントアプリケーションで使用できるようになる
新しい slapi_memberof()
関数は、指定されたエントリーが直接的または間接的に属するグループの識別名 (DN) を取得します。以前は、MemberOf、Referential Integrity、および ACL プラグインは、そのようなグループを取得する独自のメカニズムを実装していました。この更新により、グループ DN を返すための統合メカニズムを導入する slapi_memberof()
関数を使用できるようになりました。
Directory Server は、仮想属性 nsRole
を、マネージドロールとフィルターされたロールのインデックス付き属性に置き換えるようになる
以前は、仮想属性 nsRole
をフィルターに含む LDAP 検索は、その属性にインデックスを付けることができないため、時間がかかりました。この更新により、フィルター内の仮想属性 nsRole
を使用して ldapsearch
を実行すると、Directory Server は次の方法で nsRole
属性を置き換えます。
-
マネージドロールの場合、
nsRole
属性はnsRoleDN
属性に置き換えられます。 -
フィルターされたロールの場合、
nsRole
属性はnsRoleFilter
属性に置き換えられます。
その結果、検索にインデックスが付けられるため、nsRole
属性を使用した検索の応答時間が改善されます。
この更新は、ネストされたロールには適用されないことに注意してください。
新しい nsslapd-numlisteners
設定オプションが利用可能になる
nsslapd-numlisteners
属性は、確立された接続を監視するために Directory Server が使用できるリスナースレッドの数を指定します。属性値を増やすことで、サーバーで多数のクライアント接続が発生した場合の応答時間を改善できます。
IdM は、PAC の署名に使用される暗号化タイプを制御するオプションをサポートする
デフォルトでは、Kerberos Key Distribution Center (KDC) は、Privilege Attribute Certificate (PAC) の AES HMAC-SHA2 署名を生成します。ただし、この暗号化タイプは Active Directory (AD) ではサポートされていません。その結果、AD クロスレルムの制約付き委任リクエストは正しく処理されません。
この機能拡張により、TGS プリンシパル krbtgt/[realm]@[realm]
で pac_privsvr_entype
属性をターゲットレルムに必要な暗号化タイプに設定することで、PAC の署名に使用される暗号化タイプを制御できるようになりました。IdM では、AD 信頼が存在する場合、この文字列属性は自動的に設定されます。
WARNING: This update is about standalone MIT realms. Do not change the Kerberos Distribution Center (KDC) configuration in RHEL Identity Management.
たとえば、MIT
レルムと AD
レルムの場合、クロスレルム Ticket-Granting Ticket (TGT) で AD 互換の暗号化タイプが使用されるようにするには、管理者は MIT 側でクロスレルム TGS プリンシパルを次のように設定する必要があります。これにより、レルム間 TGT は AES 256 HMAC-SHA1 暗号化タイプを使用し、制約付き委任リクエストが正しく処理されるようになります。
kadmin.local <<EOF setstr krbtgt/AD@IPA pac_privsvr_enctype aes256-cts-hmac-sha1-96 setstr krbtgt/IPA@AD pac_privsvr_enctype aes256-cts-hmac-sha1-96 EOF
Identity Management API が完全にサポートされるようになりました
Identity Management (IdM) API は、RHEL 9.2 ではテクノロジープレビュー機能として利用可能でしたが、RHEL 9.3 以降では完全にサポートされるようになりました。
IdM API が拡張されて API コマンドの複数のバージョンが有効になった場合でも、ユーザーは既存のツールとスクリプトを使用できます。これらの機能拡張により、コマンドの動作が互換性のない方法で変更されることはありません。これには次の利点があります。
- 管理者は、管理しているクライアントではなくサーバー上で、IdM の以前のバージョンもしくは最近のバージョンを使用できます。
- サーバーで IdM のバージョンを変更しても、開発者は特定バージョンの IdM コールを使用できます。
たとえば、一方が機能の新しいオプションを導入した新しいバージョンを使用している場合でも、サーバーとの通信は可能です。
- 注記
- IdM API は JSON-RPC インターフェイスを提供しますが、このタイプのアクセスはサポートされていません。Red Hat では、代わりに Python を使用して API にアクセスすることを推奨します。Python を使用すると、サーバーからのメタデータの取得などの重要な部分が自動化され、使用可能なすべてのコマンドをリスト表示できるようになります。