-
Language:
日本語
-
Language:
日本語
Red Hat Training
A Red Hat training course is available for Red Hat Directory Server
18.16.2.3. Macro Matching for ($attr.attrName)
($attr.attrName) マクロは、DN のサブジェクト部分に常に使用されます。たとえば、以下の roledn を定義します。
roledn = "ldap:///cn=DomainAdmins,($attr.ou)"
ここで、サーバーが、以下のエントリーでターゲットに設定された LDAP 操作を受け取ることを想定しています。
dn: cn=Jane Doe,ou=People,dc=HostedCompany1,dc=example,dc=com cn: Jane Doe sn: Doe ou: Engineering,dc=HostedCompany1,dc=example,dc=com ...
ACI の roledn 部分を評価するため、サーバーはターゲットエントリーに保存されている
ou
属性を確認し、この属性の値をマクロを展開します。そのため、この例では roledn は以下のように展開されます。
roledn = "ldap:///cn=DomainAdmins,ou=Engineering,dc=HostedCompany1,dc=example,dc=com"
次に、Directory Server は通常の ACI 評価アルゴリズムに従って ACI を評価します。
属性が多値を持つ場合、それぞれの値を使ってマクロを展開し、一致した最初の値を使用します。以下に例を示します。
dn: cn=Jane Doe,ou=People,dc=HostedCompany1,dc=example,dc=com cn: Jane Doe sn: Doe ou: Engineering,dc=HostedCompany1,dc=example,dc=com ou: People,dc=HostedCompany1,dc=example,dc=com...
この場合、Directory Server が ACI を評価すると、以下の拡張された式で論理 OR が実行します。
roledn = "ldap:///cn=DomainAdmins,ou=Engineering,dc=HostedCompany1,dc=example,dc=com" roledn = "ldap:///cn=DomainAdmins,ou=People,dc=HostedCompany1,dc=example,dc=com"