Audit GitHub Actions cloud auth workflows for OIDC hardening gaps like missing id-token write permissions, static cloud secrets, and floating auth action refs.
Use this skill to catch risky cloud-auth patterns in workflow YAML before they become identity or secret exposure incidents.
.github/workflows/*.yml by default)aws-actions/configure-aws-credentialsgoogle-github-actions/authazure/loginpermissions.id-token: writerole-to-assumeaws-access-key-id, aws-secret-access-key, cloud credential secrets)@main, @master, @v1) unless allow-listedOptional:
WORKFLOW_GLOB (default: .github/workflows/*.y*ml)TOP_N (default: 20)OUTPUT_FORMAT (text or json, default: text)WARN_SCORE (default: 3)CRITICAL_SCORE (default: 7)WORKFLOW_FILE_MATCH / WORKFLOW_FILE_EXCLUDE (regex, optional)ALLOW_REF_REGEX (regex, optional) — allow-listed action refsFAIL_ON_CRITICAL (0 or 1, default: 0)Text report:
WORKFLOW_GLOB='.github/workflows/*.yml' \
WARN_SCORE=3 \
CRITICAL_SCORE=7 \
bash skills/github-actions-oidc-hardening-audit/scripts/oidc-hardening-audit.sh
JSON output + fail gate:
WORKFLOW_GLOB='.github/workflows/*.y*ml' \
OUTPUT_FORMAT=json \
FAIL_ON_CRITICAL=1 \
bash skills/github-actions-oidc-hardening-audit/scripts/oidc-hardening-audit.sh
Run against bundled fixtures:
WORKFLOW_GLOB='skills/github-actions-oidc-hardening-audit/fixtures/*.y*ml' \
bash skills/github-actions-oidc-hardening-audit/scripts/oidc-hardening-audit.sh
0 in reporting mode (default)1 when FAIL_ON_CRITICAL=1 and one or more workflows are criticalZIP package — ready to use