Oracle Internet Directory Administrator's Guide Release 9.2 Part Number A96574-01 |
|
This chapter describes how you can extend the capabilities of the Oracle directory server by using plug-ins developed by either Oracle Corporation or third-party vendors.
This chapter contains these topics:
Oracle Internet Directory supports a directory server plug-in a PL/SQL package. It can add the following kinds of functionality to the directory server, to mention just a few:
On startup, the directory server loads your plug-in configuration and library. Then, when it processes requests, it calls your plug-in functions whenever the specified event takes place.
This section describes the operation-based plug-ins that the Oracle Internet Directory plug-in framework supports. These plug-ins execute before, after, or in addition to normal directory server operations.
To enable the directory server to call a plug-in at the right moment, you must register the plug-in with the directory server. Do this by creating an entry for the plug-in under cn=plugin,cn=subconfigsubentry
.
A plug-in must have orclPluginConfig as one of its object classes. This is a structural object class, and its super class is top. Table 26-2 lists and describes its attributes.
Attribute Name | Attribute Value | Mandatory | Optional |
---|---|---|---|
Cn |
Plug-in entry name |
X |
|
orclPluginName |
Plug-in package name |
X |
|
orclPluginType |
One of the following values: operational attribute password_policy syntax matchingrule See Also: The chapter about the Oracle Internet Directory server plug-in framework in Oracle Internet Directory Application Developer's Guide |
X |
|
orclPluginKind |
PL/SQL |
X |
|
orclPluginEnable |
1 = enable |
X |
|
orclPluginVersion |
Supported plug-in version number |
X |
|
orclPluginShareLibLocation |
File location of the dynamic linking library. If this value is not present, then Oracle Internet Directory server assumes the plug-in language is PL/SQL. |
X |
|
orclPluginLDAPOperation |
One of the following values: ldapcompare ldapmodify ldapbind ldapadd ldapdelete ldapsearch |
X |
|
orclPluginTiming |
One of the following values: pre when post |
X |
|
orclPluginIsReplace |
For WHEN timing plug-in only |
X |
|
orclPluginSubscriberDNList |
A semicolon separated DN list that controls if the plug-in takes effect. If the target DN of an LDAP operation is included in the list, then the plug-in is invoked. |
X |
Plug-ins must be added to Oracle Internet Directory server so that the server is aware of additional operations that must be performed at the correct time.
When the plug-in successfully compiles against the Oracle Internet Directory backend database, create a new entry and place it under cn=plugin,cn=subconfigsubentry
.
In the following examples, an entry is created for an operation-based plug-in called my_plugin1
. The LDIF file, my_ldif_file.ldif
, is as follows:
The following is an example LDIF file to create such an object:
cn=when_comp,cn=plugin,cn=subconfigsubentry objectclass=orclPluginConfig objectclass=top orclPluginName=my_plugin1 orclPluginType=operational orclPluginTiming=when orclPluginLDAPOperation=ldapcompare orclPluginEnable=1 orclPluginVersion=1.0.1 orclPluginIsReplace=1 cn=when_comp orclPluginKind=PLSQL orclPluginSubscriberDNList=dc=COM,c=us;dc=us,dc=oracle,dc=com;dc=org,dc=us;
o=IMC,c=US
cn=post_mod_plugin, cn=plugin,cn=subconfigsubentry objectclass=orclPluginConfig objectclass=top orclPluginName=my_plugin1 orclPluginType=operational orclPluginTiming=post orclPluginLDAPOperation=ldapmodify orclPluginEnable=1 orclPluginVersion=1.0.1 cn=post_mod_plugin orclPluginKind=PLSQL
Add this file to the directory with the following command:
ldapadd -p 389 -h myhost -D binddn -w password -f my_ldif_file.ldif
When you have added this entry to the directory, the directory server validates the plug-in by quickly executing it and checking for compilation or access privilege errors. It then gathers more information about this plug-in--such as timing and the type of LDAP operation related to the plug-in.
|
Copyright © 1999, 2002 Oracle Corporation. All Rights Reserved. |
|