Skip to content
Glossary · Identity and security

RBAC (role-based access control)

Also called role-based access control.

Definition

An access model where permissions are attached to roles, and people get access by being given a role.

Last updated

What it is.

In RBAC you define roles such as viewer, editor, billing admin and owner. Each role carries a set of permissions, like view invoices or invite users. A person can do something only if one of their roles allows it. NIST published a standard RBAC model, later adopted as ANSI/INCITS 359.

When rules depend on the data itself, such as a manager seeing only their own team, RBAC is often combined with attribute-based checks. Many products use roles for the broad strokes and per-record rules for the rest.

Why it matters

Enterprise customers expect to control who can see and change what, and auditors check that access matches job need. RBAC keeps that manageable: change a role once instead of editing hundreds of users. It also underpins controls like maker-checker, where the person who approves must hold a different role.

In a product build

We check permissions on the server for every action, in one shared policy layer, never only by hiding buttons in the UI. Roles and their permissions are data, so customers can be given custom roles later without a code change.

Watch out

Common mistakes.

  1. 01

    Checking roles only in the front end, so the API still accepts the call.

  2. 02

    Hard-coding role names across the codebase, which makes new roles a big change.

  3. 03

    Role explosion: a new role for every special case until nobody knows what each one does.

Sources

Read the official text.

Primary sources this definition is based on.

Tools

Work it out with a tool.

Related

Related terms.

Building something with this? Ask an engineer.

OceanLab designs and builds production software. Tell us what you are planning and we will reply with how we would approach it.

OceanLab

Enterprise Software Engineering - Human + AI

Languages

Locations

Global Headquarters

21 Merchant Road, 3rd Floor, Singapore 058267

Main corporate office and leadership operations

North America Office

548 Market Street, PMB 12472, San Francisco, CA 94104

Client operations and business development

India Office

402 Shivalik Shilp II, SG Highway, Ahmedabad 380015

Engineering and delivery center

© 2026 - Copyright. All Rights reserved OceanLab