27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

It is worth to point out that in recent years, there has been<br />

a new emphasis on applying formal testing to check local<br />

security policies [3, 11].<br />

It has been argued, usually with very good arguments,<br />

both that formal methods are very appropriate to guide the<br />

development of systems and that, in practice, they are useless<br />

since software development teams are usually not very<br />

knowledgeable of formal methods in general, and have no<br />

knowledge at all of what academia is currently developing<br />

(see, for example, [9, 1] among many others). To solve<br />

this, in this paper we present our formal testing methodology<br />

[11] in an informal way. We present the modeling of<br />

the specification, the test architecture, and the test case generation<br />

using our experiences obtained from the application<br />

of our methodology in real systems. Moreover, we present<br />

a complete case study where the net of two hospitals organizations<br />

is tested.<br />

The rest of the paper is structured as follows. In Section<br />

2 we present the environment where we apply the testing<br />

task. In Section 3 our methodology to test virtual organizations<br />

is introduced. Next, in Section 4 a complete<br />

case study where our methodology is applied is presented.<br />

Finally, in Section 5 we present the conclusions and some<br />

lines of future work.<br />

2. Testing Hypothesis in a Organization to Organization<br />

Environment<br />

In this Section we present the Organization to Organization,<br />

in short O2O, environment that we are going to test in<br />

order to list a set of assumptions that we can assume during<br />

the testing task. We introduce the basic principles of O2O<br />

presenting our running example. This example is depicted<br />

in Figure 1. There are represented two organizations A and<br />

B that might share resources. Each organization has its local<br />

set of security policies that defines the roles and the access<br />

for its employees. This fact is graphically represented by<br />

“orgA” and “orgB” respectively. When there is an exchange<br />

of information between different organizations, the notion<br />

of local policies must be extended.<br />

According to O2O, each organization defines its own Virtual<br />

Private Organization, in short VPO. A VPO is associated<br />

with an interoperability security policy that administrate<br />

the access of external users to the organization resources.<br />

In Figure 1 we represent these VPOs as “VPO A2B ”<br />

and “VPO B2A ” respectively. In particular, VPO A2B is associated<br />

with a security policy that manages how employees<br />

from organization A, called O-grantee in O2O, may have an<br />

access to the resources of organization B, called O-grantor<br />

in O2O.<br />

An important notion in O2O is the concept of authority<br />

sphere. This sphere restricts the scope of every security rule<br />

to the organization in which the rule is applied. Each organization<br />

has its own sphere, as we can observe in Figure 1.<br />

<br />

<br />

<br />

<br />

Figure 1. Interaction in O2O.<br />

<br />

Thus, in this paper we focus in testing each authority sphere.<br />

In each authority sphere O2O uses context [7] to express different<br />

types of extra conditions or constraints that control<br />

the activation of rules expressed in the access control policy.<br />

There are several types of context defined for O2O. For<br />

instance the temporal context that depends on the time at<br />

which the subject is requesting for an access to the system<br />

or the special context that depends on the subject location.<br />

Taking into account the information provided by the contexts<br />

of the security rules, we can assume the following<br />

testing hypothesis. We are provided with a global clock to<br />

check the temporal contexts. This fact allow us to describe<br />

the scenarios for the tests using time restrictions in an easy<br />

way. We can monitor into logs at most this information: the<br />

software and the hardware architecture, the subject purpose,<br />

the system database, and the historical interactions.<br />

Each organization that belongs to a net O2O has associated<br />

a set of security policies for local employees and several<br />

VPOs, one for each organization that belongs to the net.<br />

Finally, the interoperability security policies of the VPOs are<br />

considered provided by experts in a formal way. Moreover,<br />

security policy properties such as completeness and consistency<br />

are considered verified. In particular, we say that a<br />

security policy is complete if it computes at least one decision<br />

for every incoming request, and it is consistent if for<br />

any request the policy computes at most one decision.<br />

3. Testing Approach<br />

In this Section we present our testing approach. Our<br />

main goal is to generate test cases to stimulate the O-grantee<br />

to send specific requests to the O-grantor. These requests<br />

target the security rules to be tested. We assume that we<br />

have only access to the O-grantee system. For each request<br />

sent from the O-grantor one and only one security rule<br />

can be involved 1 . After applying the test case, we check<br />

that the set of received outputs conforms with the test case<br />

1 Let us remark that the interoperability security policy is consistent and<br />

decision complete.<br />

465

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!