Enterprise Application Roles Management - Cleansing and Segregation of Duties Approach

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

Enterprise Application Roles Management –

cleansing and segregation of duties approach


G. Mateescu*, M.Vladescu*, V.Dache* and M.Caraivan*
*
Faculty of Automatics and Computer Science
Polytechnic University of Bucharest
Bucharest, Romania
georgiana.mateescu@gmail.com, vladescumariusnicolae@yahoo.com, caraivanmitrut@yahoo.com ,
valisor02@yahoo.com

Abstract— The present paper aims to present an approach


to manage the enterprise application roles during their life
cycle. The paper starts with a brief introduction that
presents the need and the importance of role management in
a healthy and secured enterprise. In the second section, we
detailed each step performed in order to ensure a sanitized
role environment. Starting from job title analysis, we
performed role engineering based on relevant statistics and
we targeted the majority of the company population.

Based on risk ranking algorithm, the roles are provisioned


to specific users ensuring in this way that the segregation of
duties is efficiently performed. At the end of our process we
adopt a certification based strategy for the migration
between current situation and the new role access matrix Figure 1. RBAC Model[8]
built with this approach.
2. Role authorization – the role assignment must be
The paper ends with the main points and conclusions. first authorized by the proper person. The role
authorization is made usually based on specific
I. INTRODUCTION rules that describe in their substance a measure
The primary purpose of application roles is to allow of role criticality.
users to perform operations that require certain access
rights in the enterprise application. From security 3. Permission authorization – one person can
perspective, all operations must be “safe” – in terms of
exercise permission in an application only if the
protecting the data involved from cyber attacks and being
compliant with the regulation specific in each domain. authorized role that has been assigned to him
The reason why application roles management is always a contains that permission.
hot topic in all internal and external security audits is its Moving deeper into this model, in order to ensure its
main purpose: to emphasize the whole picture of the
full efficiency and success in creating a secured
company‘s everyday workflows and processes (the roles
are the mean by which critical and non-critical operations enterprise application context, the roles themselves must
executed on sensitive or non-sensitive data are related to have several characteristics. Among these properties we
the people who are executing them). can mention:
RBAC [1] it’s a concept introduced in 1992 that offered  A new role should appear as need to streamline
at that time a new approach regarding the access an existing workflow in the application – and
management– starting from network access and ending should be created after all interacting data
with application access. David Ferraiolo and Rick Kuhn workflows and involved actors and systems
explained in their paper [1] why this model is optimal and
why a non-discretionary access control is more where analyzed – this analysis should be prior to
appropriate in non-military environments. the creation of the role and should target the
areas where the application that owns the role is
II. ENVIRONMENT ROLES MODEL running.
The main characteristics of RBAC model – that we  A new role should be created for a considerable
will leverage in this paper are: population ( a role should be created when at
1. Role assignment – one person can perform a least 10% of the active population in the
specific operation on a specific data set only if application will have benefits of it or when the
the appropriate role is assigned to him. role will be used to simplify existing workflow –
this may include decommission other roles ).
 A role should have a defined list of specific in the role access matrix – the same job title had
properties of its members – meaning that from different access in the application based on part
audit perspective is very important to have of the country the user works in).
specific target that ensures a correct Segregation  All roles in the application in scope will be
of Duties. We will talk more about Segregation granted automatically to a user according to his
of Duties in third section. job title and if the user requires in his every day
 A role should have specific rules assigned to it job more roles, he can request them via self
depending on the targets defined in the previous service and specific approval workflow is
step. These rules include both assignment and triggered before the role is provisioned.
decommission phases in the role lifecycle.
 A role should include the description of all its Our process (Appendix 1 Figure 3 – Role Cleansing
Process) begun with a strong analysis regarding the
permissions together with the data that can be
existing job titles and their population. From this
processed using the role. perspective we made the following statistics:
 A role should have attached the authorization  Total number of job titles vs. the population –
policies stating the types of authorizer, the this analysis revealed a lot of useful information:
authorization periodicity and authorization 20% of the actual job titles covered 80% of total
workflow (the approvers and the approval population, while 60% of them have less than 10
levels). members. Finally the other 20% of the job titles
has a mean coverage. After this analysis we
III. ROLE CLEANSING PROCESS decided to decommission 30% of the job titles –
mainly these were very similar job titles and the
The role cleansing process started with the following
facts: only difference between them was the specific
 Our scope included a number of six applications period of the year as these job titles were
