Cloud Identity, Service Principals, and Managed Identities

Summary

This note explains the difference between human identity, workload identity, and cloud-managed identity. The goal is to make access design in AWS or Azure easier to reason about before touching policy or deployment details.

Why this matters

  • cloud access becomes confusing when people and workloads are treated like the same type of identity
  • many deployment problems are really identity problems in disguise
  • a cleaner model helps with least privilege, secrets handling, and troubleshooting

Environment / Scope

ItemValue
Topiccloud identity model
Best use for this noteunderstanding who or what is acting in cloud operations
Main focushuman identities, service identities, managed identities
Safe to practise?yes

Core distinction

Identity typeWhat it representsTypical use
Human identitya real administrator, engineer, or support userportal access, CLI work, approvals, troubleshooting
Service principal / application identityan app or automation acting against cloud APIsCI/CD, deployment tooling, automation workflows
Managed identitya cloud-managed workload identity attached to a resourceapp-to-resource authentication without storing secrets manually

Mental model

Think about access like this:

person signs in -> operates manually
pipeline or app acts -> needs non-human identity
cloud resource needs API access -> managed identity is often the safer path

The main question is always: who or what is actually making the request?

Everyday examples

SituationBetter identity model
engineer runs Terraform locallyhuman identity with the right role or scoped credentials
GitHub Actions deploys infrastructureservice principal or equivalent workload identity
web app needs to read a secret or talk to storagemanaged identity if the platform supports it
support engineer checks a failed deploymenthuman identity for investigation, not app credentials

Common misunderstandings

MisunderstandingBetter explanation
”The app can just reuse my account”workloads should not depend on human identities
”A service principal is the same thing as a user”it is a non-human identity used by automation or apps
”Managed identity is just another secret”its value is that secret handling is reduced or abstracted away
”If access fails, the app must be broken”identity scope or missing role assignment may be the real cause

Decision test

Ask these questions:

  1. is the actor a person or a workload?
  2. does this access need to exist continuously or only during deployment?
  3. can the platform provide a managed identity instead of stored credentials?
  4. what is the narrowest role or permission path that still works?

Key takeaways

  • human access and workload access should be modelled separately
  • service principals and managed identities solve different but related problems
  • identity design affects security, troubleshooting, and operational clarity