Search Results string_collection




Overview

SYS.DBMS_LDAP_UTL is the Oracle-supplied PL/SQL extension package that provides high-level utility functions for interacting with an LDAP directory server, such as Oracle Internet Directory or Microsoft Active Directory. In the Oracle E-Business Suite 12.1.1 and 12.2.2 environments, the package serves as the application-facing layer above the lower-level DBMS_LDAP API. While DBMS_LDAP exposes raw LDAP protocol operations (bind, search, compare, modify), DBMS_LDAP_UTL wraps those primitives into semantic operations that are meaningful within an Oracle identity-management context: authenticating a user, retrieving a user or group distinguished name (DN), reading and writing properties on directory entries, and resolving group membership.

The package is owned by SYS and is classified in the ETRM repository under the generic API category "OTHER." It is documented as returning error codes rather than raising exceptions, and it depends on a valid LDAP session obtained from DBMS_LDAP.init(). Its functions resolve the Oracle Context schema in the LDAP server to locate information about users, groups, and subscribers.

Key Procedures and Functions

The ETRM documentation registers 39 procedures and functions for this package. The most significant are summarized below; parameter lists are not reproduced here.

The subtype HANDLE and related PROPERTY_SET / MOD_PROPERTY_SET types are defined as RAW(32) structures holding external C pointers.

Tables Accessed

The ETRM metadata for this package lists no tables referenced through APPS synonyms. This is consistent with its design: DBMS_LDAP_UTL does not operate on relational tables in the E-Business Suite schema. Instead, it communicates directly with an external LDAP directory server over the network using the session established by DBMS_LDAP.init() and the Oracle Context schema. Persistent state therefore resides in the directory, not in database tables.

Usage Notes

Typical invocation patterns in EBS include:

  • Oracle Application Server / OID integration: Directory-integrated authentication flows, where EBS validates user credentials against the directory rather than the FND_USER table.
  • Custom authentication code: PL/SQL routines that call AUTHENTICATE_USER or GET_USER_PROPS_AND_AUTH to bind and verify a user during login.
  • Provisioning and synchronization: Concurrent programs or batch jobs that read, create, or update user and group entries via the handle-based interfaces.
  • Group-based authorization: Code that uses CHECK_GROUP_MEMBERSHIP or GET_GROUP_MEMBERSHIP to drive role or responsibility assignment.

Because the package returns error codes rather than raising exceptions, calling code must check return values after each call. Handles returned by the create functions should always be released with FREE_HANDLE, and property-set collections should be freed with FREE_PROPERTYSET_COLLECTION to avoid resource leaks in long-running sessions. The ETRM repository notes that this package is referenced by one other package within the EBS codebase, indicating that it participates in the broader identity-management call stack rather than being invoked in isolation.