Before
- Static secrets in environment variables
- Shared certificates across services
- Manual certificate rotation (or none at all)
- Network location used as proxy for identity
- IP-based firewall rules that break with auto-scaling
Module 1 of 13
Why perimeter security fails and how identity-based security changes everything
Start here
Before
After
For decades, enterprise security followed a simple model: build a strong perimeter, trust everything inside it. Firewalls guarded the boundary. VPNs extended the trusted zone. If a request came from inside the network, it was assumed to be legitimate.
This model is fundamentally broken in cloud-native systems. Containers spin up and down in seconds. Pods get random IP addresses. Services communicate across clusters, clouds, and regions. The “perimeter” does not exist anymore.
Enterprise security evolved through three eras:
In a Kubernetes cluster, a pod’s IP address changes every time it restarts. Auto-scaling creates new replicas with new IPs. Service mesh proxies forward traffic, masking the original source. Network policies can restrict which namespaces can communicate, but they cannot verify which specific service is making the request.
The fundamental problem: network location is not identity. An attacker who compromises one pod in a namespace can impersonate any other pod in that namespace because network policies only check source/destination labels, not cryptographic identity.
We solved human identity years ago with SSO, OAuth, and multi-factor authentication. A developer logs in with their credentials and gets a token that proves who they are. But what about the services themselves?
Workload identity gives every service, container, and process its own cryptographic identity — just like a human has a username and password, a workload gets a cryptographic certificate. This identity is automatically issued, short-lived, automatically rotated, and cryptographically verifiable without a central authority.
Without workload identity, teams resort to shared secrets in environment variables (leaked in logs, source control, and crash dumps), long-lived API keys (never rotated, shared across environments), service account tokens (broad permissions, no mutual verification), and IP-based allow lists (break with auto-scaling and container orchestration).
Each of these is a security vulnerability waiting to happen. SPIFFE and SPIRE replace all of them with a single, standards-based identity system.
| Level | Description | Technologies |
|---|---|---|
| Level 0 | No identity verification between services | Flat network, shared secrets |
| Level 1 | Network segmentation and basic auth | NetworkPolicies, API keys |
| Level 2 | Service-level mTLS with long-lived certs | cert-manager, Vault PKI |
| Level 3 | Automatic workload identity with short-lived certs | SPIFFE/SPIRE |
| Level 4 | Identity-aware authorization with policy engines | SPIRE + OPA + Envoy |
This course takes you from Level 0 to Level 4.
Honest understanding of limitations builds real expertise:
| Responsibility | Tool | Question Answered |
|---|---|---|
| Identity | SPIFFE (spec) | What is this workload called? |
| Identity Issuance | SPIRE (runtime) | How does it get its identity? |
| Authentication | mTLS / SVID verification | Is this really who they claim to be? |
| Authorization | OPA / Policy Engine | Is this workload allowed to do this action? |
Many learners wrongly assume SPIFFE equals authorization. It does not. SPIFFE handles identity and authentication. Authorization is a separate concern addressed in Module 7.
Real world
Production notes
Common mistakes
Security risks
Think like an engineer
Key terms
Security model that requires verification of every request regardless of source location
Cryptographic identity assigned to a service, container, or process
Mutual TLS — both client and server verify each other's certificates
Traditional model that trusts everything inside the network boundary
Secure Production Identity Framework For Everyone — the open standard for workload identity
SPIFFE Verifiable Identity Document — a certificate or JWT proving workload identity
Labs
Compare network-based security with identity-based security by observing service communication patterns.
Capture and inspect unencrypted service-to-service traffic to understand the attack surface.
Recap
Related resources