Skip to main content
Skip table of contents

Copy job

A copy job enables the creation of an independent duplicate of a compliance job, which is essential for supporting Software Development Life Cycle (SDLC) workflows (by enabling the independent management of each job instance). Unique references are maintained for every copied job.

DCT UI process

To execute a copy job through the DCT user interface:

  1. Navigate to the Details page of a compliance job.

  2. Click on the ellipsis in the top right corner and select Copy.

  3. A dialog will appear, prompting you to select the target engine, assign a new name to the job, specify source and target environment details, and add any relevant tags.

API process

To execute a copy job via the DCT API, the request must include the target engine and environment details where the job will be replicated. Using the COPY API with the same target engine and environment acts as a re-sync mechanism, rather than generating a new DCT MaskingJob entity.

Example of API usage for copying a MaskingJob:

CODE
curl -X 'POST' \
  'https://<APPLIANCE_ADDRESS>/v3/masking-jobs/d53812ce-9186-485d-a388-44bc52087ead/copy' \
  -H 'accept: application/json' \
  -H 'Authorization: <API_KEY>' \
  -H 'Content-Type: application/json' \
  -d '{
  "target_engine_id": "2",
  "target_environment_id": "prod-env"
}'

Force overwrite

When copying a compliance job, DCT provides a force overwrite option designed to override any existing environment based objects on the target engine with the same name, ensuring the latest job is applied without needing to manually resolve naming conflicts or version discrepancies. This can be particularly useful when updating a job with significant changes that need to be reflected immediately across environments.

Connector credentials are not automatically copied to the target engine due to security considerations. Therefore, the credentials must be explicitly set on the target engine's connector. DCT facilitates this by allowing the search, update, and testing of connectors directly through its UI.

Examples of managing connectors for a MaskingJob:

Listing connectors

CODE
curl -X 'GET' \
  'https://<APPLIANCE_ADDRESS>/v3/masking-jobs/d53812ce-9186-485d-a388-44bc52087ead/connectors' \
  -H 'accept: application/json' \
  -H 'Authorization: <API_KEY>'

Updating a connector’s credentials

CODE
curl -X 'PATCH' \
  'https://<APPLIANCE_ADDRESS>/v3/connectors/2-DATABASE-23' \
  -H 'accept: application/json' \
  -H 'Authorization: <API_KEY>' \
  -H 'Content-Type: application/json' \
  -d '{
  "username": "USER123",
  "password": "password123"
}'

Testing a connector

CODE
curl -X 'POST' \
  'https://<APPLIANCE_ADDRESS>/v3/connectors/2-DATABASE-23/test' \
  -H 'accept: application/json' \
  -H 'Authorization: <API_KEY>'
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.