Example configuration file

Below is an example configuration file with the scan settings. You can set up the configuration when configuring the CI agent or in a text editor. The configuration file supports versioning. If an outdated version is specified, the file will be automatically converted to the new format. If no version is specified, the default file format is considered up to date.

{
    "$schema": "https://json.schemastore.org/aiproj-1.3.json", // JSON schema describing the configuration file
    "Version": "1.3", // Configuration file version: 1.3 for PT AI Enterprise Edition version 4.7.0 or later
    "ProjectName": "Test_Project", // Project name
    "ProgrammingLanguages": ["Php", "Java", "CSharp (Windows, Linux)", "JavaScript"], // Application languages: Java, CSharp (Windows, Linux), CSharp (Windows), VB, Php, JavaScript, Python, ObjectiveC, Swift, Solidity, CAndCPlusPlus, Go, Kotlin, Sql, Ruby
    "ScanModules": ["StaticCodeAnalysis"], // Vulnerability search modules: Configuration, Components, BlackBox, PatternMatching, StaticCodeAnalysis
    "SkipGitIgnoreFiles": true, // Do not scan files and folders specified in .gitignore
    "MailingProjectSettings": {
        "Enabled": true, // Enable emailing of the report after scanning
        "MailProfileName": "MailProfile", // Email profile name
        "EmailRecipients": ["user@email.com"] // List of recipients
    },
    "UseSecurityPolicies": true, // Enable security policy checks
    "UseCustomPmRules": true, // Enable custom analysis rules based on pattern matching
    "PygrepSettings": {
        "RulesDirPath": "", // Path to the folder with custom analysis rules inside the scan target folder
        "CustomParameters": "--log-level debug", // Additional start settings for the analysis module
    },
    "PhpSettings": {
        "CustomParameters": "--log-level debug", // Additional start settings for the analysis module
        "DownloadDependencies": true, // Download dependencies
        "UsePublicAnalysisMethod": false // Search using public and protected methods
    },
    "PythonSettings": {
        "UsePublicAnalysisMethod": true, // Search using public and protected methods
        "DownloadDependencies": false, // Download dependencies
        "CustomParameters": "--log-level debug", // Additional start settings for the analysis module
        "DependenciesPath": "path" // Relative path to the folder with dependencies within the project
    },
    "DotNetSettings": {
        "ProjectType": "Solution", // Project type: Solution, WebSite
        "SolutionFile": "./file.sln", // Path to a solution or project file
        "CustomParameters": null, // Additional start settings for the analysis module
        "DownloadDependencies": false, // Download dependencies
        "UsePublicAnalysisMethod": true // Search using public and protected methods
        },
    "JavaSettings": {
        "Parameters": null, // JVM start options
        "UnpackUserPackages": false, // Unpack custom JAR files
        "UserPackagePrefixes": null, // Prefixes of custom packages
        "Version": "17", // JDK version: 8, 11, 17
        "UsePublicAnalysisMethod": true, // Search using public and protected methods
        "DownloadDependencies": true, // Download dependencies
        "CustomParameters": null, // Additional start settings for the analysis module
        "DependenciesPath": "path" // Relative path to the folder with dependencies within the project
        },
    "JavaScriptSettings": {
        "UsePublicAnalysisMethod": true, // Search using public and protected methods
        "DownloadDependencies": true, // Download dependencies
        "UseTaintAnalysis": true, // Enable the JSA scan module
        "UseJsaAnalysis": true, // Enable the Taint scan module
        "CustomParameters": "" // Additional start settings for the analysis module
        },
    "BlackBoxSettings": {
        AdditionalHttpHeaders": [{"Key": "cache-control", "Value": "no-cache"}], / Additional HTTP headers
        "Level": "Normal", // Search mode: Fast, Normal, Full
        "RunAutocheckAfterScan": false, // Run the automated vulnerability check after scanning
        "ScanScope": "Folder", // Scan scope: Folder, Domain, Path
        "Site": "https://test.com/", // Site address
        "SslCheck": true // HTTPS connection security check
        "Authentication": { // Authentication settings
            "Type": "RawCookie", //Authentication type
            "Cookie": { // Authentication type: Cookie
              "Cookie": "", // An authorized user's cookie
              "ValidationAddress": "", // Address of a redirect page after successful authentication
              "ValidationTemplate": "" // Text that signifies successful authentication
            },
            "Form": { // Authentication type: Form
              "FormDetection": "Manual", // Form detection: Auto, Manual
              "FormAddress": "", // URL of a page that contains the authentication form
              "FormXPath": "", // Form XPath
              "Login": "", // Username for authentication on the site
              "LoginKey": "", // Username identifier
              "Password": "", // Password for authentication on the site
              "PasswordKey": "", // Password identifier
              "ValidationTemplate": "" // Text that signifies successful authentication
            },
            "Http": { // Authentication type: HTTP
              "Login": "", // Username for authentication on the site
              "Password": "", // Password for authentication on the site
              "ValidationAddress": "", // Address of a redirect page after successful authentication
            }
        },
        "WhiteListedAddresses": [
            {
                "Address": "*logout*", // Address from the whitelist
                "Format": "Wildcard" // Address record type: Wildcard, ExactMatch, RegExp
            }
        ],
        "BlackListedAddresses": [
            {
                "Address": "^setup", // Address from the blacklist
                "Format": "RegExp" // Address record type: Wildcard, ExactMatch, RegExp
            }
        ],
        "ProxySettings": { // Proxy server settings
            "Enabled": false,
            "Type": "Http", // Type of connection to the proxy server: Http, Socks4, Socks5
            "Host": "", // IP address or domain name of the proxy server
            "Port": 3128, // Proxy server port
            "Login": "", // Username for connecting to the proxy server
            "Password": "" // Password to connect to the proxy server
        }
    }
}

The website uses cookies according to the cookie policy.