Search Results get_default_user
Overview
APP_SESSION is a PL/SQL package owned by the APPS schema that provides the session management foundation for Oracle E-Business Suite. Its documented header (AFSCSESS.pls, version 120.2) identifies it as the component responsible for initializing an application session and for creating, validating, and re-establishing ICX sessions for identified users. The package bridges Oracle EBS user identity, responsibility selection, and security group context with the HTTP cookie mechanism that carries the ICX session identifier between the browser and the application tier.
In both EBS 12.1.1 and 12.2.2, the package operates at the boundary between single sign-on (SSO) authentication and native EBS authorization: an authenticated user is mapped to an APPS user, a responsibility, and a security group, and the resulting validated context is persisted as an ICX session. The package declares a set of named exceptions — SSO_USER_UNKNOWN, SESSION_CREATION_FAILED, SESSION_DOES_NOT_EXIST, SESSION_NOT_VALID, SESSION_EXPIRED, and SECURITY_CONTEXT_INVALID — that precisely characterize the failure modes callers must handle.
Key Procedures and Functions
- INITIALIZE — Initializes session state within the APPS schema, establishing the in-memory context the remaining subprograms depend on.
- GET_ICX_COOKIE_NAME — Returns the name of the cookie that carries the ICX session identifier, allowing callers to read or write the session cookie without hard-coding its name.
- CREATE_ICX_SESSION — Creates or re-establishes an ICX session for an identified user, using the user's SSO GUID and, optionally, a previous cookie value when re-establishing an existing session. It accepts responsibility application short name, responsibility key, and security group key to define the security context, and returns the new ICX cookie value. Documented exceptions include SSO_USER_UNKNOWN, SESSION_CREATION_FAILED, and SECURITY_CONTEXT_INVALID.
- VALIDATE_ICX_SESSION — Validates an existing ICX session, confirming that the session exists, has not expired, and remains valid. This is the subprogram associated with the search term "validate_icx_session." Typical failure signals are SESSION_DOES_NOT_EXIST, SESSION_NOT_VALID, and SESSION_EXPIRED.
- GET_ALL_LINKED_USERS — Returns the set of APPS users linked to a single sign-on identity, supporting deployments where one SSO GUID maps to multiple EBS user accounts.
- GET_DEFAULT_USER — Identifies the default user associated with a GUID, corresponding to the DEFAULT_USER (Y/N) attribute of the APP_USER_TYPE record type defined in the package.
Tables Accessed
- FND_USER — Source of APPS user identity (user ID and user name) for the Apps_User_Type record and the Apps_User_Table collection type.
- FND_APPLICATION, FND_RESPONSIBILITY, FND_SECURITY_GROUPS — Used to resolve and verify the application short name, responsibility, and security group combination that forms a valid security context.
- FND_ORACLE_USERID — Provides the Oracle schema/identity mapping required during session initialization.
- ICX_SESSIONS — The persistent store of ICX session records; written during session creation and read during validation.
- PLITBLM — The standard PL/SQL index-by table (associative array) utility package used for collection handling.
Usage Notes
APP_SESSION is invoked in the authentication and session-establishment path rather than as an end-user API. It executes when a user enters EBS through SSO or native login, when a session must be re-established from a prior cookie, and on every request that requires the current ICX session to be validated. Because it is referenced by three other APPS packages, customized integrations should call the documented subprograms rather than querying ICX_SESSIONS directly, since the package encapsulates cookie naming, GUID-to-user resolution, and security context verification. Custom code should trap the declared exceptions explicitly — particularly SECURITY_CONTEXT_INVALID, SESSION_EXPIRED, and SESSION_DOES_NOT_EXIST — to distinguish an authorization failure from a stale or missing session. The package is classified as OTHER in the ETRM documentation, indicating that it is an internal infrastructure component; it should be treated as upgrade-sensitive across 12.1.1 and 12.2.2.
-
PACKAGE: APPS.APP_SESSION
12.2.2
-
TYPE: SYS.LCR$_PROCEDURE_RECORD
12.1.1
owner:SYS, object_type:TYPE, object_name:LCR$_PROCEDURE_RECORD, status:VALID,
-
PACKAGE: APPS.APP_SESSION
12.1.1
-
TYPE: SYS.LCR$_PROCEDURE_RECORD
12.2.2
owner:SYS, object_type:TYPE, object_name:LCR$_PROCEDURE_RECORD, status:VALID,
-
PACKAGE BODY: APPS.APP_SESSION
12.2.2
-
PACKAGE BODY: APPS.APP_SESSION
12.1.1
-
APPS.APP_SESSION dependencies on APP_SESSION
12.1.1
-
APPS.APP_SESSION dependencies on APP_SESSION
12.2.2
-
APPS.APP_SESSION dependencies on FND_USER
12.1.1
-
APPS.APP_SESSION dependencies on FND_USER
12.2.2
-
APPS.APP_SESSION dependencies on FND_USER
12.1.1
-
APPS.APP_SESSION dependencies on FND_USER
12.2.2