Authentication

Definition

The process of verifying that a principal (user, device, service) is who it claims to be. Distinct from authorization (what the principal is allowed to do).

Three factors

  1. Something you know — password, PIN
  2. Something you have — token, smart card, phone
  3. Something you are — biometric

MFA combines two or more.

Where it appears

🌐 Networking

  • 802.1X — port-based authentication at L2; supplicant ↔ authenticator ↔ authentication server
  • RADIUS / TACACS+ — centralized AAA for network devices
  • Pre-shared keys — WPA2-PSK, IPsec PSK

🐧 Linux

  • PAM — pluggable authentication modules
  • SSH — public key, password, MFA via PAM
  • sudo — reuses PAM

☁️ Cloud

  • AWS IAM — users, roles, access keys, MFA, AssumeRole
  • Azure Entra ID — managed identities, conditional access, service principals
  • Instance metadata service (IMDS) — implicit machine authentication

📦 Containers

  • Kubernetes ServiceAccount tokens — pod-to-API authentication
  • mTLS — service-to-service inside a mesh

🔄 CI/CD

  • OIDC federation — GitHub Actions → AWS/Azure without long-lived keys
  • Deploy keys / PATs — repo-level access

🔐 Cybersecurity

  • Zero Trust — never trust, always verify
  • Kerberos — ticket-based enterprise authentication
  • SAML / OIDC / OAuth — federated identity

See also