Oracle DBMS_XDS
Version 26ai

General Information
Library Note Morgan's Library Page Header
The best Oracle News for FY2026

Oracle Database 26ai is now availble. If you haven't you downloaded already: Why?
Purpose The package is an undocumented package supporting Oracle Advanced Security.

Reference to the package here at in the DBSecWorx code library is intended solely as a warning that there is no known legitimate reason for anyone to have access to this security package.
AUTHID CURRENT_USER
Constants
Name Data Type Value
General
ENABLE_DYNAMIC BINARY_INTEGER 1
ENABLE_ACLOID_COLUMN BINARY_INTEGER 2
ENABLE_STATIC_IS BINARY_INTEGER 3
Valid values for ACLMV refresh_mode
ACLMV_ON_DEMAND VARCHAR2(9) 'ON_DEMAND'
ACLMV_ON_COMMIT VARCHAR2(9) 'ON_COMMIT'
Refresh Types for Static ACL MV
XDS_ON_COMMIT_MV BINARY_INTEGER 0
XDS_ON_DEMAND_MV BINARY_INTEGER 1
XDS_SCHEDULED_MV BINARY_INTEGER 2
Static ACL MV Types
XDS_SYSTEM_GENERATED_MV BINARY_INTEGER 0
XDS_USER_SPECIFIED_MV BINARY_INTEGER 1
Dependencies
DBMS_STANDARD DBMS_XDS_INT  
Documented No
First Available 18c
Security Model Owned by SYS with EXECUTE granted to the EXECUTE_CATALOG_ROLE and OLAP_XS_ADMIN roles
Source {ORACLE_HOME}/rdbms/admin/dbmsrlsa.sql
Subprograms
 
ALTER_STATIC_ACL_REFRESH
Alters the refresh mode for a ACLMV for a given table.

Will remove any refresh schedule for this ACLMV.
dbms_xds.alter_static_acl_refresh(
schema_name  IN VARCHAR2 := NULL,
table_name   IN VARCHAR2,
refresh_mode IN VARCHAR2);
TBD
 
DISABLE_OLAP_POLICY
Disables OLAP policy for a table dbms_xds.disable_olap_policy(
schema_nm  IN VARCHAR2 := NULL,
logical_nm IN VARCHAR2);
exec dbms_xds.disable_olap_policy(logical_nm => 'SCOTT');

PL/SQL procedure successfully completed.
 
DISABLE_XDS
Disable an XDS policy for a table dbms_xds.disable_xds(
object_schema IN VARCHAR2 := NULL,
object_name   IN VARCHAR2,
policy_name   IN VARCHAR2 := NULL);
exec dbms_xds.disable_xds('SCOTT', 'EMP');
*
ERROR at line 1:
ORA-46004: XS Data Security policy is not applied on SCOTT.EMP
 
DROP_OLAP_POLICY
Drops an OLAP policy from a table dbms_xds.drop_olap_policy(
schema_nm  IN VARCHAR2 := NULL,
logical_nm IN VARCHAR2);
exec dbms_xds.drop_olap_policy(logical_nm => 'SCOTT');

PL/SQL procedure successfully completed.
 
DROP_XDS
Drop an XDS policy from a table dbms_xds.drop_xds(
object_schema IN VARCHAR2 := NULL,
object_name   IN VARCHAR2,
policy_name   IN VARCHAR2 := NULL);
exec dbms_xds.drop_xds('SCOTT', 'EMP');
*
ERROR at line 1:
ORA-46007: no XS Data Security policy associated with SCOTT.EMP
 
ENABLE_OLAP_POLICY
Enable_olap_policy - enable OLAP policy for a table dbms_xds.enable_olap_policy(
schema_nm  IN VARCHAR2 := NULL,
logical_nm IN VARCHAR2,
policy_nm  IN VARCHAR2,
overwrite  IN BOOLEAN  := NULL);
TBD
 
ENABLE_XDS
Enable an XDS policy for a table dbms_xds.enable_xds(
object_schema IN VARCHAR2       := NULL,
object_name   IN VARCHAR2,
enable_option IN BINARY_INTEGER := NULL,
policy_name   IN VARCHAR2,
usermv_name   IN VARCHAR2       := NULL);
TBD
 
PURGE_ACL_REFRESH_HISTORY
Purges ACL refresh history in XDS_ACL_REFRESH_STATUS for the table's ACLMV dbms_xds.purge_acl_refresh_history(
object_schema IN VARCHAR2 := NULL,
object_name   IN VARCHAR2,
purge_date    IN DATE     := NULL);
sys@pdbdev as sysdba

exec dbms_xds.purge_acl_refresh_history('SCOTT', 'EMPCOPY', SYSDATE+1/60);
SCOTT,EMPCOPY

PL/SQL procedure successfully completed.
 
SCHEDULE_STATIC_ACL_REFRESH
Schedules automatic refresh of an ACLMV for a given table.

Will change the refresh mode of the corresponding ACLMV to "ON DEMAND"
dbms_xds.schedule_static_acl_refresh(
schema_name     IN VARCHAR2                 := NULL,
table_name      IN VARCHAR2,
start_date      IN TIMESTAMP WITH TIME ZONE := NULL,
repeat_interval IN VARCHAR2                 := NULL,
comments        IN VARCHAR2                 := NULL);
exec dbms_xds.schedule_static_acl_refresh('SCOTT', 'EMP', SYSDATE+1/60);

PL/SQL procedure successfully completed.
 
SET_TRACE_LEVEL
Sets the trace level. The tracing info of the scheduled mv refresh is logged in aclmv$_reflog table, and is useful for debugging. dbms_xds.set_trace_level(
schema_name IN VARCHAR2,
table_name  IN VARCHAR2,
level       IN NUMBER);
exec dbms_xds.set_trace_level('SCOTT', 'EMP', 12);
*
ERROR at line 1:
ORA-46025: no static rule specified in applied policy
 
XDS$REFRESH_STATIC_ACL
Scheduler callback procedure to refresh the acl-mv on a table dbms_xds.xds$refresh_static_acl(
schema_name IN VARCHAR2,
table_name  IN VARCHAR2,
mview_name  IN VARCHAR2,
job_name    IN VARCHAR2);
TBD

Related Topics
Built-in Functions
Built-in Packages
Database Security
DBMS_XDS_INT
What's New In 21c
What's New In 26ai

Morgan's Library Page Footer
This site is maintained by Daniel Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2026 Daniel A. Morgan All Rights Reserved