• No results found

Transformation of Spatio-Temporal Role Based Access Control Speciation to Alloy MEDI 2012

N/A
N/A
Protected

Academic year: 2021

Share "Transformation of Spatio-Temporal Role Based Access Control Speciation to Alloy MEDI 2012"

Copied!
20
0
0

Loading.... (view fulltext now)

Full text

(1)

School of Computer Science

University of Birmingham UK

Transformation of Spatio-Temporal Role Based

Access Control Speciation to Alloy

MEDI 2012

MEDI 2012

Emsaieb Geepalla

[email protected]

Behzad Bordbar

[email protected]

Joel Last

[email protected]

(2)

1. Introduction

-

STRBAC

-

Alloy

-

Motivation

2. Concluded Work

-

STRBAC to Alloy Transformation

-

AC2Alloy

-

Results

3. Conclusions

Presentation Foot Steps

Presentation Foot Steps

School of Computer Science University of Birmingham, UK

(3)

The Basic Concepts of STRBAC

The Basic Concepts of STRBAC

STRBAC

: An extension of the original RBAC model that supports temporal and

location constraints.

Software Engineering Group School of Computer Science 04 | Oct | 2012

(4)

Cont

Cont

Software Engineering Group School of Computer Science University of Birmingham, UK 04 | Oct | 2012

(5)

The Basic Concepts of STRBAC

The Basic Concepts of STRBAC

Software Engineering Group School of Computer Science 04 | Oct | 2012

(6)

Inconsistencies in STRBAC

Inconsistencies in STRBAC

Specification

Specification

Due to the complexity and the size of modern system, it is possible

that several STRBAC polices conflict with each other

Software Engineering Group School of Computer Science University of Birmingham, UK 04 | Oct | 2012

(7)

Alloy

Alloy

Alloy is a formal specification language that has developed by Daniel Jackson

[1]

Alloy is supported by a fully automated constraint solver, called Alloy

Analyser, that analyses system properties

Alloy analyser search for model instances that violate checks about them.

Alloy Analyser translates the model into a Boolean expression, and analyses it

using embedded SAT-solvers.

[1] Jackson.Daniel (2006), Software Abstractions Logic, Language, and Analysis,

Cambridge: The Mit Press.

Software Engineering Group School of Computer Science 04 | Oct | 2012

(8)

School of Computer Science University of Birmingham, UK

Motivation

Motivation

1.1 Motiva

t

The prevention of fraud is more beneficial to organisations than its detection

after it had occurred. “Wrong access might result in a huge lose”

Alloy has been used successfully for automatic verification of Access Control

policies.

Some practically minded software engineers find Alloy hard .

The Complexity and the size of modern Access control systems.

Idea: provide a tool to assist in writing Alloy to simplify process

of Model Analysis

(9)

Alloy

Metam

odel

Alloy

Metam

odel

Alloy Modal

(Target

Model)

Alloy Modal

(Target

Model)

STRBAC

Metamod

el

STRBAC

Metamod

el

STRBAC Modal

(Source

Model)

STRBAC Modal

(Source

Model)

SiTra – A MT

Library

SiTra – A MT

Library

Mapping

Rules

Mapping

Rules

A Model Transformation from STRBAC to Alloy

STRBAC to Alloy Transformation

STRBAC to Alloy Transformation

(10)

STRBAC Meta Model (A Fragment)

STRBAC Meta Model (A Fragment)

Software Engineering Group School of Computer Science University of Birmingham, UK 04 | Oct | 2012

(11)

Alloy Meta Model (A Fragment)

Alloy Meta Model (A Fragment)

Software Engineering Group School of Computer Science 04 | Oct | 2012

(12)

Transformation Rules

Transformation Rules

Software Engineering Group School of Computer Science University of Birmingham, UK 04 | Oct | 2012

(13)

Example

Example

Consider an Access control model system which consists of the following Users: Dave,

Mark, Sarah, the following Locations: office1 and office2, the following Times: DayTime

and NightTime, the following Permissions: Read and Write Teller Files, Read and Write

Loan Files and Read and Write System Operator Manager Files, and the following Roles:

Teller, Loan Officers and System Operator Manager (SOM) .

Rule 1:Transformation of Users

abstract

sig Users {}

One

sig Dave, Mark, Sarah

extends

Users {}

Rule 2:Transformation of Permissions

abstract

sig Permissions{}

One

