General Customization

This chapter describes how to generally customize the DirX Audit installation and configuration files. The goal is to maintain separate default and customized files.

The next sections describe:

  • General concepts

  • Customization levels and file resolving priority

  • File customization examples

General Concepts

Custom files allow to override default files partially or fully at different customization levels. These levels are described in the next chapter.

Default file:

  • Delivered with the installation

  • Overwritten or deleted during installation/uninstallation/reinstallation

  • Must be present

Custom file:

  • Defined during customization process

  • Kept during installation/uninstallation/reinstallation

  • Optional

When creating customizations, the same folder structure must be preserved.

Customization Levels

The customization can be done at the core level and the tenant level. The core level customization applies to properties set using the Configuration Wizard for the Core Configuration. The tenant level customization applies to all customizable properties. The order is starting from the least specific up to the most specific folder structure.

Tenant Levels

There are four customization levels for the tenant level:

  • Core default – default files for core components with the path starting with:

    install_path/conf/defaults/

  • Tenant default – default files for tenant components with the path starting with:

    install_path/conf/defaults/tenant/

  • Core custom – custom files for core components with the path starting with:

    install_path/conf/

  • Tenant custom – custom files for tenant components with the path starting with:
    install_path/conf/tenants/tenantID/

Core Levels

They consist of Core default and Core custom levels which contain customizable properties declared only for core components. Such properties should not be customized on the tenant level and should be kept in the core level files.

File Resolving Priority

The priority of files to be used depends on the situation and is detailed in the customization process of specific feature. Generally, there are four methods:

  • Finding the first file – it looks for the least specific file (e.g., when searching for report definition file)

  • Finding the last file – it looks for the most specific file (e.g., when searching for SQL script)

  • Merging – it iterates through all available default and custom files in the specific order and merges their content (e.g., JSON and XML files)

  • Custom processing

Examples

Customization paths according to customization levels:

Customizing Configuration Files

When customizing fact configuration files, the merging resolving priority is applied.

Core default path:

  • install_path/conf/defaults/fact-configuration/confFactTables.xml

Core custom path:

  • install_path/conf/fact-configuration/confFactTables.xml

Tenant custom path:

  • install_path/conf/tenants/tenantID/fact-configuration/confFactTables.xml

Customizing SQL Scripts

When customizing SQL scripts, the find last file resolving priority is applied.

If you want to customize SQL scripts, it is possible to do that for all tenants or for a specific tenant. Copy the core default SQL script with the exact folder structure from the folder:

Install_path/conf/defaults/sql/common/folder_structure

into the core custom configuration folder for all tenants in:

  • install_path/conf/sql/common/folder_structure

and/or into the tenant custom configuration folder in:

  • install_path/conf/tenants/tenantID/sql/common/folder_structure
    where tenantID is a unique tenant identifier.

For example, core default SQL script for filling fact table FCT_ACCOUNTS is located at:

install_path/conf/defaults/sql/common/factpopulation/data/fct/FCT_ACCOUNTS/fill_01_FCT_ACCOUNTS_merge_MSSQL.sql

To customize this SQL script, create and modify the script in location:

  • install_path/conf/sql/common/factpopulation/data/fct/FCT_ACCOUNTS/fill_01_FCT_ACCOUNTS_merge_MSSQL.sql

By default, the most specific SQL script that is found, will be used. To customize this SQL script on tenant custom level, create and modify the script in location:

  • install_path/conf/tenants/tenantID/sql/common/factpopulation/data/fct/FCT_ACCOUNTS/fill_01_FCT_ACCOUNTS_merge_MSSQL.sql

Customizing Report Definitions for Dirx Audit Manager Classic

When customizing report definitions, the find first file resolving priority is applied.

Core default path:

  • install_path/conf/defaults/report-definitions/EvnLogins/EvnLogins.xml

Core custom path:

  • install_path/conf/report-definitions/EvnLogins/EvnLogins.xml

Tenant custom path:

  • install_path/conf/tenants/tenantID/report-definitions/EvnLogins/EvnLogins.xml

Customizing Report Definitions for DirX Audit Manager

When customizing report definitions, the find first file resolving priority is applied.

Core default path:

  • install_path/conf/defaults/report-definitions/EvnLogins/EvnLogins.json

Core custom path:

  • install_path/conf/report-definitions/EvnLogins/EvnLogins.json

Tenant custom path:

  • install_path/conf/tenants/tenantID/report-definitions/EvnLogins/EvnLogins.json

Customizing Report Components for DirX Audit Manager

When customizing report components, the merging resolving priority is applied.

Core default path:

  • install_path/conf/defaults/report-components/dxtComponents.json

Core custom path:

  • install_path/conf/report-components/dxtComponents.json

Tenant custom path:

  • install_path/conf/tenants/tenantID/report-components/dxtComponents.json

Customizing Report Indicators and Indicator Queries for DirX Audit Manager

When customizing report indicators, the merging resolving priority is applied.

Core default path:

  • install_path/conf/defaults/report-indicators/dxtIndicators.json

Core custom path:

  • install_path/conf/report-indicators/dxtIndicators.json

Tenant custom path:

  • install_path/conf/tenants/tenantID/report-indicators/dxtIndicators.json

When customizing report indicator queries, the merging resolving priority is applied.

Core default path:

  • install_path/conf/defaults/report-indicators/dxtIndicatorQueries.json

Core custom path:

  • install_path/conf/report-indicators/dxtIndicatorQueries.json

Tenant custom path:

  • install_path/conf/tenants/tenantID/report-indicators/dxtIndicatorQueries.json

For customizing report indicator queries’s SQL scripts, see the chapter “Customizing SQL Scripts”.

Customizing Report Resources

When customizing report resources, the find last file resolving priority is applied.

Core default path:

  • install_path/conf/defaults/reports/HstUsers/HstUsers.jrxml

Core custom path:

  • install_path/conf/reports/HstUsers/HstUsers.jrxml

Tenant custom path:

  • install_path/conf/tenants/tenantID/reports/HstUsers/HstUsers.jrxml