Section 29 · Code Quality & Architecture

Secrets Management

How secrets are stored, loaded, and protected across environments

6 items 6 recommended

This guide walks you through auditing a project's secrets management practices - how secrets are stored, loaded, and protected.

The Goal: Zero Leaked Secrets

Secrets should be impossible to leak through code, impossible to access without authorization, and impossible to share across environments.

  • Managed secrets — production credentials in a dedicated secret manager with rotation and audit trails
  • Environment injection — secrets loaded via environment variables at startup, never read from files at runtime
  • No git exposure — nothing committed to version control, with scanning to prevent future leaks
  • Isolated environments — dev, staging, and prod use completely separate credentials
  • Least privilege — access follows principle of minimal permissions with proper service accounts and controls

Before You Start

  1. Identify deployment target (GCP, AWS, Azure, self-hosted, etc.)
  2. Identify secret manager in use (GCP Secret Manager, AWS Secrets Manager, Vault, Doppler, etc.)
  3. Understand deployment method (Kubernetes, Docker, serverless, VMs, etc.)
  4. Check for existing secret scanning tools (gitleaks, trufflehog, GitHub secret scanning)