Connect APVISO with GitLab
Integrate APVISO scans into GitLab CI/CD pipelines. Create issues from findings and display results in merge request security reports.
Why connect APVISO with GitLab?
Native Security Report Integration
APVISO outputs results in GitLab's DAST report format, so findings appear natively in the Security Dashboard and merge request security widgets.
Pipeline-Integrated Scanning
Add APVISO as a CI/CD stage that runs alongside your existing tests. Fail pipelines when critical vulnerabilities are discovered.
Merge Request Gating
Block merge requests that introduce new vulnerabilities. GitLab's approval rules can require security team sign-off when APVISO findings are present.
Issue Board Integration
Automatically create GitLab issues with severity labels and link them to the merge request that triggered the scan.
Setup Guide
Create an APVISO API Token
Generate an API token in your APVISO dashboard under Settings > API Keys. This token will be used by the GitLab CI runner to authenticate with APVISO.
Add CI/CD Variables
Store the APVISO API token as a masked CI/CD variable in your GitLab project or group settings. Add the target URL as another variable or derive it from your review app configuration.
Add APVISO to Your .gitlab-ci.yml
Include the APVISO scan job template in your pipeline configuration. The job runs the APVISO CLI, triggers a scan, waits for completion, and outputs a GitLab-compatible DAST report artifact.
Configure Security Approval Rules
Optionally set up GitLab approval rules that require security team review when the APVISO scan stage finds new vulnerabilities in a merge request.
Features
- GitLab CI/CD pipeline integration with DAST report output
- Native Security Dashboard compatibility
- Merge request security widget showing new vs. existing vulnerabilities
- Auto-create GitLab issues from pentest findings
- Review app scanning for dynamic merge request environments
- Group-level configuration for multi-project setups
- Scheduled pipeline scans with comprehensive scan profiles
How APVISO Integrates with GitLab
APVISO's GitLab integration provides deep, native security testing within your GitLab CI/CD pipelines. Unlike generic webhook integrations, APVISO produces DAST-format report artifacts that plug directly into GitLab's Security Dashboard, merge request security widgets, and vulnerability management features.
Native GitLab Security Reports
The key differentiator of APVISO's GitLab integration is native report compatibility. When the APVISO scan job runs in your pipeline, it outputs a gl-dast-report.json artifact in GitLab's expected DAST format. This means APVISO findings appear in:
- Project Security Dashboard: View all APVISO findings alongside results from SAST, dependency scanning, and other security tools
- Merge Request Security Widget: See which vulnerabilities are new in the current MR vs. already existing on the default branch
- Group Security Dashboard: Aggregate APVISO findings across all projects in your GitLab group for an organization-wide security view
This native integration eliminates the need to switch between APVISO and GitLab to manage vulnerabilities. Your existing GitLab security workflows — approval rules, vulnerability dismissals, issue creation — all work seamlessly with APVISO findings.
Pipeline Configuration
Adding APVISO to your .gitlab-ci.yml is straightforward. The scan job uses the APVISO CLI image, authenticates with your API key stored as a CI/CD variable, triggers a scan against your target, polls for completion, and saves the results as a DAST report artifact. The job can be configured to fail the pipeline based on severity thresholds — for example, failing on any Critical finding while allowing Medium and Low findings to pass.
For organizations with many projects, you can define the APVISO scan job in a shared CI/CD template at the group level. Individual projects inherit the template and only need to set their specific target URL variable.
Review App Scanning
GitLab's review app feature deploys each merge request to a unique URL for testing. APVISO can scan these review app deployments, providing security testing against the exact code changes in a merge request. The pipeline passes the review app URL as a variable to the APVISO scan job.
This pattern is powerful because it catches vulnerabilities before they reach the default branch. When a developer opens a merge request that introduces a new API endpoint with an injection flaw, APVISO detects it in the review app scan and the merge request security widget flags it as a new vulnerability — before any reviewer even looks at the code.
Merge Request Security Gating
By combining APVISO scans with GitLab's approval rules, you can enforce security review when vulnerabilities are present. Configure an approval rule that requires a member of the security team to approve any merge request where the APVISO scan found new Critical or High findings. This creates a hard security gate that ensures critical vulnerabilities receive human review before merging.
For less severe findings, you can take a softer approach: allow the merge request to proceed but automatically create a GitLab issue for the team to address. The issue is linked to the merge request for traceability and includes the full finding details from APVISO.
Issue Creation and Tracking
APVISO can create GitLab issues for each finding, populated with the vulnerability details, reproduction steps, severity label, and a link to the full finding in the APVISO dashboard. Issues are automatically assigned the appropriate severity and vulnerability-type labels (~security-critical, ~vulnerability::xss, etc.) and can be routed to milestone boards or assigned to specific team members.
When a finding is resolved in a subsequent scan, APVISO can close the corresponding GitLab issue or add a comment noting the resolution. This creates a complete audit trail from discovery through remediation.
Scheduled Comprehensive Scans
While merge request scans use a quick profile to keep pipeline times reasonable, you can schedule comprehensive scans using GitLab's pipeline schedules. Run a full APVISO scan nightly or weekly against your production or staging environment, with the results appearing in the Security Dashboard. Any new findings are automatically filed as issues with a scheduled-scan label.
This dual approach — quick scans in MR pipelines and comprehensive scheduled scans — provides both developer-friendly fast feedback and thorough periodic security coverage.
Frequently Asked Questions
Does APVISO work with GitLab's Security Dashboard?▾
Yes. APVISO produces artifacts in GitLab's DAST report format, so findings appear natively in your project and group Security Dashboards alongside results from other security tools.
Can I scan GitLab review apps?▾
Yes. Pass the review app URL as a dynamic variable to the APVISO scan job. The base domain must have ownership verification completed in APVISO.
Is this compatible with GitLab SaaS and self-managed instances?▾
Yes. The integration works with GitLab.com SaaS, GitLab self-managed, and GitLab Dedicated. For self-managed instances, ensure your runners can reach the APVISO API.
How does APVISO differentiate new findings from existing ones in MRs?▾
APVISO fingerprints each finding and compares it against the default branch baseline. The merge request security widget shows only net-new vulnerabilities introduced by the changes in that MR.
Related Integrations
Related Terms
Connect APVISO with GitLab today
Set up the GitLab integration in minutes and start routing security findings to your team.
Get Started