Inara Crest Technologies — home
Cart, empty

Popular searches

BlogSoftware

Building role-based access control into business software

By Micah Ondiwa, Senior Software Engineer 1 min read

Roles, permissions and server-side checks keep users to the data and actions their job requires.

In most organisations, not everyone should see or change everything. Role-based access control (RBAC) puts that principle into software.

Model roles on real jobs

Define roles from how the organisation works — cashier, supervisor, accountant, clinician, administrator — and give each the permissions its tasks need.

Check on the server

Hiding a button is not security. Every request must be checked on the server against the user's permissions, including API calls and exports.

Consider data scope

Permissions often depend on data as well as actions: a branch manager sees their own branch; a clinician sees their own patients. Build scope into queries so data never leaks.

Separate duties

For sensitive processes, require a second person: the person who raises a payment cannot approve it.

Make administration easy

Administrators need clear screens to assign roles and review who has access. Review access regularly and remove what is no longer needed.

Log sensitive actions

Record who viewed or changed sensitive records, and when.

See how we build secure business systems.

About the author

Micah Ondiwa

Senior Software Engineer

Micah Ondiwa writes about software engineering — application architecture, APIs and integration, data and AI-assisted development, and reliable delivery.

All blog