General Information
Library Note
Morgan's Library Page Header
ACE Director Alum Daniel Morgan, founder of Morgan's Library, is scheduling
complimentary technical Workshops on Database Security for the first 30
Oracle Database customers located anywhere in North America, EMEA, LATAM, or
APAC that send an email to
asra_us@oracle.com . Request a Workshop for
your organization today.
Purpose
Undocumented Label Security Subprograms
AUTHID
DEFINER
Dependencies
LBAC$SA
LBAC_STANDARD
OLS$PROPS
LBAC$USER_LIBT
LBAC_SYSDBA
SA_AUDIT_ADMIN
LBAC_CACHE
OLS$LAB
SA_COMPONENTS
Documented
No
Exceptions
Error Code
Reason
ORA-12458
Oracle Label Security not enabled
First Available
Not Known
Security Model
Owned by LBACSYS with EXECUTE granted to PUBLIC
Source
{ORACLE_HOME}/rdbms/admin/prvtolsdd.plb
Subprograms
DATA_LABEL
Returns TRUE if the number corresponds with a data label, else FALSE
lbac_utl.data_label(label_tag IN NUMBER) RETURN BOOLEAN;
TBD
LABEL_FLAGS
Undocumented
lbac_utl.label_flags(label_tag IN NUMBER) RETURN BINARY_INTEGER;
TBD
NLS_SUBSTRB
Substrings the number of bytes requested always starting with the first character
Unlike the SUBSTRB in STANDARD it does not recognize a negative input value as a request to return the string beginning with the last byte
lbac_utl.nls_substrb(
in_string IN VARCHAR2,
num_bytes IN BINARY_INTEGER)
RETURN VARCHAR2;
SELECT lbac_utl.nls_substrb ('ABCDEFGHIJKLMNOPQRSTUVWXYZ', 10)
FROM dual;
LBAC_UTL.NLS_SUBSTRB('ABCDEFGHIJKLMNOPQRSTUVWXYZ',10)
-----------------------------------------------------
ABCDEFGHIJ
SELECT lbac_utl.nls_substrb ('ABCDEFGHIJKLMNOPQRSTUVWXYZ', -10)
FROM dual;
SELECT
lbac_utl.nls_substrb('ABCDEFGHIJKLMNOPQRSTUVWXYZ', -10)
*
ERROR at line 1:
ORA-01426: numeric overflow
ORA-06512: at "LBACSYS.LBAC_UTL", line 13
NLS_VALIDNAME
Returns 1 if the string is a valid object name in Oracle, else 0
DBMS_ASSERT contains the same functionality
lbac_utl.nls_validname(in_string IN VARCHAR2) RETURN BINARY_INTEGER;
SELECT lbac_utl.nls_validname ('ZZYZX')
FROM dual;
LBAC_UTL.NLS_VALIDNAME('ZZYZX')
-------------------------------
1
SELECT lbac_utl.nls_validname ('ZZ ZX')
FROM dual;
LBAC_UTL.NLS_VALIDNAME('ZZYZX')
-------------------------------
0
NUMBER_POLICY_COLUMN
Undocumented
lbac_utl.number_policy_column RETURN BOOLEAN;
BEGIN
IF lbac_utl.number_policy_column THEN
dbms_output.put_line('T');
ELSE
dbms_output.put_line('F');
END IF;
END;
/
USER_DATA_LABEL
Undocumented
lbac_utl.user_data_label(label_tag IN NUMBER) RETURN BOOLEAN;
TBD