You suspect the Oracle protect database user does not have the correct privileges and you need to verify this.
Symantec Data Loss Prevention (DLP) Database
set pagesize 100
SELECT privilege, inherited
FROM dba_sys_privs
WHERE grantee = 'PROTECT'
ORDER by privilege;
SELECT privilege, table_name, inherited
FROM dba_tab_privs
WHERE grantee = 'PROTECT'
ORDER by privilege, table_name;
SQL> SELECT privilege
2 FROM dba_sys_privs
3 WHERE grantee = 'PROTECT'
4 ORDER by privilege;
PRIVILEGE
----------------------------------------
ALTER SESSION
CREATE CLUSTER
CREATE INDEXTYPE
CREATE JOB
CREATE MATERIALIZED VIEW
CREATE OPERATOR
CREATE PROCEDURE
CREATE SEQUENCE
CREATE SESSION
CREATE SYNONYM
CREATE TABLE
CREATE TRIGGER
CREATE TYPE
CREATE VIEW
UNLIMITED TABLESPACE
15 rows selected.
grant <privilege> to protect;
grant CREATE OPERATOR to protect;
SQL> SELECT privilege, table_name, inherited
2 FROM dba_tab_privs
3 WHERE grantee = 'PROTECT'
4 ORDER by privilege, table_name;
================
PRIVILEGE TABLE_NAME
---------------------------------------- ------------------------------
EXECUTE DBMS_LOB
EXECUTE DBMS_LOCK
EXECUTE DBMS_SESSION
EXECUTE DBMS_SQL
READ DATA_PUMP_DIR
SELECT DBA_DATA_FILES
SELECT DBA_EXTENTS
SELECT DBA_REGISTRY_HISTORY
SELECT
DBA_SEGMENTS
SELECT
DBA_TABLESPACES
SELECT
DBA_TEMP_FILES
SELECT
DBA_TEMP_FREE_SPACE
SELECT V
_$DATABASE
SELECT
V_$INSTANCE
SELECT V
_$PARAMETER
SELECT
V_$SESSION
SELECT
V_$SESSION_LONGOPS
SELECT
V_$SQL
SELECT
V_$SQLAREA
SELECT
V_$SQL_PLAN
SELECT
V_$SQL_PLAN_STATISTICS_ALL
SELECT
V_$VERSION
WRITE
DATA_PUMP_DIR
23 rows selected.
grant <privilege> on <table>
to <schema_user>;
grant EXECUTE on DBMS_LOCK to protect;
V_$VERSION
ROLE_ROLE_PRIVS
USER_ROLE_PRIVS
USER_TAB_PRIVS
DBMS_MONITOR (DEBUG, EXECUTE)
Refer to our KB article 160076 for a script to grant all the required privileges.