第17章 ID 管理

17.1. Identity Management パッケージがモジュールとしてインストールされる

RHEL 8 では、Identity Management (IdM) サーバーとクライアントのインストールに必要なパッケージがモジュールとして配布されています。client ストリームは、idm モジュールのデフォルトのストリームなので、このストリームを有効にしなくてもクライアントのインストールに必要なパッケージをダウンロードできます。

IdM サーバーのモジュールストリームは DL1 ストリームと呼ばれています。このストリームには、さまざまなタイプの IdM サーバーに対応する複数のプロファイル (server、dns、adtrust、client、および default)が含まれています。DL1 ストリームの特定のプロファイルにあるパッケージをダウンロードする場合は、以下を行います。

  1. ストリームを有効にする。
  2. ストリーム経由で配信される RPM に切り替える。
  3. yum module install idm:DL1/profile_name コマンドを実行する。

17.2. Active Directory ユーザーが Identity Management を管理可能

Red Hat Enterprise Linux (RHEL) 7 では、System Security Services Daemon (SSSD) で外部グループメンバーシップを使用して、AD ユーザーとグループが POSIX 環境の IdM リソースにアクセスするのを許可します。

IdM LDAP サーバーには、アクセスコントロールを付与する独自のメカニズムがあります。RHEL 8 には、AD ユーザーに対する ID ユーザーのオーバーライドを IdM グループのメンバーとして追加する更新が導入されました。ID オーバーライドは、特定の Active Directory ユーザーまたはグループのプロパティーが特定の ID ビュー (この場合は Default Trust View) 内でどのように見えるかを記述するレコードです。この更新により、IdM LDAP サーバーは、IdM グループのアクセス制御ルールを AD ユーザーに適用できます。

AD ユーザーは、IdM UI のセルフサービス機能 (SSH キーのアップロード、個人のデータの変更など) を使用できるようになりました。AD 管理者は、異なるアカウントおよびパスワードを 2 つ使用しなくても、IdM を完全に管理できるようになります。

注記

IdM の一部の機能は、AD ユーザーには現在利用できません。たとえば、IdM の admins グループに所属する AD ユーザーが、IdM ユーザーのパスワードを設定することはできません。

17.3. RHEL 8 のセッション記録ソリューションが追加

Red Hat Enterprise Linux 8 (RHEL 8) に セッション記録ソリューションが追加されました。新しい tlog パッケージと、それに関連付けられた Web コンソールセッションプレイヤーにより、ユーザー端末セッションを記録および再生できます。記録は、システムセキュリティーサービスデーモン (SSSD) サービスを介して、ユーザー別またはユーザーグループ別に設定できます。端末への入出力はすべてキャプチャーされ、テキストベースの形式でシステムジャーナルに保存されます。セキュリティー上の理由から、未加工のパスワードやその他の機密情報を傍受されないように、入力はデフォルトでは非アクティブになっています。

このソリューションを、セキュリティーが重要なシステムでユーザーセッションの監査に使用できます。セキュリティー違反が発生した場合に、記録されたセッションをフォレンジック分析として見直すことができます。システム管理者は、セッション記録をローカルに設定し、tlog-play ユーティリティーを使用して、RHEL 8 Web コンソールインターフェースまたはコマンドラインインターフェースから、結果を表示できるようになりました。

17.4. Identity Management 機能が削除

17.4.1. NSS データベースが OpenLDAP でサポートされない

以前のバージョンの Red Hat Enterprise Linux (RHEL) における OpenLDAP スイートは、暗号化目的で Mozilla Network Security Services (NSS) を使用しました。RHEL 8 を使用して、OpenLDAP コミュニティーがサポートする OpenSSL は NSS を置き換えます。証明書およびキーを保存する NSS データベースをサポートしません。ただし、同じ目的を担う PEM (Privacy Enhanced Mail) ファイルをサポートします。

17.4.2. 選択した Python Kerberos パッケージが置き換えられている

Red Hat Enterprise Linux (RHEL) 8 では、python-gssapi パッケージ、python-requests-gssapi モジュール、および urllib-gssapi ライブラリーは、Python Kerberos パッケージの python-krbVpython-kerberospython-requests-kerberospython-urllib2_kerberos に置き換えられました。重要な利点には、以下のようなものがあります。

  • python-gssapi は、python-kerberos または python-krbV よりも使いやすいです。
  • python-gssapipython 2 および python 3 をサポートしますが、python-krbV はサポートしません。
  • GSSAPI ベースのパッケージは、後方互換性のために、Kerberos だけでなく、NT LAN Manager NTLM などの、その他の Generic Security Services API (GSSAPI) メカニズムを使用できます。

この更新により、RHEL 8 の GSSAPI の保守性とデバッグ可能性が向上します。

