Blocking rules are guardrails that define which findings should fail a pull request check or CI pipeline. This helps ensure that your codebase adheres to your organization’s security and quality standards.You can create three types of blocking rules:
Code Vulnerability Rules: Block PRs based on security vulnerabilities, code-quality findings, or both
Dependency Vulnerability Rules: Block PRs based on vulnerable dependencies found by SCA scanning
License Compliance Rules: Block dependencies with specific SPDX licenses or license families
This feature is particularly useful for organizations with strict compliance requirements or those working on mission-critical applications where code quality and security are paramount.
Define rules based on Common Weakness Enumerations (CWEs) to block pull requests that introduce specific types of vulnerabilities or code quality issues.
Customize Urgency Levels
Assign urgency levels (e.g., critical, high, medium, low) to different types of issues, allowing you to prioritize and handle them accordingly.
Filter Dependencies by CVSS
For dependency vulnerability rules, define an inclusive CVSS score range to block vulnerable dependencies based on their CVSS score.
Enforce License Policy
Block dependencies by specific SPDX license IDs or by the Copyleft, Permissive, and Commercial license families.
Project and Tag Scoped Rules
Apply blocking rules to specific projects, project tags, or across your entire organization, giving you granular control over which projects are subject to which rules.
Rule Management
Easily create, edit, and delete blocking rules through a user-friendly interface, ensuring your rules stay up-to-date with your evolving requirements.
Rule Activation/Deactivation
Toggle the status of blocking rules to temporarily enable or disable them as needed, without losing their configurations.
Code Vulnerability: Block pull requests based on code security issues (SAST findings)
Dependency Vulnerability: Block pull requests based on vulnerable dependencies (SCA findings)
License Compliance: Block dependencies based on denied SPDX licenses or license families
3
Basic Information
Enter the rule name and description, then choose Applies To:
Pull Requests automatically enforces the rule in pull request checks.
CI enforces the rule only when a pipeline names it with corgea scan --block-on <slug>. CI rules do not block pull requests.
New rules default to Pull Requests. Corgea generates the slug from the rule name and displays it in the rules list.
4
Configure Settings
For Code Vulnerability rules: Choose an Issue Type to apply the rule to All findings, Vulnerabilities only, or Code Quality findings only. All is the default and preserves the behavior of existing rules. Then select urgency levels (Critical, High, Medium, or Low) and/or target CWEs; at least one of these must be defined for the rule to be valid.For Dependency Vulnerability rules: Choose whether to filter by severity or CVSS score. Select urgency levels (Critical, High, Medium, or Low), or enter a minimum and maximum CVSS score from 0.0 to 10.0 to block vulnerable dependencies within that inclusive range.For License Compliance rules: Select at least one denied license family (Copyleft, Permissive, or Commercial) or enter one or more SPDX license IDs. A dependency is blocked when any reported license matches a selected family or specific ID.
5
Set Scope
Choose applicable projects and/or project tags (optional). A rule applies when a project is selected directly or has any selected tag. If no projects or tags are selected, the rule applies to all projects.
Use search to find rules by name or settings, or filter the list by project tag or Applies To target. The rules table shows each rule’s slug in the ID column and surfaces the project scope, rule type, and Pull Requests or CI target under Triggers On. Select a slug to copy it for use in a CI command. Rules without a project or tag scope apply to all projects, and longer scope lists are grouped behind a +N more tooltip.
Create an active rule with Applies To set to CI, then pass its slug to the scan command. Name rules for the condition that trips them — for example criticals, not no-criticals — so --block-on reads as a direct assertion. --block-on requires Corgea CLI 1.10.0 or later.
corgea scan --block-on criticals
To enforce multiple CI rules, provide their slugs as a comma-separated list. The command fails when a finding violates any named rule. An unknown slug, inactive rule, or rule that applies to pull requests is treated as a configuration error rather than being skipped. --block-on is supported only by the BLAST scanner and cannot be combined with --fail or --fail-on.
Rule Type: Code VulnerabilityCreate a rule targeting CWE-326 (Inadequate Encryption Strength) and CWE-327 (Use of a Broken or Risky Cryptographic Algorithm) with “Critical” urgency to prevent weak encryption usage.
Enforcing Code Quality
Rule Type: Code VulnerabilitySelect Code Quality as the issue type, then set up a rule for CWE-398 (Indicator of Poor Code Quality) and CWE-477 (Use of Obsolete Functions) with “Medium” urgency to maintain code standards.
Blocking Critical Dependency Vulnerabilities
Rule Type: Dependency VulnerabilityCreate a rule with “Critical” and “High” urgency levels selected to automatically block any pull request that introduces dependencies with critical or high-severity vulnerabilities. This ensures your supply chain remains secure and prevents known vulnerable packages from entering your codebase.
Blocking Dependencies by CVSS Range
Rule Type: Dependency VulnerabilityCreate a rule that filters by CVSS score, such as 7.0 to 10.0, to block pull requests that introduce vulnerable dependencies within that score range.
Blocking Copyleft Dependencies
Rule Type: License ComplianceSelect the Copyleft family to block dependencies whose reported licenses belong to that family. Add specific SPDX IDs when your policy needs a narrower denylist.