Red Hat Training

A Red Hat training course is available for Red Hat Directory Server

8.2.3.2. コマンドラインでフィルターされたロールの作成

ロールは、ITU X.509 標準で定義されている ldapsubentry オブジェクトクラスから継承されます。さらに、フィルターが設定された各ロールには、nsRoleDefinition オブジェクトクラスから継承される 2 つのオブジェクトクラスが必要です。
  • nsComplexRoleDefinition
  • nsFilteredRoleDefinition
フィルターが設定されたロールエントリーには、ロールメンバーを判断するために LDAP フィルターを定義する nsRoleFilter 属性も必要です。任意で、ロールは description 属性を取ることができます。
フィルターが設定されたロールのメンバーは、nsRoleFilter 属性で指定されたフィルタに一致するエントリーです。
この例では、すべての営業マネージャーに適用される、フィルターが設定されたロールを作成します。
  1. -a オプションを指定して ldapmodify を実行して、新規エントリーを追加します。
  2. フィルターされたロールエントリーを作成します。
    ロールエントリーには nsFilteredRoleDefinition オブジェクトクラスがあり、これは、オブジェクトクラス LdapSubEntrynsRoleDefinition、および nsComplexRoleDefinition から継承されます。
    nsRoleFilter 属性は、sales managers の値が含まれる o (組織) 属性にフィルターを設定します。
    dn: cn=SalesManagerFilter,ou=people,dc=example,dc=com
    changetype: add
    objectclass: top
    objectclass: LDAPsubentry
    objectclass: nsRoleDefinition
    objectclass: nsComplexRoleDefinition
    objectclass: nsFilteredRoleDefinition
    cn: SalesManagerFilter
    nsRoleFilter: o=sales managers
    Description: filtered role for sales managers
以下のエントリーはフィルター (sales managers 値を持つ o 属性) と一致するため、このフィルターが自動的に設定されたロールのメンバーになります)。
dn: cn=Pat Smith,ou=people,dc=example,dc=com
objectclass: person
cn: Pat
sn: Smith
userPassword: secret
o: sales managers