Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

7.4.5. LDAP アクセスフィルターを使用したアクセス制御の定義

/etc/sssd/sssd.confaccess_provider オプションが設定されている場合に、SSSD は指定されたアクセスプロバイダーを使用して、システムにアクセスできるユーザーを評価します。使用しているアクセスプロバイダーが LDAP プロバイダータイプの拡張の場合には、システムへのアクセス許可に必要な LDAP アクセス制御フィルターを指定することもできます。
たとえば、Active Directory (AD) サーバーをアクセスプロバイダーとして使用する場合は、Linux システムへのアクセスを特定の AD ユーザーに制限できます。指定のフィルターに一致しない他のユーザーはすべてアクセスが拒否されます。
注記
アクセスフィルターは LDAP ユーザーエントリーにのみ適用されます。そのため、ネスト化されたグループでこのタイプのアクセス制御を使用すると機能しない可能性があります。ネストされたグループにアクセス制御を適用するには、simple アクセスプロバイダーを使用したアクセス制御の定義」 を参照してください。
重要
オフラインキャッシュを使用する場合、SSSD は、ユーザーが最後にオンラインログインの試行に成功したかどうかを確認します。直近のオンラインログイン中に正常にログインしたユーザーは、アクセスフィルターに一致しない場合でも、オフラインでログインできるようになります。

LDAP アクセスフィルターを適用するための SSSD 設定

  1. /etc/sssd/sssd.conf ファイルを開きます。
  2. [domain] セクションで、LDAP アクセス制御フィルターを指定します。
    • LDAP アクセスプロバイダーの場合は、ldap_access_filter オプションを使用します。詳細は sssd-ldap(5) の man ページを参照してください。
    • AD アクセスプロバイダーの場合は、ad_access_filter オプションを使用します。詳細は sssd-ad(5) の man ページを参照してください。
    たとえば、admins ユーザーグループに属し、属性セットが unixHomeDirectory の AD ユーザーにのみアクセスを許可するには、以下を実行します。
    [domain/AD_domain_name]
    access provider = ad
    [... file truncated ...]
    ad_access_filter = (&(memberOf=cn=admins,ou=groups,dc=example,dc=com)(unixHomeDirectory=*))
SSSD は、エントリーの authorizedService または host 属性により結果を確認することもできます。実際、ユーザーエントリーおよび設定に応じて、全オプションの LDAP フィルター、authorizedService および host を評価できます。ldap_access_order パラメーターは、評価すべき順に、使用するアクセス制御の手法をすべて表示します。
[domain/example.com]
access_provider = ldap
ldap_access_filter = memberOf=cn=allowedusers,ou=Groups,dc=example,dc=com
ldap_access_order = filter, host, authorized_service
認可されたサービスまたは許可されたホストの評価に使用するユーザーエントリーの属性をカスタマイズできます。追加のアクセス制御パラメーターは sssd-ldap(5) の man ページに一覧表示されます。