Search Results fnd_data_security
Overview
The APPS.FND_DATA_SECURITY package body implements the core runtime engine of Oracle E-Business Suite's data security (also known as "data security" or "row-level security") framework. It is the PL/SQL layer that translates the security rules configured against objects (tables or views) and object instance sets into predicates that restrict which rows a user may see or modify. In Oracle EBS, objects such as FND_RESPONSIBILITY or application tables can be secured against instance sets defined per user, responsibility, or global grant. This package resolves the effective security predicate for a given object and instance set, applies it against the compiled function/menu hierarchy, and caches the results for performance.
In addition to pure predicate generation, the package validates menu and function access by checking the user's granted roles and responsibilities. It is referenced by 51 other database objects, making it one of the most load-bearing packages in the Applications Technology stack for access control. Its status is VALID in the ETRM registration, and it is owned by the APPS schema.
Key Procedures and Functions
The documented interface exposes 18 procedures and functions. Their purposes (parameter lists omitted) are:
- CHECK_FUNCTION — verifies whether a user can access a specific function.
- GET_FUNCTIONS — returns the set of functions available to the current user based on role/responsibility grants.
- GET_MENUS — returns the menu hierarchy authorized for the current user.
- GET_SECURITY_PREDICATE — builds the SQL predicate string that enforces data security for an object/instance set.
- GET_SECURITY_PREDICATE_W_BINDS — the bind-variable variant of the predicate builder, supporting reusable cursors.
- GET_INSTANCES — returns the instance values (e.g., organization IDs) permitted for the user.
- CHECK_INSTANCE_IN_SET — confirms whether a given instance value belongs to a specified instance set.
- GET_ORIG_KEY — resolves the originating key used in grant and predicate lookups.
- CHECK_GLOBAL_OBJECT_TYPE_GRANT — evaluates whether a global (non-user-specific) grant applies for an object type.
- UPGRADE_PREDICATE, UPGRADE_COLUMN_TYPE, UPGRADE_GRANTEE_KEY, SUBSTITUTE_PREDICATE — migration helpers that convert legacy predicate syntax into the current data-security schema.
- TO_INT, TO_DATE — type-conversion utilities for numeric and date instance values.
- CHECK_USER_ROLE — validates role membership via the WF directory.
- GET_FUNCTIONS_BY_PROMPT — returns functions filtered by their prompt text.
Tables Accessed
The package reads and writes through APPS synonyms. Its dependency list includes FND_FORM_FUNCTIONS and FND_COMPILED_MENU_FUNCTIONS (function/menu metadata), FND_GRANTS (grant definitions for users and responsibilities), FND_MENU_ENTRIES_TL (translated menu entries), FND_OBJECTS and FND_OBJECT_INSTANCE_SETS (the security object model), FND_RESPONSIBILITY and FND_RESP_FUNCTIONS (responsibility-to-function mappings), and FND_USER. User and role resolution leverages WF_LOCAL_ROLES, WF_USER_ROLES, and WF_DIRECTORY. Dynamic SQL is executed via DBMS_SQL, and utility access is made to V$INSTANCE and internal PL/SQL tables (PLITBLM, FND_TABLE_OF_NUMBER).
Usage Notes
FND_DATA_SECURITY is most commonly invoked indirectly. Oracle Forms calls it through the standard security event and FND_FUNCTION navigation paths to enforce menu and instance-set restrictions whenever a user opens a form or query. Concurrent programs and OAF pages that support data-secured objects rely on the generated predicate to append WHERE clauses at query time. Custom PL/SQL code may call GET_SECURITY_PREDICATE or GET_SECURITY_PREDICATE_W_BINDS to build secure SQL, and GET_INSTANCES to retrieve authorized instance values. Because the package is referenced by 51 other objects, changes to its behavior should be treated as system-wide; any customization should use the supported public API rather than modifying the package body, which would invalidate the ETRM registration.
-
PACKAGE BODY: APPS.FND_DATA_SECURITY
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:FND_DATA_SECURITY, status:VALID,
-
PACKAGE BODY: APPS.FND_DATA_SECURITY
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:FND_DATA_SECURITY, status:VALID,
-
TYPE: APPS.FND_TABLE_OF_NUMBER
12.2.2
owner:APPS, object_type:TYPE, object_name:FND_TABLE_OF_NUMBER, status:VALID,
-
PACKAGE: APPS.FND_DATA_SECURITY
12.1.1
owner:APPS, object_type:PACKAGE, object_name:FND_DATA_SECURITY, status:VALID,
-
PACKAGE: APPS.FND_DATA_SECURITY
12.2.2
owner:APPS, object_type:PACKAGE, object_name:FND_DATA_SECURITY, status:VALID,
-
TYPE: APPS.FND_TABLE_OF_NUMBER
12.1.1
owner:APPS, object_type:TYPE, object_name:FND_TABLE_OF_NUMBER, status:VALID,
-
PACKAGE BODY: APPS.JTY_USAGE_SEC_POLICY_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:JTY_USAGE_SEC_POLICY_PVT, status:VALID,
-
PACKAGE BODY: APPS.JTY_USAGE_SEC_POLICY_PVT
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:JTY_USAGE_SEC_POLICY_PVT, status:VALID,
-
SYNONYM: APPS.FND_MENU_ENTRIES_TL
12.2.2
owner:APPS, object_type:SYNONYM, object_name:FND_MENU_ENTRIES_TL, status:VALID,
-
PACKAGE BODY: APPS.FND_GENERIC_POLICY
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:FND_GENERIC_POLICY, status:VALID,
-
PACKAGE: APPS.JTF_NOTES_SECURITY_PVT
12.1.1
owner:APPS, object_type:PACKAGE, object_name:JTF_NOTES_SECURITY_PVT, status:VALID,
-
PACKAGE BODY: APPS.XDO_CP_DATA_SECURITY_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:XDO_CP_DATA_SECURITY_PKG, status:VALID,
-
PACKAGE BODY: APPS.JTF_NOTES_SECURITY_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:JTF_NOTES_SECURITY_PVT, status:VALID,
-
PACKAGE BODY: APPS.JTF_NOTES_SECURITY_PVT
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:JTF_NOTES_SECURITY_PVT, status:VALID,
-
PACKAGE BODY: APPS.XDO_CP_DATA_SECURITY_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:XDO_CP_DATA_SECURITY_PKG, status:VALID,
-
PACKAGE: APPS.JTF_NOTES_SECURITY_PVT
12.2.2
owner:APPS, object_type:PACKAGE, object_name:JTF_NOTES_SECURITY_PVT, status:VALID,
-
PACKAGE BODY: APPS.FND_GENERIC_POLICY
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:FND_GENERIC_POLICY, status:VALID,
-
PACKAGE BODY: APPS.JTF_TASK_SECURITY_PVT
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:JTF_TASK_SECURITY_PVT, status:VALID,
-
PACKAGE BODY: APPS.QA_QLTRSLTR_XMLP_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:QA_QLTRSLTR_XMLP_PKG, status:VALID,
-
PACKAGE BODY: APPS.AMW_SECURITY_UTILS_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:AMW_SECURITY_UTILS_PVT, status:VALID,
-
PACKAGE BODY: APPS.QP_SECURITY
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:QP_SECURITY, status:VALID,
-
PACKAGE BODY: APPS.FND_FUNCTION
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:FND_FUNCTION, status:VALID,
-
PACKAGE BODY: APPS.QA_QLTRSLTR_XMLP_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:QA_QLTRSLTR_XMLP_PKG, status:VALID,
-
PACKAGE BODY: APPS.AMW_LOAD_AP_DATA
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:AMW_LOAD_AP_DATA, status:VALID,
-
PACKAGE BODY: APPS.QA_WEB_TXN_API
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:QA_WEB_TXN_API, status:VALID,
-
PACKAGE BODY: APPS.JTF_TASK_SECURITY_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:JTF_TASK_SECURITY_PVT, status:VALID,
-
PACKAGE BODY: APPS.QA_SECURITY_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:QA_SECURITY_PKG, status:VALID,
-
PACKAGE BODY: APPS.QA_SECURITY_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:QA_SECURITY_PKG, status:VALID,
-
PACKAGE BODY: APPS.CS_SR_SECURITY_UTIL
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:CS_SR_SECURITY_UTIL, status:VALID,
-
PACKAGE BODY: APPS.CS_SR_SECURITY_UTIL
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:CS_SR_SECURITY_UTIL, status:VALID,
-
SYNONYM: APPS.FND_COMPILED_MENU_FUNCTIONS
12.2.2
owner:APPS, object_type:SYNONYM, object_name:FND_COMPILED_MENU_FUNCTIONS, status:VALID,
-
PACKAGE BODY: APPS.GL_BUDGET_UTILS_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:GL_BUDGET_UTILS_PKG, status:VALID,
-
PACKAGE BODY: APPS.QP_SECURITY
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:QP_SECURITY, status:VALID,
-
PACKAGE BODY: APPS.FND_FUNCTION
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:FND_FUNCTION, status:VALID,
-
PACKAGE BODY: APPS.GL_BUDGET_UTILS_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:GL_BUDGET_UTILS_PKG, status:VALID,
-
PACKAGE BODY: APPS.AMW_LOAD_PROC_DATA
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:AMW_LOAD_PROC_DATA, status:VALID,
-
PACKAGE BODY: APPS.CEP_STANDARD
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:CEP_STANDARD, status:VALID,
-
PACKAGE BODY: APPS.AMW_LOAD_KEY_ACC_DATA
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:AMW_LOAD_KEY_ACC_DATA, status:VALID,
-
PACKAGE BODY: APPS.FPA_SECURITY_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:FPA_SECURITY_PVT, status:VALID,
-
PACKAGE BODY: APPS.QA_WEB_TXN_API
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:QA_WEB_TXN_API, status:VALID,
-
PACKAGE BODY: APPS.FPA_SECURITY_PVT
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:FPA_SECURITY_PVT, status:VALID,
-
SYNONYM: APPS.FND_RESP_FUNCTIONS
12.2.2
owner:APPS, object_type:SYNONYM, object_name:FND_RESP_FUNCTIONS, status:VALID,
-
PACKAGE BODY: APPS.AMW_LOAD_CTRL_DATA
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:AMW_LOAD_CTRL_DATA, status:VALID,
-
PACKAGE BODY: APPS.HZ_DSS_UTIL_PUB
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:HZ_DSS_UTIL_PUB, status:VALID,
-
VIEW: APPS.GL_TRANSACTION_CALENDAR_V
12.1.1
owner:APPS, object_type:VIEW, fnd_design_data:SQLGL.GL_TRANSACTION_CALENDAR_V, object_name:GL_TRANSACTION_CALENDAR_V, status:VALID,
-
PACKAGE BODY: APPS.CEP_STANDARD
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:CEP_STANDARD, status:VALID,
-
PACKAGE BODY: APPS.AMW_SCOPE_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:AMW_SCOPE_PVT, status:VALID,
-
SYNONYM: APPS.FND_COMPILED_MENU_FUNCTIONS
12.1.1
owner:APPS, object_type:SYNONYM, object_name:FND_COMPILED_MENU_FUNCTIONS, status:VALID,
-
VIEW: APPS.RCI_FINANCIAL_LINE_V
12.1.1
owner:APPS, object_type:VIEW, fnd_design_data:AMW.RCI_FINANCIAL_LINE_V, object_name:RCI_FINANCIAL_LINE_V, status:VALID,
-
VIEW: APPS.GL_PERIOD_SETS_V
12.1.1
owner:APPS, object_type:VIEW, fnd_design_data:SQLGL.GL_PERIOD_SETS_V, object_name:GL_PERIOD_SETS_V, status:VALID,