Spec: Promote CKV_AZUREPIPELINES_* severity from note to warning
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Tracking issue split out from the diagnostic discussion in #163 so this can be assigned and worked independently. See #163 for the full investigation history.
Spec: Promote CKV_AZUREPIPELINES_* severity from note → warning
The implementation lives in Microsoft's internal Guardian severity-policy, but the acceptance criteria below are verifiable against the public MSDO task's output, so completion can be validated end-to-end without any internal artifacts.
Background
From #163:
- Checkov 3.2.497 produces
CKV_AZUREPIPELINES_1/_2findings againstazure-pipelines.yml. - Guardian's Checkov severity-mapping policy maps these rule IDs to SARIF
level: "note"in the publishedmsdo.sarif. - The SARIF Scans Tab extension's default filter hides
note-level findings, so the results land in the published artifact but are invisible to users by default. - The same mechanism downgrades
CKV_AZURE_177towarning(still visible). The asymmetry betweenwarning(visible) andnote(hidden) is the user-visible bug.
Change
In Guardian's Checkov severity-mapping policy:
- Map every rule whose ID matches
^CKV_AZUREPIPELINES_to SARIFlevel: "warning". - Prefer a prefix/wildcard rule over per-rule entries, so future additions to Checkov's
azure_pipelinesframework inherit the promotion without policy churn. - Place the rule in the same policy file used for the existing
CKV_AZURE_177downgrade, for locality and consistency.
Out of scope
- Upstream Checkov default severities (owned by Prisma Cloud).
- SARIF Scans Tab's default filter — separate UX concern; will be filed as a follow-up.
- Exposing per-rule severity overrides in
.gdnconfig— separate feature.
Acceptance criteria
Each criterion is a hard requirement and must have an automated check or a documented manual verification step.
AC1 — Severity in published SARIF. Running MicrosoftSecurityDevOps@1 (Checkov enabled, default policy: 'azuredevops') against a fixture repo whose azure-pipelines.yml triggers CKV_AZUREPIPELINES_2 (e.g., a step referencing a container image tagged :latest) MUST yield a msdo.sarif where every CKV_AZUREPIPELINES_* result has level == "warning". Verified by:
jq '[.runs[]
| select(.tool.driver.name == "checkov")
| .results[]
| select(.ruleId | startswith("CKV_AZUREPIPELINES_"))
| .level] | unique' /home/vsts/work/1/a/.gdn/msdo.sarif
# Expected: ["warning"]
AC2 — Scans Tab visibility. With the SARIF Scans Tab extension at its default severity filter, CKV_AZUREPIPELINES_* findings MUST appear under the checkov tool collapse without the user enabling "Notes." Verified by screenshot of a build run against the fixture from AC1 attached to the PR.
AC3 — No regression for other Checkov rules. The severity mapping for every rule that is not CKV_AZUREPIPELINES_* MUST be unchanged. Verified by capturing baseline (pre-change) and post-change severity histograms over the fixture from AC1:
jq '[.runs[]
| select(.tool.driver.name == "checkov")
| .results[]
| {ruleId, level}]
| group_by(.ruleId)
| map({ruleId: .[0].ruleId, level: .[0].level})' /home/vsts/work/1/a/.gdn/msdo.sarif
The diff MUST contain only CKV_AZUREPIPELINES_* rows changing from note → warning.
AC4 — Build break unchanged. With MicrosoftSecurityDevOps@1 configured break: true and the default --min-severity Error, AZUREPIPELINES warnings MUST NOT break the build. Verified by running the fixture pipeline twice — once with break: true, once with break: false — both completing with succeeded status.
AC5 — Test coverage. A unit test in Guardian's severity-mapping suite MUST assert the new mapping for at least CKV_AZUREPIPELINES_1 and CKV_AZUREPIPELINES_2. Test placement and framework conventions to follow the existing tests for CKV_AZURE_177.
Deliverables
- Policy change in Guardian (one file).
- Unit test covering AC5.
- Integration fixture under
samples/in this repo (microsoft/security-devops-azdevops) containing a minimalazure-pipelines.ymlthat triggersCKV_AZUREPIPELINES_2, with a shortREADME.mddescribing the expected Scans Tab output. Submit as a separate PR against this repo so the fixture is reusable. - Wiki update on the Home page Checkov section noting that
CKV_AZUREPIPELINES_*surface aswarning-level findings.
Verification commands (paste-ready)
A reviewer should be able to copy these and verify a built artifact:
# All AZUREPIPELINES rules should be warning, none note:
jq '[.runs[] | select(.tool.driver.name=="checkov") | .results[]
| select(.ruleId | startswith("CKV_AZUREPIPELINES_")) | .level] | unique' msdo.sarif
# Verify no rule other than AZUREPIPELINES has flipped:
jq '[.runs[] | select(.tool.driver.name=="checkov") | .results[]
| {ruleId, level}] | unique' msdo.sarif
Definition of done
- AC1–AC5 all pass on a real CI run of the fixture pipeline.
- PR description includes the AC1/AC3 jq outputs and the AC2 screenshot.
- Linked back to #163 and closes it on merge.
Original ask: #163
- Ngôn ngữ chính
- TypeScript
- Star
- 86
- Fork
- 22
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của microsoft/security-devops-azdevops
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 68/100
-
area:task area:tools status:waiting-on-author type:docs type:question
microsoft/security-devops-azdevops#169 · 1 bình luận · 1 người được giao ·
-
Which Defender CLI binary should be used in CI/CD pipelines — `aka.ms` or the DevOps CDN endpoint? Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
microsoft/security-devops-azdevops#166 · 2 bình luận · 1 reaction ·
-
area:task area:tools status:team-review type:docs type:feature
microsoft/security-devops-azdevops#163 · 17 bình luận · 1 người được giao ·
-
enhancement
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
microsoft/security-devops-azdevops#152 · 2 bình luận ·
Tất cả issue của microsoft/security-devops-azdevops
Issue tương tự
-
comp/desktop P3 type/bug
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
NousResearch/hermes-agent#118866 ·
-
Browser Waiting for: Product Owner
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
getsentry/sentry-javascript#24577 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
agilepathway/label-checker#640 ·
-
Plugin stuck at "loading" on DSH 0.1.6-alpha.2 — turnTail list slot registration missing options.id Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
Add 2021 Cup data to website Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
chrisparsons83/flexspotff#153 ·