Oracle RDBMS Connector
Overview
Used for OneTrust Data Discovery, the Oracle RDBMS connector connects to Oracle's cloud file sharing system and can be used to scan file system information directly from SQL systems.
- Pod Residency
-
rdbms-scanner - Connection Method
-
JDBC URL
Note:If the recommended JDBC URL command does not work for your Oracle instance, try using "/" instead of ":" when specifying the service name. This is also applicable and supported for scanning a singular or multiple databases.
CODEExample 1 (With port/service): "connectionUrl": "jdbc:oracle:thin:@//<host>:<port>/ServiceName", Example 2 (With port:SID): "connectionUrl": "jdbc:oracle:thin:@<host>:<port>:<SID>",
Supported Scan Actions
OneTrust does not currently support scanning of columns with XMLType.
|
Scan Type |
Description |
|---|---|
|
Catalog |
Only the metadata in the database like details of schema, table, or column are scanned. |
|
Catalog & Scan |
Scans both metadata and data under the tables and returns the appropriate labels. |
Credentials and System Permissions
OneTrust recommends to adhere to your organization's security and infrastructure policy and include system engineer resources or other qualified subject matter experts to set up credentials on data sources.
Connect to the application using Client Credentials.
The presence of base_database (the database to be used for initial connection + calculation of data source level metadata) and database_list (csv list of databases that exist on this connection) the connection URL should either denote the location of the database in the URL with {db} or, if the databases in the database list are to be simply appended, the {db} can be omitted.
The same login credentials must be configured for all databases in the list.
Credentials for scanning a single database:
{
"parameters": {
"password": "password",
"user": "username"
},
"type": "actual",
"connection_url": "jdbc:oracle:thin:system/oracle@localhost:XXXXX:XE"
}
Credentials for scanning multiple databases on a single connection.
{
"parameters": {
"database_list": "XE,OTHERDB",
"base_database": "XE",
"password": "password",
"user": "username"
},
"type": "actual",
"connection_url": "jdbc:oracle:thin:system/oracle@localhost:XXXXX:{db}"
}
Scanning External Tables
This connector supports scanning external Oracle tables similar to a regular table. Please follow the below steps in case of access issue due to data cartridge error.
Error Details: ORA-29400: data cartridge error
Cause: An error has occurred in a data cartridge external procedure. This message will be
followed by a second message giving more details about the data cartridge error.
Action: See the data cartridge documentation for an explanation of the second error message.
The flat files associated to the external table (ex: xxx.dat, xxx2.dat) do not exist in the OS directory pointed by the logical directory XXX_DIR. Assuming there are tables as xxx and xxx2 associated to XXXXT table and logical directory is XXX_DIR.
-
Copy, move, and recreate the flat file xxx.dat so that it exists in the OS directory pointed by the logical XXX_DIR directory.
-
Get the directory location as follows: select * from dba_directories ;
CODEOWNER DIRECTORY_NAME DIRECTORY_PATH SYS XXX_DIR /oradata/external_files -
Copy the .dat file to directory path:
mv /tmp/xxx.dat /oradata/external_files
-
-
If the issue persists, then ensure that all OS flat files associated to the external table exist in the OS directory pointed by the logical XXX_DIR directory:
mv /tmp/xxx2.dat /oradata/external_files -
Verify the above steps by:
PYTHONSelect * from dba_external_locations 2 where table_name='XXXXT'; OWNER TABLE_NAME LOCATION DIRECTORY_OWNER DIRECTORY_NAME ----- ------------- -------- --------------- --------------- SYS XXXXT xxx.dat SYS XXX_DIR SYS XXXXT xxx2.dat SYS XXX_DIR -
Execute the command:
CODEexecute sys.dbms_stats.gather_table_stats('SYS','EMPXT');
Scan Profile Support
For additional details on scan profile configuration and management, see Setting Up Scan Profiles.
Limits
-
Max databases to categorize and scan
-
Max schema to categorize and scan per database
-
Max tables to categorize scan per schema
-
Max rows to scan per table
-
Include/Exclude support at database, schema and table level
Wildcard
Wildcards are not supported for column inclusion or exclusion.
-
Example:
*Name*will not work to include/exclude bothfirstNameandlastNamecolumns -
Instead, you must specify the exact column names separated by commas (e.g.
firstName,lastName).
Columns Excluded in the Data Dictionary
When a column is excluded, it is still cataloged by the Data Dictionary. This means:
-
Basic metadata for the column is retrieved.
-
During extraction, the actual column content is skipped based on the configuration.
Include/Exclude Path Configuration Fields
-
Database
-
Schema
-
Table
-
Column
Collected Objects & Fields
|
Objects |
Fields |
|---|---|
|
Databases |
|
|
Tables |
|
|
Columns |
|
|
Keys |
|
Denylist
This connector has databases and/or schemas that included in our denylist. For more information, see RDBMS Database and Schema Denylist.