Which has the higher priority in your organization: Deploying a new database or securing the ones you already have?
Looking for a website, and resources, dedicated solely to securing Oracle databases? Check out DBSecWorx.
Purpose
Real Application Security
The following important note was added to the create script
-- Bug 23597785: Create XS_DATA_SECURITY_UTIL with invoker rights
AUTHID
CURRENT_USER
Data Types
TYPE objnametype IS TABLE OF VARCHAR2(130)
INDEX BY BINARY_INTEGER;
TYPE objnumtype IS TABLE OF NUMBER
INDEX BY BINARY_INTEGER;
Alters the refresh mode for a ACLMV for a table by removing any refresh schedule for this ACLMV (see schedule_static_acl_refresh)
xs_data_security_util.alter_static_acl_refresh(
schema_name IN VARCHAR2 := NULL,
table_name IN VARCHAR2,
refresh_mode IN VARCHAR2); -- refresh mode for internal ACLMV. 'ON DEMAND' or 'ON COMMIT' are the only legal values
PRAGMA SUPPLEMENTAL_LOG_DATA(alter_static_acl_refresh, AUTO_WITH_COMMIT);
xs_data_security_util.purge_acl_refresh_history(
object_schema IN VARCHAR2 := NULL,
object_name IN VARCHAR2,
purge_date IN DATE := NULL);
PRAGMA SUPPLEMENTAL_LOG_DATA(purge_acl_refresh_history, AUTO_WITH_COMMIT);
Schedules automatic refresh of an ACL MV changing the refresh mode to "ON DEMAND"
xs_data_security_util.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);
-- Bug 22545933: Enable log based replication for the procedure
PRAGMA SUPPLEMENTAL_LOG_DATA(schedule_static_acl_refresh, AUTO_WITH_COMMIT);
exec xs_data_security_util.schedule_static_acl_refresh('UWCLASS', 'SERVERS', SYSTIMESTAMP+1, 'freq=hourly; interval=4', 'Refresh On Demand');