Skip to main content

Configuring Project Rules

Project Rules allow the user to set Parameters on the project level.

Project configuration parameters are higher than the same parameter’s configuration via Configuring Scanner Default Settings.

This means that the parameters will apply to all the scans in the project.

Limitations

  • API Security does not support project rules at present.

  • Parameters that are configured via Configuring Scanner Default Settings are inherited to the project settings only, if the user configured them to Allow Override.

  • In case that Allow Override isn’t enabled for a specific parameter in the Configuring Scanner Default Settings, it won’t appear as an option on the Project Settings level.

  • "Allow override" is selected by default for all the rules under Project Settings.

  • It isn’t possible to configure the same parameter twice (in any configuration level).

  • Each scanner has a different set of parameters.

Notice

Tenant Settings:

6230478012.png

Inherited Settings:

6230969871.png

If a greyed-out defaultConfig.xml file appears in the Project Settings, it indicates that customized settings for the default configuration were implemented at the tenant level with the intention of improving scan results or to assist in troubleshooting issues. Once these settings are established, they are automatically applied to every project. For additional information, reach out to support or contact your Product Account Manager (PAM) directly.

To add a new rule click + Add Rule.

Scanners Parameters Configuration Options

SAST Scanner Parameters

All the Parameters that will be defined for the SAST scanner will be applied for all the Projects that will run SAST scans.

The table below presents all the optional Parameters, and their optional values.

Parameter

Values

Notes

presetName

All the available SAST Presets that exist in the system including ASA Premium Preset

  • For the additional Presets list (including descriptions) go to the following link:

    Predefined Presets

  • The default preset that is used is ASA Premium

filter

Any file type

  • Including a file type - *.java

  • Excluding a file type - !*.java

  • Use “,” sign to chain file types

    for example: *.java,*.js

  • The parameter also supports including/excluding folders.

languageMode

primary / multi

For more information see:

Specifying a Code Language for Scanning

Supported Code Languages and Frameworks:

engineVerbose

true / false

  • true = Enables PRINT_DEBUG mode.

  • false = Enables PRINT_LOG mode.

incremental

true / false

ASA Premium Preset

ASA Premium Preset is a part of the SAST collection of presets.

This Preset is available only for Checkmarx One. Its usage is described in the table below:

Preset

Usage

Includes vulnerability queries for....

ASA Premium

The ASA Premium preset contains a subset of vulnerabilities that Checkmarx AppSec Accelerator team considers to be the starting point of the Checkmarx AppSec program.

The preset might change in future versions. The AppSec Accelerator team will remove old/deprecated queries or include new and improved queries in a continuously manner.

Apex, ASP, CPP, CSharp, Go, Groovy, Java, JavaScript, Kotlin (non-mobile only), Perl, PHP, PLSQL, Python, Ruby, Scala, VB6, VbNet, Cobol, RPG and VbScript coding languages.

ASA Premium Mobile

The ASA Premium Mobile preset is a dedicated preset designed for mobile apps.

The ASA Premium preset contains a subset of vulnerabilities that Checkmarx AppSec Accelerator team considers to be the starting point of the Checkmarx AppSec program.

The preset might change in future versions. The AppSec Accelerator team will remove old/deprecated queries or include new and improved queries in a continuously manner.

Apex, ASP, CPP, CSharp, Go, Groovy, Java, JavaScript, Kotlin (non-mobile only), Perl, PHP, PLSQL, Python, Ruby, Scala, VB6, VbNet, Cobol, RPG and VbScript coding languages.

KICS Scanner Parameters

All the Parameters that will be defined for the KICS scanner will be applied for all the Projects that will run KICS scans.

The table below presents all the optional Parameters, and their optional values.

Parameter

Values

Notes

filter

Any file type

  • Including a file type - *.java

  • Excluding a file type - !*.java

  • Use “,” sign to chain file types.

    for example: *.java,*.js

  • The parameter also supports including/excluding folders.

platforms

Ansible / CloudFormation / Dockerfile / Kubernetes / Terraform

Notice

It is possible to configure one/more values, separated with a comma.

For example: Ansible,CloudFormation,Dockerfile

Warning

Any mistake in the the platform characters will cause an error

SCA Scanner Parameters

All the Parameters that will be defined for the SCA scanner will be applied for all the Projects that will run SCA scans.

The table below presents all the optional Parameters, and their optional values.

Parameter

Values

Notes

filter

Any file type

  • Including a file type - *.java

  • Excluding a file type - !*.java

  • Use “,” sign to chain file types.

    for example: *.java,*.js

  • The parameter also supports including/excluding folders.

lastSastScanTime

Numeric character

Filtering Options

Filtering the scanners parameters is based on Glob.

For more information see Glob Tool

For instance:

  • Exclude all java files: !**/*.java

  • Exclude all files inside a folder Test: !**/Test/**

  • Exclude all files under root folder Test: !Test/**

  • Exclude just the files inside a folder leaving all subfolders content: !**/Test/*

  • Exclude all JavaScript minified files: !**/*.min.js

Note

The rules follow the same logic at tenant & project level.