What is authorization? | Transmit Security

Glossary

What is authorization?

Authorization is the process of determining what an authenticated user is allowed to do.
by Transmit Security

Authorization is the process of determining what an authenticated user (or service) is permitted to do (which resources they can access and which actions they can perform) after their identity has been verified. It’s the "what are you allowed to do?" step that follows authentication’s "who are you?", and it’s where access is actually granted or denied.

Authorization is easy to describe and surprisingly hard to do well at scale. As applications grow more complex and architectures shift toward zero trust and APIs, deciding (correctly, for every request) what each identity may do has become one of the thornier problems in security.

Authorization vs. authentication

The two are sequential and distinct. Authentication establishes identity (confirming you are who you claim). Authorization uses that established identity to decide permissions (what you can access). Authentication happens first, typically once at login; authorization happens continuously, on every request for a protected resource. Confusing them causes real vulnerabilities, strong authentication means nothing if authorization fails to properly restrict what the verified user can reach.

How authorization works

At its core, authorization compares a request against a policy: this user, attempting this action, on this resource, in this context, allowed or not? The policy can be simple (an admin flag) or richly conditional (based on roles, attributes, relationships, and risk). Increasingly, authorization decisions are externalized from application code into a dedicated policy engine or service that evaluates each request against centrally-managed rules, so logic isn’t scattered and inconsistent across the codebase.

Authorization models

Several models express "who can do what," each suited to different needs:

  • Role-based access control (RBAC): permissions assigned by role. Simple and common.
  • Attribute-based access control (ABAC): decisions based on attributes of user, resource, and context. Flexible.
  • Relationship-based access control (ReBAC): decisions based on relationships between entities. Powerful for fine-grained, hierarchical data.
  • Fine-grained authorization (FGA): authorization at the level of individual resources and actions, often using ReBAC or ABAC.

Real systems often combine these, matching the model to the sensitivity and complexity of what’s being protected.

The broken-access-control problem

Authorization failures are among the most common and damaging vulnerabilities, "broken access control" consistently tops industry risk rankings (it’s number one on the OWASP Top 10). Typical failures include letting a user change an ID in a URL to view another’s data, or an API endpoint that never checks whether the caller is entitled to the object requested. The lesson is that authorization must be enforced on every request, server-side, against the specific resource, never assumed because the user is authenticated or because the UI hides an option.

Why authorization is getting harder

Two shifts are raising the stakes. Zero-trust architecture requires verifying every request rather than trusting a network location, which multiplies authorization decisions. And APIs and microservices mean far more entry points, each needing fine-grained checks. On top of that, AI agents acting on users’ behalf push authorization toward ephemeral, tightly-scoped grants: an agent should be allowed to do exactly one task, right now, and nothing more. This is why authorization has become its own discipline, with dedicated fine-grained authorization services and models, rather than a few permission checks buried in application logic.

Frequently asked questions

What is authorization?

Determining what an authenticated user or service is allowed to do (which resources and actions they’re permitted) after identity is verified.

What’s the difference between authentication and authorization?

Authentication proves who you are; authorization decides what you can do. Authentication comes first, authorization on every request.

What are the main authorization models?

RBAC (by role), ABAC (by attributes), ReBAC (by relationships), and fine-grained authorization for per-resource control.

What is broken access control?

A failure where authenticated users can reach resources or actions they shouldn’t, the top item on the OWASP Top 10.

Why is authorization becoming harder?

Zero trust and APIs multiply per-request decisions, and AI agents require tightly-scoped, ephemeral permissions.

Related: Authentication vs. Authorization · Fine-Grained Authorization (FGA) · Role-Based Access Control (RBAC) · Attribute-Based Access Control (ABAC) · Zero Trust · Principle of Least Privilege

Request a Demo

By clicking the button, you agree to the Terms and Conditions