setup-java/.github/workflows
Bruno Borges 1d25252804
chore: Harden workflows: least-privilege permissions + zizmor integration (#1039)
* Harden workflows with least-privilege permissions and zizmor

Apply GitHub Actions security best practices to the action's own
workflows and integrate zizmor to catch regressions.

- Add explicit least-privilege `permissions:` to every workflow
  (contents: read for read-only workflows; default-deny `{}` with
  job-scoped grants for codeql, publish-immutable-actions and
  update-config-files).
- Set `persist-credentials: false` on all checkout steps that don't
  need the GITHUB_TOKEN afterwards.
- Move `${{ ... }}` expansions out of `run:` blocks into `env:` vars
  to avoid template injection.
- Pin the alpine container image (alpine:latest -> alpine:3.21).
- Add a zizmor CI workflow that uploads SARIF to code scanning, plus a
  `.github/zizmor.yml` pinning policy (ref-pin for actions/* and
  github/*, hash-pin for third-party actions).

zizmor now reports no findings (offline and online).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Fix indentation of if: in zizmor SARIF upload step

The `if:` key on the "Upload SARIF results to code scanning" step had no
indentation, producing invalid YAML ("Nested mappings are not allowed in
compact mappings"). This broke `npm run format-check` (prettier) in Basic
validation.

Indent `if:` to 8 spaces so it nests under the step alongside uses/with.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-23 18:10:17 +01:00
..
basic-validation.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
check-dist.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
codeql-analysis.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
e2e-cache-dependency-path.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
e2e-cache.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
e2e-local-file.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
e2e-publishing.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
e2e-versions.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
licensed.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
publish-immutable-actions.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
release-new-action-version.yml Bump actions/publish-action from 0.3.0 to 0.4.0 (#912) 2025-12-03 20:46:45 -06:00
update-config-files.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00
zizmor.yml chore: Harden workflows: least-privilege permissions + zizmor integration (#1039) 2026-06-23 18:10:17 +01:00