Dump Transactions Plug-In DynamicTree Plug-In

Understanding Oracle Virtual Directory Plug-Ins 4-13 loglevel The log level at which the plug-in logs transactions. Supported values are: SEVERE, WARNING, INFO, FINE, FINER, and FINEST. There is no default value.

4.2.8 DynamicTree Plug-In

The DynamicTree plug-in enables you to construct DNs in Oracle Virtual Directory using the attribute values of source directory entries that have parent entries which are real, virtual, or pointers to different real entries. This plug-in is useful for generating organization charts and reports in LDAP hierarchy format based on structural data contained in the source directory entry. The Dynamic Tree plug-in provides more flexibility than the DynamicEntry Tree plug-in because it enables you to browse the directory tree. Consider the following figures and examples. Figure 4–2 shows an example directory structure residing in the source directory: Figure 4–2 Example Directory Structure in Source Directory Figure 4–3 shows an example of how the DynamicTree plug-in, with the parentEntryType parameter set to 1 and the attributeName parameter set to parentou, transforms the source directorys flat hierarchy shown in Figure 4–2 into a layered hierarchy in Oracle Virtual Directory. Note: The DynamicTree plug-in is supported only for deployment on adapters—do not deploy the DynamicTree plug-in as a global plug-in. Note: In the following graphics, attribute values in the source directory appear in bold type. dc=oracle, dc=com ou=Software, dc=oracle, dc=com ou=Software ou=West, dc=oracle, dc=com ou=West parentou=Software ou=Development, dc=oracle, dc=com ou=Development parentou=West cn=Paul, ou=Development, dc=oracle, dc=com cn=Jane, ou=West, dc=oracle, dc=com 4-14 Oracle Fusion Middleware Administrators Guide for Oracle Virtual Directory Figure 4–3 Directory Structure in OVD Using DynamicTree Plug-In Figure 4–4 shows another example directory structure residing in the source directory: Figure 4–4 Example Directory Structure in Source Directory Figure 4–5 shows an example of how the DynamicTree plug-in, with the parentEntryType parameter set to 0 and the attributeName parameter set to l, creates a layered hierarchy in Oracle Virtual Directory based on the l attribute value in the source directory shown in Figure 4–4 . Figure 4–5 Directory Structure in OVD Using DynamicTree Plug-In dc=oracle, dc=com ou=Software, dc=oracle, dc=com ou=West, ou=Software, dc=oracle, dc=com ou=Development, ou=West, ou=Software, dc=oracle, dc=com cn=Paul, ou=Development, ou=West, ou=Software, dc=oracle, dc=com cn=Jane, ou=West, ou=Software, dc=oracle, dc=com dc=oracle, dc=com cn=Mark, dc=oracle, dc=com l=Dallas cn=Paul, dc=oracle, dc=com l=Redwood City cn=Don, dc=oracle, dc=com l=Redwood City dc=oracle, dc=com l=Dallas, dc=oracle, dc=com l=Redwood City, dc=oracle, dc=com cn=Paul, l=Redwood City, dc=oracle, dc=com cn=Don, l=Redwood City, dc=oracle, dc=com cn=Mark, l=Dallas, dc=oracle, dc=com Understanding Oracle Virtual Directory Plug-Ins 4-15

4.2.8.1 Configuration Parameters

The DynamicTree plug-in has the following configuration parameter: attributeName The attribute used to identify the entrys parent entry. parentEntryType Identifies the type of parent entry. Supported values are 0 and 1. Select 0 for virtual parent entries, which are entries that Oracle Virtual Directory creates based on attribute values in the source directory. Select 1 for parent entries created by multiple ou containers.

4.2.9 DynamicEntryTree Plug-In

The DynamicEntryTree is a general purpose plug-in that you can use to generate virtual directory tree hierarchy by using attributes found in entry leaf nodes. For example, if an adapter has a root of o=Airius.com and users are present as uid=scarter,ou=people,o=airius.com, the DynamicEntryTree plug-in can insert new hierarchy using data present in the entry of the user, such as: uid=scarter,ou=accounting,ou=people,o=airius.com.

