DBA Data[Home] [Help]

PACKAGE: SYS.XS_ADMIN_UTIL

Source


1 PACKAGE XS_ADMIN_UTIL AUTHID CURRENT_USER AS
2 
3 COMMON_WORKSPACE           CONSTANT VARCHAR2(6) := 'XS';
4 
5 STRING_MAXLEN              CONSTANT PLS_INTEGER := 4000;
6 NON_EMPTY_STRING_MINLEN    CONSTANT PLS_INTEGER := 1;
7 STRING_MINLEN              CONSTANT PLS_INTEGER := 0;
8 
9 XSNAME_MINLEN            CONSTANT PLS_INTEGER := 1;
10 XSNAME_MAXLEN            CONSTANT PLS_INTEGER := 130;
11 
12 PARAMNAME_MINLEN           CONSTANT PLS_INTEGER := 1;
13 PARAMNAME_MAXLEN           CONSTANT PLS_INTEGER := 128;
14 
15 XSQNAME_MINLEN            CONSTANT PLS_INTEGER := 1;
16 XSQNAME_MAXLEN            CONSTANT PLS_INTEGER := 261;
17 
18 EXTERNAL_NAME_MINLEN     CONSTANT PLS_INTEGER := 1;
19 EXTERNAL_NAME_MAXLEN     CONSTANT PLS_INTEGER := 130;
20 
21 WORKSPACE_MINLEN           CONSTANT PLS_INTEGER := 1;
22 WORKSPACE_MAXLEN           CONSTANT PLS_INTEGER := 128;
23 
24 DBNAME_MINLEN              CONSTANT PLS_INTEGER := 1;
25 DBNAME_MAXLEN              CONSTANT PLS_INTEGER := 32;
26 
27 OBJTYPE_PRINCIPAL          CONSTANT PLS_INTEGER := 1;
28 OBJTYPE_SECURITY_CLASS     CONSTANT PLS_INTEGER := 2;
29 OBJTYPE_ACL                CONSTANT PLS_INTEGER := 3;
30 OBJTYPE_PRIVILEGE          CONSTANT PLS_INTEGER := 4;
31 OBJTYPE_DATA_SECURITY      CONSTANT PLS_INTEGER := 5;
32 OBJTYPE_ROLESET            CONSTANT PLS_INTEGER := 6;
33 OBJTYPE_NSTEMPL            CONSTANT PLS_INTEGER := 7;
34 
35 OBJTYPE_SYSOP             CONSTANT PLS_INTEGER := 101;
36 OBJTYPE_ADMOP             CONSTANT PLS_INTEGER := 102;
37 
38 -- These constants define the three delete options.
39 DEFAULT_OPTION               CONSTANT PLS_INTEGER := 1;
40 CASCADE_OPTION               CONSTANT PLS_INTEGER := 2;
41 ALLOW_INCONSISTENCIES_OPTION CONSTANT PLS_INTEGER := 3;
42 
43 -- These two constants specify if an object exists in the base table or not.
44 STATUS_EXISTS              CONSTANT PLS_INTEGER := 1;
45 STATUS_NOT_EXISTS          CONSTANT PLS_INTEGER := 0;
46 
47 -- The following constants define the principal's type.
48 PTYPE_XS              CONSTANT PLS_INTEGER := 1;
49 PTYPE_DB              CONSTANT PLS_INTEGER := 2;
50 PTYPE_DN              CONSTANT PLS_INTEGER := 3;
51 PTYPE_EXTERNAL        CONSTANT PLS_INTEGER := 4;
52 
53 -- Error Code
54 --existing error code
55 ERR_INVALID_LENGTH      CONSTANT NUMBER := 46076;
56 ERR_SET_PRIN_GUID       CONSTANT NUMBER := 46083;
57 ERR_DROP_SEEDED_OBJ     CONSTANT NUMBER := 46084;
58 ERR_NO_PROXY_ROLES      CONSTANT NUMBER := 46085;
59 ERR_DEFV_FREVNT_COEXIST CONSTANT NUMBER := 46096;
60 ERR_NO_ROLESET_ROLE     CONSTANT NUMBER := 46097;
61 ERR_NO_GRANTEDROLE_PRIN CONSTANT NUMBER := 46097;
62 ERR_NO_SC_PARENTSC      CONSTANT NUMBER := 46097;
63 ERR_DUP_PARENT          CONSTANT NUMBER := 46098;
64 ERR_DUP_LEAF            CONSTANT NUMBER := 46098;
65 ERR_DUP_PRIMARY_KEY     CONSTANT NUMBER := 46098;
66 ERR_DUP_ATTR_PRIV_PAIR  CONSTANT NUMBER := 46098;
67 ERR_DUP_PROXY           CONSTANT NUMBER := 46098;
68 ERR_DUP_ACL_PARAM       CONSTANT NUMBER := 46098;
69 ERR_DUP_ROLESET_ROLE    CONSTANT NUMBER := 46098;
70 ERR_DUP_POLICY_PARAM    CONSTANT NUMBER := 46098;
71 ERR_DUP_NS_ATTR         CONSTANT NUMBER := 46098;
72 ERR_AGGR_CYCLE          CONSTANT NUMBER := 46101;
73 ERR_SECCLS_CYCLE        CONSTANT NUMBER := 46103;
74 ERR_INVALID_VALUE       CONSTANT NUMBER := 46152;
75 ERR_NO_HANDLER_FUNC     CONSTANT NUMBER := 46202;
76 ERR_INVALID_ENTITY_LENGTH CONSTANT NUMBER := 46211;
77 ERR_DUP_NAME            CONSTANT NUMBER := 46212;
78 ERR_OBJ_REFERRED        CONSTANT NUMBER := 46214;
79 ERR_INVALID_OBJECT      CONSTANT NUMBER := 46215;
80 ERR_NO_OBJ_FOUND        CONSTANT NUMBER := 46215;
81 ERR_ACL_REFERREDBY_NSTEMPLATE CONSTANT NUMBER := 46116;
82 ERR_INSUFFICIENT_PRIV   CONSTANT NUMBER := 1031;
83 
84 -- new Admin API error code
85 ERR_NO_STATIC_RULE          CONSTANT NUMBER := 46025;
86 ERR_INTERNAL                CONSTANT NUMBER := 46230;
87 ERR_GRANT_ROLE              CONSTANT NUMBER := 46231;
88 ERR_ROLE_GRANT_CYCLE        CONSTANT NUMBER := 46232;
89 ERR_PARENT_ACL_CYCLE        CONSTANT NUMBER := 46233;
90 ERR_NO_POLICY_PARAMETER     CONSTANT NUMBER := 46235;
91 ERR_INVALID_POLICY_TYPE     CONSTANT NUMBER := 46236;
92 ERR_MIDTIER_CACHE           CONSTANT NUMBER := 46237;
93 ERR_NO_DB_USER_ROLE         CONSTANT NUMBER := 46238;
94 ERR_PROXY_SCHEMA_EXIST      CONSTANT NUMBER := 46240;
95 ERR_PROXY_SCHEMA_NOT_EXIST  CONSTANT NUMBER := 46241;
96 ERR_GRANT_ROLE_XSGUEST      CONSTANT NUMBER := 46242;
97 ERR_ROLE_NOT_GRANTED        CONSTANT NUMBER := 46055;
98 ERR_FEATURE_NOT_SUPPORTED   CONSTANT NUMBER := 46099;
99 
100 -- get the default workspace
101 FUNCTION GET_DEFAULT_WORKSPACE return VARCHAR2;
102 
103 -- Length check
104 PROCEDURE CHECK_LENGTH
105          (str        IN  VARCHAR2,
106           min_length IN  PLS_INTEGER,
107           max_length IN  PLS_INTEGER);
108 
109 -- Raise an application error
110 PROCEDURE RAISE_ERROR
111   (error_number IN PLS_INTEGER,
112    error_str1   IN VARCHAR2 DEFAULT NULL,
113    error_str2   IN VARCHAR2 DEFAULT NULL,
114    keep_stack   IN BOOLEAN  DEFAULT TRUE) ;
115 
116 -- set default workspace
117 PROCEDURE SET_DEFAULT_WORKSPACE
118           (workspace IN VARCHAR2);
119 
120 -- Get the object ID, Internal use. called by ADMIN APIs.
121 FUNCTION GET_OBJECT_ID(obj_name    IN VARCHAR2,
122                        obj_type    IN PLS_INTEGER,
123                        workspace   IN VARCHAR2,
124                        status_flag IN PLS_INTEGER := NULL) RETURN NUMBER;
125 
126 -- Utility Function: XS name to ID
127 FUNCTION XSNAME_TO_ID(obj_name IN VARCHAR2,
128                       obj_type IN PLS_INTEGER)
129 RETURN NUMBER;
130 
131 -- Validate DB object name. Internal use.
132 PROCEDURE VALIDATE_DB_OBJECT_NAME
133           (input_name IN VARCHAR2,
134            object_name OUT VARCHAR2,
135            error_msg  IN VARCHAR2 DEFAULT NULL);
136 
137 -- Drop schema objects under a schema
138 PROCEDURE drop_schema_objects(schema_name IN VARCHAR2);
139 
140 -- Grant System privilege to a user/role
141 PROCEDURE grant_system_privilege(
142     priv_name  IN VARCHAR2,
143     user_name  IN VARCHAR2,
144     user_type  IN PLS_INTEGER := XS_ADMIN_UTIL.PTYPE_DB);
145 
146 
147 -- Revoke System privilege from a user/role
148 PROCEDURE revoke_system_privilege(
149     priv_name  IN VARCHAR2,
150     user_name  IN VARCHAR2,
151     user_type  IN PLS_INTEGER := XS_ADMIN_UTIL.PTYPE_DB);
152 
153 
154 -- Revoke System privilege from a user/role
155 PROCEDURE remove_dbuser_aces(
156     user_name  IN VARCHAR2);
157 
158 -- Check whethe the object is seeded or not, internal use
159 PROCEDURE  CHECK_SEEDED(obj_id IN NUMBER);
160 
161 END XS_ADMIN_UTIL;