Skip to main content

Scanners

vlayer includes five specialized scanners, each targeting a specific area of HIPAA compliance.

Scanner Categories​

ScannerHIPAA SectionWhat It Checks
PHI Detection§164.514Protected health information exposure
Encryption§164.312(a)(2)(iv)Encryption and cryptography standards
Audit Logging§164.312(b)Audit controls and logging
Access Control§164.312(a)(1)Authentication and authorization
Data Retention§164.530(j)Data retention and disposal

How Scanners Work​

Each scanner:

  1. Analyzes files - Reads source code and configuration files
  2. Applies patterns - Uses regex and AST analysis to detect issues
  3. Generates findings - Creates detailed findings with severity and remediation
interface Finding {
category: string;
severity: 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
message: string;
file: string;
line: number;
column?: number;
hipaaReference: string;
remediation?: string;
}

Severity Levels​

LevelDescriptionExample
CRITICALImmediate security/compliance riskHardcoded PHI, no encryption
HIGHLikely compliance violationWeak hashing, missing auth
MEDIUMPotential issue requiring reviewPermissive CORS, missing logs
LOWBest practice recommendationNo retention policy

Running Specific Scanners​

Run only certain scanners:

# Single scanner
vlayer scan . --categories phi-exposure

# Multiple scanners (space-separated)
vlayer scan . --categories phi-exposure encryption audit-logging

File Types Scanned​

By default, vlayer scans:

  • JavaScript/TypeScript: .js, .jsx, .ts, .tsx
  • Configuration: .json, .yaml, .yml, .env
  • Infrastructure: Dockerfile, docker-compose.yml

Customize with --include and --exclude:

vlayer scan . --include "**/*.py" --exclude "**/test/**"

Extending Scanners​

vlayer supports custom rules via YAML configuration. See Custom Rules for details.