Beyond Role-Based Access Control
Continue Reading October 1st, 2010 Ben Northrop
When we think about authorization, we often think users, roles, and permissions. Essentially, what a user can do in a system usually boils down to a simple formula:
Role X has Permission Y
—————————–
John has Permission Y
And while this role-based model is effective, intuitive, and easy to implement, unfortunately, in most enterprise applications, it isn’t enough - there are some portion of authorization requirements that can’t be neatly codified in simple user-role-permission relationships.
In this post, I’d like to take a stab at defining some of the tricky (but common) authorization requirements that stretch the boundaries of basic role-based access control. My hope is that by identifying (and putting a name to!) these different types of authorization rules, we’ll be in a better position to determine the authorization solution that best fits our needs - whether it’s a simple role-based approach or a complex policy engine (e.g Oracle Entitlements Server, Cisco’s Policy Manager, etc.).
Ok, here goes…