Introduction
An entry mapping represents the actual entry or entries that you will see in Penrose virtual tree. The mapping consists of attribute mapping, source mapping (reverse mapping), and access control list. The mapping configuration can be found in PENROSE_HOME/conf/mapping.xml.
<mapping> <entry dn="..."> <!-- object classes --> <oc>...</oc> <!-- attribute mappings --> <at name="..." rdn="..."> ... </at> <!-- source mappings --> <source name="..."> <source-name>...</source-name> <field name="..."> ... </field> </source> <!-- access controls --> <aci ...> ... </aci> <!-- parameters --> <parameter> <param-name>...</param-name> <param-value>...</param-value> </parameter> </entry> </mapping>
Distinguished Name
A DN identifies the location in which the entry mapping resides in the virtual tree. The DN could be either static or dynamic. A static DN consists of RDN's with constant values, for example ou=Users,dc=Example,dc=org. A dynamic DN contains dynamic RDN's, for example uid=...,ou=Users,dc=Example,dc=org. The value of the dynamic RDN's are determined by the actual data being processed.
Object Classes
As with regular LDAP entries, an entry mapping also needs to have object classes. Currently Penrose only supports static object classes.
Attribute Mapping
Attribute mapping describes how to compute the attribute values of the entries, which could be a constant, a variable, or an expression. This is used in all operations that require retrieving the data from the sources such as search, bind, and compare. See Attribute Mappings.
Source Mapping / Reverse Mapping
Source mapping describes how to compute the field values of the sources, which could be a constant, a variable, or an expression. This is used in all operations that require sending the data back to the source such as search (search filter), add, modify, modrdn, and delete. See Source and Field Mappings.
Access Control Instruction
The access control instructions defines the rights of the users accessing this entry mapping. See Access Control.
Parameters
Certain features require specifying additional parameters.
| Parameter | Description | Valid Values | Default Value |
|---|---|---|---|
| fetch | Fetch entry before add, modify, modrdn, delete operation. | true/false | false |
Examples
The following is an example how to define an entry mapping.
<mapping> <entry dn="dc=Example,dc=com"> <oc>dcObject</oc> <oc>organization</oc> <at name="dc" rdn="true"> <constant>Example</constant> </at> <at name="o"> <constant>Example</constant> </at> </entry> </mapping>
This mapping rule defines the entry dc=Example,dc=com. The entry has 2 object classes: dcObject and organization. The values of dc and o attribute are constant values Example.
See Mapping for examples of various mappings.
