Getting started (Salesforce- Compliance accelerator)
When downloading dxac, please ensure that you get the distribution for your operating system.
Pre-requisites
-
Host Machine
dxac requires a host to run. This can be a MacOS 11.6+, Windows10, or RHEL 7.9/8.x machine. -
Storage
At least 150 MB of disk space on the host to install and run dxac. -
Ports, Firewall and Connectivity
The dxac host machine must be able to connect to the Delphix Masking Engine over ports 80 and 443.
*If your Delphix Masking Engine is configured to run on non-standard ports, please ensure that the firewall allows the dxac host to connect to the Delphix Masking engine over these ports. -
Masking admin user
dxac requires Delphix Masking admin user credentials to deploy the masking metadata bundle. -
Masking readiness of the target database
During the deployment process, dxac will try to make a JDBC connection to the target database using the credentials provided in configuration.dxac assumes that the database specific prerequisites have already been met. -
Salesforce login credentials
Login credentials are required by the Delphix Masking engine to authenticate with Salesforce.
Basic Authentication:-
Salesforce username
-
Salesforce user’s password
-
Salesforce user’s security token
-
OAuth2 Based Authentication:
-
A connected app in Salesforce with the following settings:
-
Refresh Token policy set to Refresh token is valid until revoked
-
OAuth Settings checkbox is selected
-
Callback URL set to
http://localhost:33333
-
Selected OAuth Scopes: Full Access(full)
-
-
Client Id from the connected app
-
Client Secret from the connected app
-
Salesforce user permissions
The Salesforce user must have the required read/write privileges on the Salesforce Org that’s being masked.
Refer to Salesforce JDBC Masking documentation for more details. -
Delphix Masking Engine
6.0.15+
Installation
To install dxac, extract the tar (or zip) file into a folder of your choice.
The extraction process will create a folder named dxac-packagedapp-version .This is the working directory for dxac.
Contents of dxac-packagedapp-version folder:
-
resource folder
-
dxac command line tool
Version
To check the version of the dxac command line tool use the below command:
Linux/Mac
./dxac --version
Windows
.\dxac.exe --version
Initialization
Once dxac is installed, the next step is initialization. To initialize dxac, run the following command from the dxac directory using a terminal window (or Powershell).
./dxac config init -r {PATH of the resource directory}
During this step, dxac does the following:
-
creates a log folder under the current working directory.
-
creates a database folder under the current working directory and initializes the dxac database. This database is used to contain the information of the registered Continuous Compliance Engine.
-
creates a dxac_user.config file under the current working directory based on the default configuration file under
/resources/config
folder.
Configuration
Now that dxac is installed, let’s move on to the configuration process.
dxac relies on information in a few configuration files to effectively deploy the masking metadata into a Delphix Masking engine.These configuration files are located inside the /resource folder.
connector.properties
This file, located under /resource/connector directory, contains the information to set up a Connector to the database that is being masked.
Required parameters are tagged with an *.
-
*username: A DB user with the required read/write permissions for masking.
-
connector_name: A user friendly name for the connector. If not provided, a default name will be assigned.
-
schema_name: Schema name of the datasource being masked.
-
database_type: Type of database.
-
kerberos_auth: Whether to use kerberos authentication or not.
-
*jdbc: A full jdbc string to connect to the datasource being masked.
JDBC Connector Info
dxac requires your Salesforce Org’s JDBC url in the connector.properties file under the resource/connector
folder.
Following are the key parameters in a JDBC url that the Delphix Masking engine can use to connect to Salesforce.
Required parameters are tagged with an *.
Parameter |
Description |
---|---|
*rtk |
RTK (runtime key) for the CDATA JDBC Driver. Note: An RTK is not required for Continuous Compliance engine version 7.0.0 onwards. |
*SSLServerCert |
Two options to provide certificate content:
|
UseBulkAPI |
Instructs the CDATA driver to use Salesforce Bulk API |
BulkAPIVersion |
Version of Salesforce Bulk API to use |
Logfile |
Log file for CDATA driver. |
Verbosity |
Verbosity level for the CDATA driver log |
usesandbox |
Must be set to true if masking data in a sandbox. |
BulkAPIConcurrencyMode |
Concurrency mode for the BulkAPI. |
WaitForBulkResults |
When set, the CDATA driver will wait for a commit response from Salesforce before proceeding with the next batch. |
Sample JDBC Url
jdbc:salesforce:UseBulkAPI='true';BulkAPIVersion='v2';Logfile='/path/logfilename';Verbosity=1;rtk='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';usesandbox=true;BulkAPIConcurrencyMode=Parallel;WaitForBulkResults=true;SSLServerCert='-----BEGIN CERTIFICATE----- xxxxxxxxxx -----END CERTIFICATE-----';
Additional Configuration
You can configure the following additional metadata parameters using dxac. These parameters are housed in dxac_user.config under the current working directory.
-
environment_name
Name of the environment to create in the Delphix Masking engine. -
app_name
Name of the application to create in the Delphix Masking engine. -
plugin_name
If a driver support plugin needs to be uploaded, name of the plugin jar file.
The jar file with the same name must be present under /resource/plugin folder. -
driver_name
Name of the driver to use for this deployment.
If dxac is uploading the driver to the Masking engine, then a driver file with the same name must be present in the/resource/jdbc_driver
folder.
Else if the driver has been uploaded to Masking engine before dxac deploys the metadata, then the name of the driver in the Masking engine (Settings Tab -> JDBC Drivers) must be provided to this parameter. -
resource_location
If the resource folder is not located in the directory from where dxac is run, provide the full path to the resource folder(including /resource). -
driver_class_name
This is the class name of the driver in the jar file.
This parameter is required if dxac is uploading a driver to the Delphix Masking engine. -
Cert_name
Name of the certificate chain file that is present under the resource/certs folder.
If dxac is uploading the certificate to the masking engine then a file with the same name should be present under the resource/certs folder. -
Settings_file_ref
It is used to store the file reference path of the OAuth2Settings.txt file after it has been uploaded to the masking engine. It is blank by default. -
Cert_file_ref
It is used to store the file reference path of the certificate mentioned in cert_name, after it has been uploaded to the masking engine. It is blank by default.
All of these parameters can be set/updated using the dxac config update command as follows.
./dxac config update --param-name value
See dxac config documentation for more info.
What’s Next?
You have now installed, initialized and configured dxac successfully.Next step is to deploy the masking metadata to a Delphix Masking Engine.Refer to Deploying Metadata for detailed instructions.
For information on dxac commands, refer to Compliance Accelerator’s CLI References section.