4.2.9.1 Configuration Parameters

The DynamicEntryTree plug-in has the following configuration parameter: patterns The DynamicEntryTree plug-in is configured by specifying matching patterns using the patterns configuration parameter. The syntax for the patterns parameter value is attr[=entryattr[SUPPRESS|value]],... For each DN component, an attribute name can have a value substituted with the attribute on the right side of the equals sign =. If no substitution is required, then just the attribute is listed, which essentially refers to a matching component with the original DN. When a value is substituted, you can also further qualify what happens when entryattr has no value. You may either specify SUPPRESS to suppress the entry completely, or you may specify a default value within brackets after the entryattr name. Multiple patterns can be defined by separating them with a |. For example: uid,ou=departmentcontract,ou|cn,ou=codeSUPPRESS This rule has two patterns. One pattern matches objects under the adapter root o=airius.com that have dn components matching uid,ou. Therefore, uid=scarter,ou=people,o=airius.com would be selected for mapping. Upon return, the department attribute would be checked for values. If none are present, the static text contract is substituted. On a search, if base is set to uid=scarter,ou=accounting,ou=people,o=airius.com, the search is modified so that the new base is uid=scarter,ou=people,o=airius.com and the filter is modified with an additional anded term of ou=accounting. The second pattern is intended to match child objects of o=airius.com that have a cn rdn component. When matched, if the entry has an attribute code, its value is substituted by creating cn=mygroup,ou=code12,o=airius.com. If the attribute code is not present, the entry result is suppressed due to the SUPPRESS keyword. 4-16 Oracle Fusion Middleware Administrators Guide for Oracle Virtual Directory

4.2.10 FlatTree Plug-In

The FlatTree plug-in, as with the DynamicEntryTree, performs dynamic mapping of the virtual directory tree. The FlatTree plug-in compresses a directory source so that all entries appear directly under the root of the adapter. FlatTree plug-in operates in two deployed modes: ■ as part of any existing adapter to flatten the existing namespace ■ as part of a Custom Adapter deployment As part of a Custom Adapter deployment, you can use the FlatTree plug-in’s adapter parameter to retrieve data from the designated adapter so that the data appears as part of the namespace of the Custom Adapter. When deployed this way, the adapter root object is not defined. This type of deployment can be useful if you want to overlay multiple adapters on top of a parent adapter without creating duplicate parent nodes.

4.2.10.1 Configuration Parameters

The following is a list and description of the FlatTree plug-in configuration parameters: criteria Criteria defines an LDAP filter that restricts the entries that can be searched for through the FlatTree plug-in. For example, if criteria was set to objectclass=user, then only user objects would be returned through the FlatTree plug-in. adapter If the adapter parameter is not defined, the FlatTree plug-in assumes data will be retrieved through its parent adapter. When defined, the adapter parameter must be the name of another adapter in the Oracle Virtual Directory configuration and the FlatTree plug-in retrieves data from this adapter and maps the entries to its parent adapters root. If the adapter parameter is defined the root object is not returned—only the child entries are returned.

4.2.11 DynamicGroups Plug-In

The DynamicGroups plug-in enables Oracle Virtual Directory to process LDAP objectclasses that are both groupofuniquenames and groupofurls referred to as a dynamic group and convert it into a virtual static group, or groupofuniquenames equivalent. The plug-in works by monitoring returned LDAP objects and detects objects where the memberurl attribute is present and the objectclass is both groupofuniquenames and groupofurls. When detected, the plug-in automatically processes any memberurl values and adds the results to the uniquemember attribute. This dynamic object processing allows administrators to define groups that hold both static members and dynamic members while maintaining compatibility with applications that may not normally support the groupofurls objectclass. Example 4–1 shows an example query when the Dynamic Groups plug-in is not enabled. Two groups are returned and the first group holds two static members and has a memberurl defining a particular directory subtree to also be members. Example 4–1 Example Query When Dynamic Groups Plug-in Is Not Enabled C:\ldapsearch -D bindDN -q -b ou=groups,ou=airius,o=yourcompany.com -s sub memberurl=