Skip to content

Merge pull request #43 from RamosJSouza/fix/auth-security-hardening #47

Merge pull request #43 from RamosJSouza/fix/auth-security-hardening

Merge pull request #43 from RamosJSouza/fix/auth-security-hardening #47

Workflow file for this run

name: Security Scan (Weekly)

Check failure on line 1 in .github/workflows/security.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/security.yml

Invalid workflow file

(Line: 68, Col: 9): Unrecognized named-value: 'secrets'. Located at position 1 within expression: secrets.SNYK_TOKEN != ''
on:
schedule:
# Todo domingo às 02:00 UTC
- cron: '0 2 * * 0'
workflow_dispatch:
permissions:
contents: read
security-events: write
jobs:
npm-audit:
name: npm audit
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '24'
cache: 'npm'
- run: npm ci
- name: npm audit (moderate+)
run: npm audit --audit-level=moderate
continue-on-error: true
- name: npm audit report (JSON)
run: npm audit --json > npm-audit-report.json || true
- name: Upload audit report
uses: actions/upload-artifact@v4
with:
name: npm-audit-report
path: npm-audit-report.json
retention-days: 30
trivy-fs:
name: Trivy Filesystem Scan
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Trivy filesystem scan (SARIF)
uses: aquasecurity/trivy-action@master
with:
scan-type: 'fs'
scan-ref: '.'
format: 'sarif'
output: 'trivy-fs-results.sarif'
severity: 'CRITICAL,HIGH,MEDIUM'
ignore-unfixed: false
- name: Upload SARIF to GitHub Security tab
uses: github/codeql-action/upload-sarif@v3
if: always()
with:
sarif_file: 'trivy-fs-results.sarif'
snyk:
name: Snyk Dependency Scan
runs-on: ubuntu-latest
if: ${{ secrets.SNYK_TOKEN != '' }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '24'
cache: 'npm'
- run: npm ci
- name: Snyk test
uses: snyk/actions/node@master
continue-on-error: true
env:
SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
with:
args: --severity-threshold=high --sarif-file-output=snyk.sarif
- name: Upload Snyk SARIF
uses: github/codeql-action/upload-sarif@v3
if: always()
with:
sarif_file: snyk.sarif
codeql:
name: CodeQL Analysis
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- uses: actions/checkout@v4
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: javascript-typescript
queries: security-and-quality
- name: Autobuild
uses: github/codeql-action/autobuild@v3
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: '/language:javascript-typescript'