Untitled Document
The case for entitlements
An increasing source of worry for organizations is making sure users are accessing
only the functions and data they are entitled to. The recent increase in identity
theft and insider threats has led organizations to focus on Entitlements Management
(EM), the practice of establishing formal access controls within applications
to protect sensitive functionality and information from the wrong users.
EM as a concept is nothing new. Years ago, when multi-user applications became
widespread, there was a need to protect sensitive information and transactions
from different types of users. It was common practice to incorporate entitlements
as part of the business logic of the application itself. Experiences have proven
limitations with that model and the modern approach is to externalize entitlements
away from the application.
Externalized entitlements separate authorization logic from business logic,
resulting in increased transparency as the entitlements are now understandable
and measurable beyond the context of the application. This enables companies
to review entitlement policies for completeness and accuracy against corporate
standards.
Another benefit of EM is policy lifecycle management. Suppose an application
presents sensitive customer information such as a Social Security Number. It
is determined that only managers and senior representatives may view this data.
When the application shows an SSN, a decision is made as to whether the user
may view the data or default value (e.g. "XXX-XX-XXXX"). The decision
takes into account the user's job title and salary grade.
Now assume the policy must be modified after the application has been put into
production. The business has determined that a senior representatives in Texas
may not view an SSN. This is an exceptional situation that requires another
piece of information to be considered as part of the entitlement decision. If
the application developers were clever, they would have put the SSN entitlement
logic into a reusable component so the code needs to be changed only once.
But what if we take the example even further? Suppose that when SSNs are shown
temporarily (such as in a browser window), senior representatives may view them.
Only managers, however, can request SSNs on a printed display such as a report.
Now the entitlement logic is split in two separate decisions based on output
type. Again the business logic must be adapted.
-1-