Because a valid identity token only proves who the requester is, not what they may do. In distributed systems, edge verification can confirm a session or principal, but the actual permission decision still has to happen close to the resource or action being protected.
Why the Two Controls Serve Different Security Questions
authentication and authorization solve different problems, so collapsing them into one control creates blind spots. Authentication answers whether a requester is a valid principal, while authorization answers whether that principal may perform a specific action on a specific resource. In distributed applications, those checks often happen at different layers because trust, latency, and blast radius are not the same everywhere.
That split matters most when a request crosses a gateway, service mesh, API boundary, or internal microservice hop. A front door can validate a token and still know almost nothing about whether the caller should read a record, invoke a function, or act on behalf of another tenant. For a practical reference on how these layers separate in identity design, see IAM and IGA Basics.
Distributed systems also change the authorization problem itself. A central login check can be stable, but permissions are usually contextual: tenant, object, scope, environment, time, and delegation state can all affect the correct decision. That is why authorization tends to live closer to the resource, policy engine, or service enforcing the action.
What Breaks When You Reuse One Control for Both
When authentication and authorization are merged, teams often end up trusting the wrong proof. A token, session, or mTLS client identity may be valid, yet still not authorize the requested operation. If the service only checks that the caller is signed in, attackers can reuse a legitimate identity to overreach into data or functions they were never meant to access.
In distributed apps, that mistake often shows up as coarse gateway-only enforcement, static roles, or stale permission caches. Those patterns can work for simple apps, but they degrade quickly when users, services, and agents act across many APIs and back-end resources. The more distributed the system, the more likely the correct answer depends on the exact object, method, and context of the request.
Role design also matters. If authorization is too broad, authentication becomes a weak gate that only proves possession of a credential. If authorization is too fragmented, teams create inconsistent access rules across services. The better pattern is to keep identity proofing and session validation distinct from per-action authorization logic, then align them through shared policy and clear ownership. The Authorisation Models Guide is useful for choosing the right model for that second decision.
How Distributed Authorization Should Be Enforced
In a distributed design, authentication should establish a trustworthy principal, while each protected service should make or receive the authorization decision it needs. That usually means the edge verifies the token, but the service still checks entitlement, scope, tenant, or policy before releasing the resource. For sensitive systems, that decision may be externalized so the application can ask a policy engine instead of hard-coding access logic everywhere.
This separation also helps with delegation and machine-to-machine traffic. A service identity may authenticate successfully, but its effective permissions should remain narrow, short-lived, and specific to the task. Separate controls make it easier to keep service credentials from becoming standing superuser access. For a deeper treatment of this pattern, the AI Agent Authorisation Guide is a good example of per-action permissioning, even when the same principle applies to non-agent services.
External standards reinforce the same architecture. In OAuth-based systems, authentication and authorization are intentionally distinct layers, and the authorization server should not be treated as a mere login endpoint. The resource server still has to decide what the token holder can do with the specific resource it protects. That is the control boundary distributed apps need to preserve.
Risk and Threat Considerations
When authentication and authorization are blurred together, a valid credential can become broader access than intended. The common failure mode is not broken login, but over-trust: one good session, token, or service identity is allowed to reach too much data or too many actions because the service skipped a fresh permission check.
Failure mechanism: An attacker, insider, or compromised service reuses a legitimate identity to move from “can sign in” to “can perform privileged actions,” especially where edge validation is treated as sufficient and downstream services do not re-evaluate scope or entitlement.
Impact: The result can be object-level exposure, unauthorized transactions, tenant breakout, or lateral movement across internal services. In distributed apps, that risk scales quickly because one weak permission boundary can be reused across many APIs, workloads, or environments.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
NIST SP 800-53 Rev 5 and OWASP ASVS set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| NIST SP 800-53 Rev 5 | IA-2 — Identification and Authentication (Organizational Users) | Authentication must establish the requester’s identity before access is considered. |
| AC-3 — Access Enforcement | Distributed services need an access decision at the point of resource enforcement. | |
| IA-9 — Service Identification and Authentication | Distributed apps often rely on service-to-service identities that must authenticate separately. | |
| Recommendation — Implement IA-2 to prove organizational user identity before granting access. Apply AC-3 to enforce authorization where each protected resource is accessed. Use IA-9 to authenticate services and workloads before they call protected APIs. | ||
| OWASP ASVS | V6 — Authentication | The question distinguishes proving identity from deciding access in application flows. |
| V8 — Authorization | The question centers on separate permission checks for protected actions and objects. | |
| Recommendation — Verify V6 controls for how the application proves the caller’s identity. Verify V8 controls so each sensitive action is explicitly authorized. | ||
Practitioner Guidance
What to verify: Check that every sensitive action has an authorization decision at the point of enforcement, not only at login or gateway entry. If a service can change state, read protected objects, or act on behalf of another principal, it needs an explicit permission rule tied to that action.
Decision rule: If the check only answers “who are you?”, treat it as authentication and do not let it stand in for authorization. If the action changes data, money, configuration, or cross-tenant visibility, require a separate policy decision, even when the caller already has a valid token.
What practitioners underestimate: The hardest part is not writing the first access rule, it is keeping the rule consistent as services multiply. Distributed systems need clear ownership of the authorization logic, otherwise teams drift into duplicated checks, stale assumptions, and accidental privilege expansion.
Practitioner takeaway: Separate controls keep identity proof, session validity, and permission decisions from collapsing into one weak trust step, which is the only way to preserve least privilege at distributed scale.
Related resources from NHI Mgmt Group
- How should developers add authentication and authorization to AI-assisted apps without rebuilding security controls from scratch?
- Why do API gateways need both authentication and authorization controls in distributed environments?
- Should organisations separate authentication from authorization in .NET apps?
- How should security teams separate authentication from authorization in practice?
Deepen Your Knowledge
Free weekly newsletter
Subscribe to the NHI & AI Identity Journal
The latest on NHI and Agentic AI security – articles, research, breaches, news and events every week.
Bonus 33% off our NHI Course when you subscribe.
Reviewed and updated by the NHIMG editorial team on October 22, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org