DBA Data[Home] [Help]

PACKAGE: SYS.XS_DATA_SECURITY_UTIL

Source


1 PACKAGE XS_DATA_SECURITY_UTIL AS
2 
3   TYPE OBJNAMETYPE IS table of VARCHAR2(32) index by binary_integer;
4   TYPE OBJNUMTYPE IS table of NUMBER index by binary_integer;
5 
6   -- Valid values for ACLMV refresh_mode
7   ACLMV_ON_DEMAND            CONSTANT VARCHAR2(9) := 'ON DEMAND';
8   ACLMV_ON_COMMIT            CONSTANT VARCHAR2(9) := 'ON COMMIT';
9 
10   -- Type of refresh on static acl mv
11   XS_ON_COMMIT_MV  CONSTANT BINARY_INTEGER := 0;
12   XS_ON_DEMAND_MV  CONSTANT BINARY_INTEGER := 1;
13   XS_SCHEDULED_MV  CONSTANT BINARY_INTEGER := 2;
14 
15   -- Type of static acl mv
16   XS_SYSTEM_GENERATED_MV  CONSTANT BINARY_INTEGER := 0;
17   XS_USER_SPECIFIED_MV  CONSTANT BINARY_INTEGER := 1;
18 
19 -- Enable log based replication for this package
20 -- PRAGMA SUPPLEMENTAL_LOG_DATA(default, AUTO);
21 
22   -- schedule_static_acl_refresh
23   --             - schedule automatic refresh of an ACLMV for a given table.
24   --             - this function will change the refresh mode of the
25   --               corresponding ACLMV to "ON DEMAND"
26   --
27   -- INPUT PARAMETERS
28   --   schema_name   - schema owning the object, current user if NULL
29   --   table_name     - name of object
30   --   start_date      - time of first refresh to occur
31   --   repeat_interval - schedule interval
32   --   comments        - comments
33 
34   PROCEDURE schedule_static_acl_refresh(
35           schema_name   IN VARCHAR2 := NULL,
36           table_name     IN VARCHAR2,
37           start_date      IN TIMESTAMP WITH TIME ZONE := NULL,
38           repeat_interval IN VARCHAR2 := NULL,
39           comments        IN VARCHAR2 := NULL);
40 
41   ----------------------------------------------------------------------------
42 
43   -- alter_static_acl_refresh
44   --             - alter the refresh mode for a ACLMV for a given table
45   --             - this function will remove any refresh schedule for this
46   --               ACLMV (see schedule_static_acl_refresh)
47   --
48   -- INPUT PARAMETERS
49   --   schema_name   - schema owning the object, current user if NULL
50   --   table_name    - name of object
51   --   refresh_mode  - refresh mode for internal ACLMV. 'ON DEMAND' or
52   --                     'ON COMMIT' are the only legal values
53 
54   PROCEDURE alter_static_acl_refresh(schema_name IN VARCHAR2 := NULL,
55                                      table_name   IN VARCHAR2,
56                                      refresh_mode  IN VARCHAR2);
57 
58   ----------------------------------------------------------------------------
59 
60   -- purge_acl_refresh_history
61   --           - purge contents of XDS_ACL_REFRESH_STATUS view for this
62   --             table's ACLMV
63   --
64   -- INPUT PARAMETERS
65   --   object_schema   - schema owning the object, current user if NULL
66   --   object_name     - name of object
67   --   purge_date      - date of scheduled purge - immediate if omitted
68 
69   PROCEDURE purge_acl_refresh_history(object_schema IN VARCHAR2 := NULL,
70                                       object_name   IN VARCHAR2,
71                                       purge_date    IN DATE := NULL);
72 
73   ----------------------------------------------------------------------------
74   -- xs$refresh_static_acl (not documented)
75   --           - scheduler callback procedure to refresh the acl-mv on a table
76   --
77   -- INPUT PARAMETERS
78   --   schema_name     - schema owning the table
79   --   table_name      - name of table
80   --   mview_name      - name of miew
81   --   job_name        - name of job
82 
83   procedure  xs$refresh_static_acl(
84                           schema_name IN VARCHAR2,
85                           table_name  IN VARCHAR2,
86                           mview_name IN VARCHAR2,
87                           job_name   IN VARCHAR2);
88 
89   ----------------------------------------------------------------------------
90 
91   -- set_trace_level
92   --            sets the trace level (used for debugging, not documented)
93   --            The tracing info of the scheduled mv refresh is logged
94   --            in aclmv$_reflog table, and is useful for debugging.
95   --
96   -- INPUT PARAMETERS
97   --   schema_name   - schema owning the object
98   --   table_name    - name of object
99   --   level         - the trace level
100 
101   PROCEDURE set_trace_level(schema_name  IN VARCHAR2,
102                             table_name   IN VARCHAR2,
103                             level        IN NUMBER);
104 
105 
106 END XS_DATA_SECURITY_UTIL;