Red Hat Training

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

7.2.12. ロールベースの属性の作成

Classic CoS スキームは、エントリーが所有するロールに基づいてエントリーの属性値を生成します。たとえば、ロールベースの属性を使用して、エントリーごとにサーバーのルックスルー制限を設定できます。
ロールベースの属性を作成するには、Classic CoS の CoS 定義エントリーで nsRole 属性を cosSpecifier として使用します。nsRole 属性が多値指定できるため、複数のテンプレートエントリーを持つ CoS スキームを定義できます。使用するテンプレートエントリーの曖昧さを解決するには、CoS テンプレートエントリーに cosPriority 属性を追加します。
たとえば、この CoS は manager ロールのメンバーが標準のメールボックスクォータを超過できるようにします。マネージャーのロールエントリーは次のとおりです。
dn: cn=ManagerRole,ou=people,dc=example,dc=com
objectclass: top
objectclass: nsRoleDefinition
objectclass: nsComplexRoleDefinition
objectclass: nsFilteredRoleDefinition
cn: ManagerRole
nsRoleFilter: ou=managers
Description: filtered role for managers
重要
nsRoleFilter 属性は仮想属性の値を受け付けません。
Classic CoS 定義エントリーは以下のようになります。
dn: cn=managerCOS,dc=example,dc=com
objectclass: top
objectclass: cosSuperDefinition
objectclass: cosClassicDefinition
cosTemplateDn: cn=managerCOS,dc=example,dc=com
cosSpecifier: nsRole
cosAttribute: mailboxquota override
cosTemplateDn 属性は、cosSpecifier 属性で指定された属性 (ターゲットエントリーの nsRole 属性) とともに CoS テンプレートエントリーを識別する値を提供します。CoS テンプレートエントリーは、mailboxquota 属性の値を提供します。override の他の修飾子は、ターゲットエントリーの既存の mailboxquota 属性値を上書きするよう CoS に指示します。
対応する CoS テンプレートエントリーは以下のようになります。
dn:cn="cn=ManagerRole,ou=people,dc=example,dc=com",cn=managerCOS,dc=example,dc=com
objectclass: top
objectclass: extensibleObject
objectclass: cosTemplate
mailboxquota: 1000000
テンプレートは、mailboxquota 属性の値 1000000 を指定します。
注記
ロールエントリーと CoS 定義およびテンプレートエントリーは、ディレクトリーツリーの同じレベルにある必要があります。