Oracle DBMS_XDS
Version 26ai

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

Oracle Database 26ai will be available on generic Linux platforms in January and soon on AIX and Windows
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