2.5. ($attr.attrName) マクロの例
($attr.attrName)
マクロは、必ず DN の一部として使用します。たとえば、以下の roledn
を定義します。
roledn = "ldap:///cn=DomainAdmins,($attr.ou),dc=HostedCompany1,dc=example,dc=com"
サーバーが、以下のエントリーを対象とする LDAP 操作を受信すると仮定します。
dn: cn=Jane Doe,ou=People,dc=HostedCompany1,dc=example,dc=com cn: Jane Doe sn: Doe ou: Engineering...
ACI の roledn
部分を評価するために、サーバーはターゲットエントリーの ou
属性を確認し、その値を使用してマクロを展開します。roledn
は次のように展開されます。
roledn = "ldap:///cn=DomainAdmins,ou=Engineering,dc=HostedCompany1,dc=example,dc=com"
Red Hat Directory Server は、通常の ACI 評価アルゴリズムに従って ACI を評価します。
属性に複数の値がある場合、RHDS は各値を使用してマクロを展開し、展開されたマクロと最初に一致した値を使用します。以下に例を示します。
dn: cn=Jane Doe,ou=People,dc=HostedCompany1,dc=example,dc=com cn: Jane Doe sn: Doe ou: Engineering ou: People...
Red Hat 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"