When access control is only checked in the UI or at login, attackers can call protected APIs, change object identifiers, or invoke functions they should never reach. The result is often horizontal or vertical privilege abuse, where authenticated users act outside their intended scope. Server-side authorization must enforce both who the user is and what that user may do.
Where server-side authorization actually lives
broken access control becomes dangerous when the server treats the browser or app shell as the authority. A hidden button, disabled menu item, or route guard can improve usability, but it cannot be the final decision point for access. The server must recheck every sensitive request against the authenticated subject, the target object, and the action being attempted.
This matters because many failures are not about “logging in” at all, they are about authorization drift after login. If the server does not evaluate the request context, users can replay requests, alter identifiers, or call functions directly through APIs that were never intended to be exposed to them.
Broken object-level and function-level checks are the usual breakpoints. If the application allows object references to be changed without verifying ownership or role scope, the attacker does not need a UI path. If a function is reachable but not re-authorised server-side, the permission gap becomes the vulnerability.
What actually breaks when controls are only enforced in the UI
The first thing that breaks is the trust boundary between presentation and enforcement. The UI can show what a user is expected to do, but it cannot safely decide what the user is allowed to do. Once attackers understand that gap, they can move from visual restrictions to direct request manipulation.
That usually means one of three outcomes: protected APIs become callable, object identifiers become editable, or privileged functions become reachable outside the intended workflow. In practice, these are the same failure expressed at different layers of the stack. The weakness is not the screen, it is the missing server-side policy decision behind it.
For practitioners, this is why access control should be designed around enforcement points, not pages. A secure UI with weak backend checks is still vulnerable, because the browser is only one client of the system. Any other client, scripted request, mobile app, integration, or direct API caller will bypass those front-end assumptions.
Why the blast radius becomes horizontal or vertical privilege abuse
When server-side enforcement is absent or inconsistent, authenticated users can often move laterally across peer accounts or upward into administrative capabilities. Horizontal abuse appears when one user can reach another user’s data or actions. Vertical abuse appears when a non-admin can invoke admin-only behaviour or elevated workflows.
The practical risk is that the attacker does not need to break authentication to succeed. They only need a request path that the server accepts without re-validating privilege, ownership, or scope. That makes broken access control especially damaging in APIs, where object references and function names are often easy to infer or enumerate.
In mature environments, this is where authorisation models matter. Clear policy boundaries, least privilege, and explicit per-action checks reduce the chance that a single missed server-side control turns into broad exposure. NHIMG’s Authorisation Models Guide is useful for understanding how RBAC, ABAC, ReBAC, and policy-based approaches change the enforcement model behind the UI.
What to verify before you trust an access control implementation
Server-side authorization should be verified at every protected endpoint, not only at login and not only in the front end. The strongest test is simple: if a caller changes the object ID, role, tenant, or function target, does the server still deny the action when the caller lacks that exact entitlement?
That verification should extend to APIs, background jobs, and admin paths that are reachable through alternate clients. It is also important to test for indirect exposure, where a request is accepted but the response leaks data or side effects outside the caller’s scope. Those failures often look like “business logic” issues until they are treated as access control problems.
For identity and access governance, the key control question is whether the authorization logic is centralised and consistently enforced. NHIMG’s IAM and IGA Basics helps frame the difference between authentication, authorization, entitlements, and reviewable access decisions. For API-heavy systems, OWASP API Security Top 10 is the right reference for broken object and function level authorization failure modes.
Risk and Threat Considerations
When access control is not enforced server-side, the risk is not just a UI bypass, it is direct request tampering against protected business functions. Attackers do not need a valid screen path if the backend accepts altered identifiers, weakly scoped tokens, or unauthorised function calls.
Failure mechanism: The server relies on front-end restrictions, incomplete API checks, or implicit trust in the authenticated session, so request-level authorization is never fully re-evaluated.
Impact: Users can access other users’ records, perform actions outside their role, or reach administrative capabilities, creating data exposure, fraud potential, and broader privilege abuse.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
OWASP API Security Top 10 addresses the attack and risk surface, while OWASP ASVS and NIST SP 800-53 Rev 5 set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| OWASP API Security Top 10 | API1 — Broken Object Level Authorization | Directly addresses object-id tampering and unauthorized access to other users' data. |
| API5 — Broken Function Level Authorization | Covers direct invocation of functions users should not reach. | |
| Recommendation — Enforce object-level checks on every API request before returning or mutating data. Authorize each sensitive function server-side before execution. | ||
| OWASP ASVS | V8 — Authorization | ASVS formalizes server-side access checks, role scope, and authorization enforcement. |
| Recommendation — Verify backend authorization for every protected action and object access path. | ||
| NIST SP 800-53 Rev 5 | AC-3 — Access Enforcement | Requires enforcing approved authorizations on system access and actions. |
| AC-6 — Least Privilege | Limiting permissions reduces horizontal and vertical privilege abuse when checks fail. | |
| Recommendation — Apply access-enforcement checks at the server for each protected operation. Restrict privileges to the minimum needed for each role or service. | ||
Practitioner Guidance
What to prioritise: Treat every server endpoint as an authorization decision point. If the endpoint can read, update, delete, approve, export, or invoke another function, it needs an explicit backend policy check tied to the caller, the object, and the action.
What to verify: Test for direct object reference changes, function replay, and alternate-client access before trusting any UI control. If a hidden button is the only thing stopping access, assume the control fails.
Common mistake: Teams often secure the visible workflow and miss the API path behind it. The safer assumption is that anything the browser can ask for, an attacker can also ask for directly.
Practitioner takeaway: Broken access control is only “fixed” when the server independently denies unauthorised requests, because the UI can guide intent but it cannot enforce privilege.
Related resources from NHI Mgmt Group
- What breaks when access control is only documented and not enforced at runtime?
- What breaks when broken access control is treated as a purely application-layer issue?
- Why do server-side rendering features create more risk for secrets and access control?
- What breaks when age assurance depends on server-side access to biometrics?
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 12, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org