Skip to main content
availability

Package: Invicti AppSec Enterprise (on-premise, on-demand)

Checkmarx One SAST Integration

Invicti AppSec supports Checkmarx One SAST as a SAST (Static Application Security Testing) scanner. This guide explains how to activate and configure the Checkmarx One SAST integration.

Checkmarx One is a unified application security platform that provides comprehensive SAST scanning across multiple programming languages.

Prerequisites

Before starting the integration, ensure you have the following information from your Checkmarx One account:

FieldDescriptionRequired
TokenOAuth Refresh Token generated from your Checkmarx One IAMYes
URLYour Checkmarx One IAM URL (e.g., https://<region>.iam.checkmarx.net)Yes
Tenant NameYour Checkmarx One tenant nameYes
InsecureSkip SSL certificate verification (not recommended for production)No

How to Get a Refresh Token (on Checkmarx One Side)

  1. Log in to the Checkmarx One portal.
  2. Navigate to Identity & Access Management (IAM).
  3. Go to API Keys section.
  4. Click Generate API Key.
  5. Copy the generated refresh token and save it securely.

Step 1: Navigate to Integrations

From the left sidebar menu, click on Integrations.

Step 2: Select the SAST Tab

On the Integrations page, you will see the Scanners section with multiple tabs. Click on the SAST tab (it is selected by default).

  Select the SAST Tab   Select the SAST Tab

Step 3: Find and Activate Checkmarx One SAST

Scroll through the list of SAST scanners to find Checkmarx One SAST.

  • If Checkmarx One SAST is not activated, you will see an "Activate" button. Click it to enable the integration.
  • If Checkmarx One SAST is already activated, you will see a toggle switch in the ON position and a "Deactivate" button, along with a gear icon for configuration.
The scan method badge on the Checkmarx One SAST card shows KDT, which means scans are triggered through the Kondukto CLI tool (KDT).

:::

Step 4: Configure Connection Settings

Click on the gear icon on the Checkmarx One SAST card to open the configuration panel. Fill in the required fields:

  1. Token: Paste the OAuth refresh token you generated from Checkmarx One IAM.
  2. Tenant Name: Enter your Checkmarx One tenant name.
  3. URL: Enter your Checkmarx One IAM URL (e.g., https://eu.iam.checkmarx.net).
  4. Insecure: Enable this checkbox only if your Checkmarx One instance uses a self-signed SSL certificate.

  Checkmarx One SAST settings

Step 5: Test the Connection

Click the "Test Connection" button at the bottom of the configuration panel to verify that the provided credentials and URL are correct.

  • If the connection is successful, the integration is ready to use.
  • If the connection fails, verify your refresh token, URL, and tenant name values.
  • For existing integrations, you can use the "Retest Connection" button at the top of the panel.

Step 6: Advanced Settings (Optional)

Click on "Advanced Settings" to expand additional options:

SettingDescriptionDefault
Allow team leads to scan this instancePermits team leads to trigger scans using this Checkmarx One instanceOff
Allow team leads to create new instancesPermits team leads to create additional Checkmarx One instancesOff

After modifying advanced settings, click "Save Advanced Settings" to apply changes.

Summary

StepAction
1Navigate to Integrations from the sidebar
2Select the SAST tab under Scanners
3Find Checkmarx One SAST and click Activate (if not already active)
4Click the gear icon and fill in Token, Tenant Name, and URL
5Click Test Connection to verify
6(Optional) Configure Advanced Settings for team lead permissions

How to Create a Scan

After activating and configuring Checkmarx One SAST, you can create scans from your project's scanner settings.

  1. Go to your Project page.
  2. Click on the Settings tab.
  3. Select Scanners from the left sidebar.

Add Checkmarx One SAST Scanner

  1. In the scanner type dropdown, select SAST.
  2. In the scanner dropdown, search for and select Checkmarx One SAST.
  3. Click the Add button to open the scan configuration drawer.

  Checkmarx One SAST scan creation

Scan Configuration Fields

FieldDescriptionRequired
EnvironmentSelect the environment for the scan (optional)No
ProjectSelect the Checkmarx One project to bind toYes
BranchSpecify the branch to scanNo
Meta DataAdditional metadata for the scan (optional)No
Scan TagTag to identify the scan (optional)No
Start ScanToggle to start the scan immediately on Checkmarx sideNo
Fork Default BranchEnable to fork the default branch before scanningNo

Scheduler

  • Now: Run the scan immediately after saving.
  • Custom Date: Schedule the scan for a specific date and time.

Webhook (Optional)

Enable webhook to trigger scans via actions taken on your application lifecycle management tool:

  1. Check the Trigger scans via actions checkbox.
  2. Select the Platform (e.g., GitHub, GitLab, Bitbucket).
  3. Click Generate to create a Secret Key for webhook authentication.

KDT Command

You can also trigger Checkmarx One SAST scans from your CI/CD pipeline using KDT:

kdt scan -p <project_name> -t checkmarxast -b <branch_name>

Click Save to create the scan configuration.


Troubleshooting

Connection Fails

  • Invalid Token: Ensure the OAuth refresh token is correct and has not expired. Generate a new refresh token from the Checkmarx One IAM portal.
  • Wrong Tenant Name: Verify the tenant name matches your Checkmarx One account exactly.
  • Incorrect URL: Ensure the URL matches your Checkmarx One region (e.g., https://eu.iam.checkmarx.net/ for EU, https://nam.iam.checkmarx.net/ for North America).
  • SSL Certificate Issues: If using a self-hosted instance, enable the Insecure checkbox for self-signed certificates.

Scan Issues

  • No Projects Found: Verify the token has sufficient permissions to list projects in Checkmarx One.
  • Scan Timeout: Large codebases may take longer to scan. Monitor scan status on the Checkmarx One dashboard.
  • Preset Not Found: Ensure the selected scan preset exists in your Checkmarx One account.

Best Practices

  • Use Service Account Tokens: Create a dedicated service account in Checkmarx One for the Invicti AppSec integration.
  • Rotate Tokens Regularly: OAuth refresh tokens should be rotated periodically as part of security hygiene.
  • Select Correct Region: Ensure you are using the correct IAM URL for your Checkmarx One deployment region.
  • Use Specific Presets: Select appropriate scan presets to optimize scan time and result quality.

Limitations

  • Region-Specific URLs: Each Checkmarx One region has its own IAM endpoint. Using the wrong region URL will cause authentication failures.
  • OAuth Flow: The integration uses OAuth refresh tokens, which may have different expiration policies than API keys.
  • Scan Presets: Available scan presets depend on your Checkmarx One subscription level and configuration.

Need help?

Invicti Support team is ready to provide you with technical help. Go to Help Center

Was this page useful?