sig ReadWriteTellerFiles, ReadWriteLoanFiles,

ReadWriteSOMFiles

extends

Users {}

Software Engineering Group School of Computer Science 04 | Oct | 2012

(14)

Cont

Cont

Rule 5: Transformation of Roles

abstract

sig Roles{time:

lone

Times,

location:

lone

Locations,

permissions:

set

Permissions,

users:

set

Users}

one

sig teller, LoanOfficer, SOM

extends

Users {}

fact

SOMFact {

all

self:SOM | SOMCondition[self]}

pred

SOMCondition[self:SOM]{((self.permissions=

none

)&&

(self.location=

none

)&&(self.time=

none

)&&(self.users=

none

))}

The transformation of URA, PRA, RH & LH will update the predicates for every role

with new user to role assignment and permission to role assignment.

Rule 6: Transformation of User Role Assignment (URA)

For example, URA={(Mark, SOM, DayTime, Office1)

pred

SOMCondition[self:SOM]{((self.permissions=

none

)&&

(self.location=

Office1

)&&(self.time=

DayTime

)&&(self.users=

Mark

))}

Software Engineering Group School of Computer Science University of Birmingham, UK 04 | Oct | 2012

(15)

Cont

Cont

The other STRBAC elements such as SoDR, SoDP, CCR, & CCP will be transformed to

Alloy checks.

Rule 10: Transformation of Separation of Duty over Permissions (SoDP)

For example, SoDP={(Read and Write Teller Files, Read and Write Loan Files,

DayTime, Office1)

pred

SODP[p1, p2:Permission, l:Location, t:Time] {

all

r1:Role |

((p1

in

r1.permissions)&&(t

in

r1.time)&&(l

in

r1.location)))

((p2

not in

r1.permissions)&&(t

in

r1.time)&&(l

in

r1.location))}

SoDP1 :

check

{ SODP[ ReadandWriteTellerFiles, ReadandWriteLoanFiles,

DayTime, Office1]}

Software Engineering Group School of Computer Science 04 | Oct | 2012

(16)

AC2Alloy

AC2Alloy

Software Engineering Group School of Computer Science University of Birmingham, UK

AC2Alloy is a tool for integrating STRBAC and Alloy into a single tool.

It enables the user to create STRBAC specification and conduct the analysis via

Alloy.

(17)

How AC2Alloy works?

How AC2Alloy works?

Software Engineering Group School of Computer Science 04 | Oct | 2012

(18)

Results

Results

Our method has been tested using a simplified SECURE Bank System

Transform the SECURE Bank Specification successfully and very quickly to Alloy

code

Inconsistencies in the SECURE Bank Specification have been detected

04 | Oct | 2012 Software Engineering Group

School of Computer Science University of Birmingham, UK

(19)

S

c

h

o

o

l o

f C

o

m

p

u

te

r

S

c

ie

n

c

e

U

n

iv

e

rs

it

y

o

f B

ir

m

in

g

h

a

m

, U

K

Conclusion

Conclusion

The proposed approach also ensures the creation of consistent Alloy

codes.

AC2Alloy softens the process of Alloy creation

STRBAC to Alloy Transformation can provide a simple means of analysis

and verification of the given STRBAC specification.

(20)

Software Engineering Group School of Computer Science University of Birmingham, UK

Thank You!

References

Related documents

MongoDB integrates a role-based access control (RBAC) [2] model which supports user and role management and enforces access control at the collection level.. However, no support

The RBAC model and functional specification are organized into four RBAC components: Core RBAC, Hierarchical RBAC, Static Separation of Duty (SSD) Relations, and Dynamic

Our proposed solution is to build a dynamic user-oriented role-based access control model (DUO-RBAC), which uses a new dynamic algorithm that depends on

of the aforementioned can assign rules to Rel + since it is not necessary to assign such roles to non-target users; (2) if administrative roles of the aforementioned can assign

Thanks to conceptual graphs, we can provide a consistent graphical formalism for role-based access control policies, able to deal with specificities of this model such as role

In this section, a collaboration diagram for multiple secure domain management architecture is present. Assume that all single secure domains are based on the ORBAC model, a user in

The dynamic user-oriented RMP, is an algorithm to insert a new UP A dataset to the existing user-oriented RBAC model that is generated from running user-oriented exact RMP algorithm

With the concept of proactive scenario, we showed how to provide data coming from the sensors as a source of attributes for the ABAC model. More- over, in these scenarios, the data