The attacker was not human.
Non-human identities now outnumber human accounts in most systems. Service accounts, machine identities, automation scripts, CI/CD tokens — they run the core of every modern application. They also create surface areas most access control models ignore. Risk-based access for non-human identities is no longer optional. It is the only sane way to control trust at scale.
Risk-based access evaluates context before granting permissions. For human users, this often means location, device health, or login history. For non-human identities, context looks different. You must consider runtime environment, code origin, token issuance patterns, network paths, and workload integrity. Without this, a leaked credential acts as a permanent master key.
Static roles fail against attackers exploiting machine accounts. Non-human identities rarely rotate credentials. They often operate with broad, unchecked permissions. Risk-based controls apply dynamic checks before executing actions: verifying whether the requesting workload matches expected fingerprints, limiting access scope at runtime, and enforcing expiration based on real activity.