that covers different areas in a telecom company assigned to promoting personnel.
including: retention, billing, customer  For the remaining job titles, we analyzed how
management, fraud, service desk application, many have direct impact in our target
ordering. application – here the number of the job titles
 In application the implemented access model went even slower because only half on them
was RBAC. were in our scope.
 The role in each application was driven by the  We grouped in scope job titles based on
employee job title – and as exception the departments and we tried to make a hierarchy of
employee could request account in an the job titles in order to help us on a future
application by following an two levels approval hierarchy in the application roles.
workflow.
The next step was to analyze each application in
 Each role was composed by atomic permission order to establish a criterion for roles compatibility
in four of the six applications and in each one of ranking in that specific application. In order to that we
these there were specific rights that could not be used the following terminology:
combined (from segregation of duties  discriminator – one permission belonging to a
perspective). Because of these a lot of roles were role that makes that role incompatible with other
very similar, the only difference between their one very similar with it, the similarity residing in
permissions was the discriminator specified the others permissions – two roles having one
earlier. discriminator cannot be combined;
 There was one application where the roles were  differentiator – one permission belonging to a
not rules driven and because of that a lot of role that makes that role different from other
duplicates were found. one – two or more roles having differentiators
 In one application there were two different can be combined;
dimensions regarding the mean to process data  duplicate – a role very similar with other role.
in the system: a user could operate the data using Related to the second role, the first one has no
his specific roles, but he had some additional discriminator, but insignificant differentiator.
privileges depending on the group he was  container – a role that includes the main
member in (in fact the groups were the permissions of other role and ensures that by
implementation of the geographical dimension assigning it to a user that previously had the
included role, he will be able to perform all
required operations on the specific set of data
without broking the segregation of duties
principles. The roles from this category have as
discriminators mainly the ability to generate
specific type of report that the user having the
included role is not able to run, but the reports
data in the data the user operates.

In this phase we analyze each application and define


for each of them discriminators, differentiators,
duplicates and containers. This analysis is made based on
two different dimensions: the job titles to which the roles
Figure 2. Segregation of Duties Components[9].
are assigned and the department where the job titles
Segregation of duties may be within an application or
belong.
within the infrastructure. In this section I will talk about
The output of this phase was the decommissioning of
segregation of duties in enterprise applications.
30% of the roles – mainly the duplicates and the roles
From security perspective, segregation of duties is a
included in containers, but also some deprecated roles.
key fact that ensures:
Other 20% of the roles were combined based on their
differentiators – this category affected 30% of total job  Regulatory Compliance – in each domain there
titles number and was the hardest process because it had a are laws protecting the confidential and sensitive
lot of dimensions: permissions in application, job title, data of being processed by anyone. The
department, and interaction with other application in regulatory compliance is a point of interest in
scope. The main strategy adopted was to give more every single company and it can be easily
permissions rather than to cut them because, from the achieved using a proper approach and strategy
business perspective there was no one affected in terms of
regarding segregation of duties process.
not being able to do their everyday jobs and in terms of
security the additional permissions were very specific  Security and Data Management –monitoring
ones, that in order to be exploited require additional and controlling security and access to data
training and the awareness of the user that he has the within the organization is harder to achieve
specific permission. because of all advanced hacking methods. This
The last step was to associate each of the new/old characteristic refers to all data source involved
roles to the specific job titles and the specific department
in an enterprise – starting from the authoritative
and analyze them together from the Segregation of Duties
perspective taking in count the interaction between in or trusted source of information, continuing with
scope applications and their specific. the data processed in enterprise applications and
This step will be detailed in the next section and it ending with data target systems. In order to
had as output the new role-access matrix that was tested ensure a high level of the security, automatic
and validated by business people. provision processes defined by rules and
IV. SEGREGATION OF DUTIES
authorization workflows must be implemented,
processes that make the overall activity from
Segregation of Duties [3] is the separation of
incompatible roles and permissions associated with roles both business and security perspective more
that could allow one person to commit and conceal fraud efficient and optimal.
that may result in financial loss or misstatement to the  Access Management – Provisioning and
company management of users access to applications have
not been enforced, resulting in authorization
processes prior to provisioning process that
based on the specific criticality of the user
requires fewer or more steps of approvals
performed by security staff within the company.

In our role management process we had to deal with


the Segregation of Duties concept in all six applications.
In order to achieve it we used criticality ranking attributes
for the roles involved that associate to each role a score
from 1 (least critical) to 5 (most critical). In terms of
correlations of roles, after a strong comparison between
the roles we decided that several roles in combination roles in the business context and they can provide either big
will increase the criticality rank and because of that we improvement in business processes which leads to increase
developed a simple logic that correlates the roles and of profitability, either big losses through fraud or cyber
generates the criticality score based on the roles that are attacks.
automatically provisioned in the application based on the Our approach aims to sanitize the existing environment
job title and on the others applications provisioned for from un-useful and us-secured roles and to standardize the
that job title. role provisioning process in order to automate it. We
If the user request a specific role in one application, managed to clean the roles in the applications in scope
the ranking algorithm computes the criticality score and making them more reliable on everyday business
based on this one an approval workflow is triggered – if workflows. Also we decreased the number of service desk
the score is behind 3 the requester manager and the tickets with 30% because of the automatic provisioning
requested application owner approve and if the score is ensuring a stable system that will no longer be vulnerable
above 3 additional approval step is performed and it is on human errors or intended malicious actions.
assigned to one member of audit team. From the audit perspective we managed to offer a real
Also we implemented access policies – both positive and transparent picture of the environments ensuring that all
and negative – meaning that, depending on his job title, the certification actions are taken based on correlated and
several roles were automatically granted to the user, but complete data.
also the incompatible roles from segregation of duties
perspective were denied. This means that the user will not REFERENCES
be able to request the specified roles and the only way he [1] Role-Based Access Controls - David F. Ferraiolo and D. Richard
could have them provisioned would be if his manager Kuhn
[2] Role-Based Access Control Models Ravi S. Sandhu Edward J.
requests on behalf on him. In this last case, the first level Coyne Hal L. Feinstein and Charles E. Youman
of approval is the application owner and the second one is [3] http://isacahi.org/downloads/Deloitte_SOD.pdf
one member of audit team. [4] Defining Strategies and Roles - A. Scott DuPree and David
In order to ensure that an employee doesn’t have too Winder with Cristina Parnetti, Chandni Prasad and Shari Turitz
many critical roles associated with it, we used several [5] Segregation of duties - Governance, Risk and Compliance Starter
techniques that monitor user’s activity in terms of Pack;
http://www.pwc.com/en_SG/sg/advisory/assets/GRC2009QuickSt
exception role requests: art.pdf
 Each manager receives on a monthly bases a [6] http://docs.oracle.com/cd/E21764_01/doc.1111/e14309/segduties.
report that presents the situation of the users htm
under his supervision additional roles in [7] http://docs.oracle.com/cd/E24179_01/doc.1111/e23369/oiaidentity
certs.html
applications (additional roles refer to the roles [8] http://www.openiam.com/products/access-manager/features/rbac/
that are not automatically provisioned based on [9] http://www.auditbots.com/sox-sap-audit-solution/
job title).
 Each manager receives yearly a certification
requests that reports the existing roles in the
application for all his direct reports and ask the
manager to take an action for each one these
roles: either to attest, to reject or to delegate the
attestation.

These two types of activities were meant to prepare


the company compliance from the security audit
perspective and to give to the management chain a more
accurate image about the real situations in the target
systems.
In order to be able to propagate this approach in as-is
context we used the certification process that generates a
comparison between what roles should a user have
according to the new role access matrix and what does he
really have in the system. All the requests for certification
were sent to each manager and we used notification to
inform the user about the new legitimate accesses.

SUMMARY AND CONCLUSIONS


Nowadays most of enterprise applications implement
the RBAC model in order to ensure compliance and
efficiency in executing business workflows. Because of
this, the application roles play one of the most important
APPENDIX 1
Role Management Process Flow

Start
System
HRSystem

Analyze Job
Titles
HR

Generate Role
Access Matrix
Systems

Analyze
TargetSystems

Application
Roles

Define
Target

discriminators,
differentiators,
duplicates
and containers
management
management
system
system

Generate
Role

Decommission Apply new Implement


Role

criticality Implement
and Update Roles on Role Segregation of End
ranking Certification
Roles Access Matrix Duties
algorithm

Figure 3. Role Cleansing Process

You might also like