Oracle DBMS_TSDP_MANAGE
Version 12.2.0.1

General Information
Library Note Morgan's Library Page Header
"I spent my entire adult life looking out for the well-being, the training, the equipping of the troops for whom I was responsible. I will not be lectured about what our military needs by a five-deferment draft dodger,"
~ Sen. Tammy Duckworth
Purpose Provides an interface to import and manage sensitive columns and sensitive column types in the database, and is used in conjunction with the DBMS_TSDP_PROTECT package with regard to transparent sensitive data protection (TSDP) policies.
AUTHID CURRENT_USER
Constants
Name Data Type Value
DB INTEGER 1
ADM INTEGER 2
CUSTOM INTEGER 3
Dependencies
DBA_TSDP_IMPORT_ERRORS DBA_TSDP_POLICY_TYPE TSDP_POLICY$
DBA_TSDP_POLICY_CONDITION DBMS_STANDARD TSDP_PROTECTION$
DBA_TSDP_POLICY_FEATURE DBMS_TSDP_LIB TSDP_SUBPOL$
DBA_TSDP_POLICY_PARAMETER TSDP$VALIDATION_CHECK TSDP_SENSITIVE_DATA$
DBA_TSDP_POLICY_PROTECTION TSDP_FEATURE_POLICY$ XMLTYPE
Documented Yes
Exceptions
Error Code Reason
ORA-45602 Schema <schema_name> does not exist.
ORA-45605 Invalid sensitive type <type_name_string>
First Available 12.1.0
Security Model Owned by SYS with no privileges granted
Source {ORACLE_HOME}/rdbms/admin/dbmstsdpm.sql
Subprograms
 
ADD_SENSITIVE_COLUMN
Used to add a Column to the Sensitive Column List dbms_tsdp_manage.add_sensitive_column(
schema_name    IN VARCHAR2,
table_name     IN VARCHAR2,
column_name    IN VARCHAR2,
sensitive_type IN VARCHAR2,
user_comment   IN VARCHAR2 DEFAULT NULL);
conn / as sysdba

ALTER SESSION SET CONTAINER = PDBDEV;

exec dbms_tsdp_manage.add_sensitive_type('FIN_TYPE', 'Finanical Information');

col policy_name format a30
col sensitive_type format a30

SELECT *
FROM dba_tsdp_policy_type;

exec dbms_tsdp_manage.add_sensitive_column('SCOTT', 'EMP', 'SAL', 'FIN_TYPE', 'Personal Financial Info.');

col schema_name format a12
col tsdp_policy format a20
col security_feature_policy format a20
col table_name format a11
col column_name format a11

SELECT *
FROM dba_tsdp_policy_protection;
 
ADD_SENSITIVE_TYPE
Used to create and add a Sensitive Column Type to the list Sensitive Column Types in the database dbms_tsdp_manage.add_sensitive_type(
sensitive_type IN VARCHAR2,
user_comment   IN VARCHAR2 DEFAULT NULL);
See ADD_SENSITIVE_COLUMN Demo Above
 
ALTER_SENSITIVE_COLUMN
Used to alter the Sensitive Type and/or the Comment of a Column in the Sensitive Column List dbms_tsdp_manage.alter_sensitive_column(
schema_name    IN VARCHAR2,
table_name     IN VARCHAR2,
column_name    IN VARCHAR2,
sensitive_type IN VARCHAR2,
user_comment   IN VARCHAR2 DEFAULT NULL);
exec dbms_tsdp_manage.alter_sensitive_column('SCOTT', 'EMP', 'SAL', 'SAL_TYPE');
 
DROP_SENSITIVE_COLUMN
Used to remove a Column from the Sensitive Column List dbms_tsdp_manage.drop_sensitive_column(
schema_name IN VARCHAR2 DEFAULT '%',
table_name  IN VARCHAR2 DEFAULT '%',
column_name IN VARCHAR2 DEFAULT '%');
exec dbms_tsdp_manage.drop_sensitive_column('SCOTT', 'EMP', 'SAL');
 
DROP_SENSITIVE_TYPE
Used to drop a Sensitive Column Type from the list Sensitive Column Types in the database dbms_tsdp_manage.drop_sensitive_type(sensitive_type IN VARCHAR2);
exec dbms_tsdp_manage.drop_sensitive_type('FIN_TYPE');
 
DROP_SENSITIVE_TYPE_SOURCE
Used to drop Sensitive Column Types corresponding to a Source from the list Sensitive Column Types in the database. dbms_tsdp_manage.drop_sensitive_type_source(source IN VARCHAR2);
See IMPORT_DISCOVERY_RESULT Demo Below
 
IMPORT_DISCOVERY_RESULT
Used to import Sensitive Columns for an ADM instance as a CLOB

Overload 1
dbms_tsdp_manage.import_discovery_result(
discovery_result IN CLOB,
discovery_source IN VARCHAR2,
force            IN BOOLEAN DEFAULT FALSE);
exec dbms_tsdp_manage.import_discovery_result('CLOB_SRC', UW_DRIMPORT_DEMO');

exec dbms_tsdp_manage.drop sensitive_type_source(UW_DRIMPORT_DEMO');
Used to import Sensitive Columns for an ADM instance as XMLType

Overload 2
dbms_tsdp_manage.import_discovery_result(
discovery_result IN XMLTYPE,
discovery_source IN VARCHAR2,
force            IN BOOLEAN DEFAULT FALSE);
exec dbms_tsdp_manage.import_discovery_result('XML_SRC', UW_DRIMPORT_DEMO', TRUE);

exec dbms_tsdp_manage.drop sensitive_type_source(UW_DRIMPORT_DEMO');
 
IMPORT_SENSITIVE_TYPES
Used to import a list of Sensitive Column Types from a source as a CLOB

Overload 1
dbms_tsdp_manage.import_sensitive_types(
sensitive_types IN CLOB,
source          IN VARCHAR2);
exec dbms_tsdp_manage.import_sensitive_types('CLOB_SRC', UW_TIMPORT_DEMO');
Used to import a list of Sensitive Column Types from a source as XMLType

Overload 2
dbms_tsdp_manage.import_sensitive_types(
sensitive_types IN XMLTYPE,
source          IN VARCHAR2);
exec dbms_tsdp_manage.import_discovery_result('XML_SRC', UW_TIMPORT_DEMO');
 
REMOVE_DISCOVERY_RESULT
Used to remove Sensitive Columns corresponding to an ADM instance dbms_tsdp_manage.remove_discovery_result(discovery_source IN VARCHAR2);
exec dbms_tsdp_manage.remove_discovery_result('UW_DRIMPORT_DEMO');

Related Topics
Data Masking
DBMS_TSDP_PROTECT
Packages
PSTDY_DATAPUMP_SUPPORT
Security
TSDP$DATAPUMP
What's New In 12cR1
What's New In 12cR2

Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2017 Daniel A. Morgan All Rights Reserved