17.5. SSSD

17.5.1. authselectauthconfig に置き換わる

RHEL 8 では、authconfig ユーティリティーに代わり、authselect ユーティリティーが導入されました。authselect には、システム管理者が PAM 設定変更を簡単に行える、より安全な PAM スタック管理アプローチが含まれています。authselect は、パスワード、証明書、スマートカード、フィンガープリントなどの認証方法を設定するのに使用できます。authselect では、リモートドメインに参加するのに必要なサービスを設定しません。このタスクは、realmdipa-client-install のような専門のツールにより実行されます。

17.5.2. KCM が、KEYRING をデフォルトの認証情報キャッシュストレージとして置き換え

RHEL 8 でデフォルトの認証情報キャッシュストレージは、sssd-kcm デーモンにより強化されている Kerberos Credential Manager (KCM) です。KCM では、以前使用されていた KEYRING の制限 (名前空間がないためにコンテナー化された環境での使用や、クォータの表示および管理が難しいなど) が解消されています。

今回の更新で、RHEL 8 には、コンテナー環境により適した認証情報キャッシュが含まれ、将来のリリースでより多くの機能を構築するための基盤が提供されます。

17.5.3. sssctl が、IdM ドメインの HBAC ルールレポートを出力

今回の更新で、System Security Services Daemon (SSSD) の sssctl ユーティリティーは、Identity Management (IdM) ドメインのアクセス制御レポートを出力できるようになりました。この機能は、規制上の理由から、特定のクライアントマシンにアクセスできるユーザーとグループの一覧を表示するニーズを満たします。IdM クライアントで sssctl access-report domain_name を実行すると、クライアントマシンに適用する IdM ドメインで解析されたホストベースのアクセス制御 (HBAC) ルールのサブセットを表示します。

IdM サポート以外のプロバイダーは、この機能に対応していません。

17.5.4. SSSD によりローカルユーザーがキャッシュに格納され、nss_sss モジュールにより処理される

RHEL 8 の System Security Services Daemon (SSSD) は、デフォルトで /etc/passwd ファイルおよび /etc/groups ファイルから、ユーザーとグループにサービスを提供します。sss の nsswitch モジュールは、/etc/nsswitch.conf ファイルのファイルに先行します。

SSSD を通して、ローカルユーザーにサービスを提供する利点は、nss_sss モジュールに memory-mapped cache があるため、NSS (Name Service Switch) への各要求でディスクにアクセスしてファイルを開くのと比較して、Name Service Switch (NSS) ルックアップが高速になることでした。これまでは、ディスクへのアクセスの高速化は、Name サービスキャッシュデーモン (nscd) により行われていました。ただし、SSSD と nscd の両方が独自の独立したキャッシュを使用するため、nscd と SSSD を並行して使用するのは容易ではありません。そのため、SSSD が、リモートドメイン (LDAP または Active Directory など) のユーザーにもサービスを提供している環境で nscd を使用すると、予期しない動作が発生する可能性があります。

今回の更新で、RHEL 8 ではローカルユーザーおよびグループの解決が高速になりました。root ユーザーは、SSSD が処理することはないため、SSSD の潜在的なバグが root の解決に影響を及ぼすことはありません。また、SSSD が実行していない場合は、問題を回避するために、nss_sss モジュールが nss_files にフォールバックすることでこの状況が適切に処理されます。SSSD を設定する必要はありません。files ドメインは自動的に追加されます。

17.5.5. SSSD で、複数のスマートカード認証デバイスの中から 1 つを選択可能

デフォルトでは、SSSD (System Security Services Daemon) が、スマートカード認証用デバイスを自動的に検出しようとします。複数のデバイスを接続している場合は、最初に見つかったデバイスを SSSD が選択するため、特定のデバイスを選択することはできません。失敗する可能性もあります。

この更新では、sssd.conf 設定ファイルの [pam] セクションに、新しい p11_uri オプションを設定できるようになりました。このオプションを使用すると、スマートカード認証に使用するデバイスを定義できます。

たとえば、OpenSC PKCS#11 モジュールにより検出されたスロット ID 2 のリーダーを選択するには、以下を追加します。

p11_uri = library-description=OpenSC%20smartcard%20framework;slot-id=2

sssd.conf[pam] セクションに追加します。

詳細は man sssd.conf ページを参照してください。

17.6. 削除された SSSD 機能

17.6.1. sssd-secrets が削除されている

System Security Services Daemon (SSSD) の sssd-secrets コンポーネントは、Red Hat Enterprise Linux 8 では非推奨になります。Custodia シークレットサービスプロバイダーが、以前よりも活発に開発されなくなったためです。その他の Identity Management ツールを使用して Identity Management Vault などのシークレットを保存するシークレットを保存します。