Blocking rules are powerful guardrails that allow you to define specific conditions under which pull requests should be blocked from being merged. This helps ensure that your codebase adheres to your organization’s security and quality standards by preventing potentially risky or non-compliant code changes from being merged.You can create two 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
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.
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)
3
Basic Information
Enter rule name and description
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.
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 use the project tag filter to show rules that apply to projects with a specific tag. In the rules table, the Projects column shows selected projects and project tags as chips; rules without a project or tag scope show All Projects, and longer scope lists are grouped behind a +N more tooltip.
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.