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.

Testing Interoperability Security Policies ∗<br />

Mazen EL Maarabani 1 César Andrés 2 Ana Cavalli 1<br />

1 TELECOM & Management SudParis<br />

CNRS UMR Samovar, Evry, France<br />

e-mail: {mazen.el maarabani, Ana.Cavalli}@it-sudparis.eu<br />

2 Dpto de Sistemas Informáticos y Computación<br />

Universidad Complutense de Madrid, Spain<br />

e-mail: c.andres@fdi.ucm.es<br />

Abstract<br />

Testing is one of the most widely used techniques to increase<br />

the quality and reliability of complex software systems.<br />

In this paper we present the notion of testing interoperability<br />

security rules in virtual organizations. In particular,<br />

we incorporate mechanisms to test those interactions<br />

among the organizations of the business communities when<br />

the resources are shared. In order to apply our technique to<br />

increase the confidence on the correctness of these systems,<br />

we need to obtain a set of tests compiling the relevant properties<br />

of the interoperability security policies. We present a<br />

model based testing approach for checking the correctness<br />

of these policies in this environment.<br />

In addition to provide the theoretical framework, we<br />

show how this formalism, based on extended finite automata,<br />

has been used to test a hospital scenario. This exercise<br />

convinced us that a formal approach to test systems<br />

can facilitate some of the development phases. In particular,<br />

how to choose which tests to apply, is simplified since<br />

tests are automatically extracted from the specification.<br />

Keywords: Integrity, Testing, Quality, Interoperability<br />

Security Policy.<br />

1. Introduction<br />

Among those areas where the development of Computer<br />

Science has changed our society during the last years, the<br />

relevance of the collaboration among different information<br />

systems is remarkable [2]. In particular, there is a strong<br />

demand for access control of distributed shared resources<br />

in Virtual Organizations, in short VO [8] where the classical<br />

notion of client server architecture is obsolete and use-<br />

∗ Research partially supported by the ISER project and the TESIS<br />

project (TIN2009-14312-C02-01). The work was carried out while the<br />

second author was visiting TELECOM SudParis.<br />

less. In particular, a VO is composed of several organizations<br />

and their employees, where they share some services<br />

or resources among them. Cross-organizational interoperability<br />

is a major challenge to VO applications [6]. To be<br />

able to specify not only the functional aspect of a VO but<br />

also those aspects that guarantee the interoperability security<br />

policies is an industrial necessity [12]. Currently, we<br />

cannot dissociate the functional aspect of a system from its<br />

security consideration. Let us remark that security policies<br />

restraint the behavior of a system in order to guarantee a certain<br />

level of security. Moreover, it is possible that a security<br />

policy adds new behaviors to the system such as obligation<br />

actions in the case where these actions are not supported by<br />

the system. Therefore, checking only the functional part of<br />

a system is not sufficient to guarantee that a system behaves<br />

as required and provides the intended services, this process<br />

requires the application of sound techniques.<br />

Formal methods refer to techniques based on mathematics<br />

for the specification, development, and verification of<br />

software and hardware systems. The use of formal methods<br />

is especially important in reliable systems where, due to<br />

safety and security reasons, it is important to ensure that errors<br />

are not included during the development process. Formal<br />

methods are particularly effective when used early in<br />

the development process, at the requirements and specification<br />

levels, but can be used for a completely formal development<br />

of a system. One of the advantages of using a formal<br />

representation of systems is that it allows to rigorously<br />

analyze their properties. In particular, it helps to establish<br />

the correctness of the system with respect to the specification<br />

or the fulfillment of a specific set of requirements, to<br />

check the semantic equivalence of two systems, to analyze<br />

the preference of a system to another one with respect to a<br />

given criterion, to predict the possibility of incorrect behaviors,<br />

to establish the performance level of a system, etc. In<br />

this line, formal testing techniques [10] can be used to test<br />

the correctness of a system with respect to a specification.<br />

464

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

Saved successfully!

Ooh no, something went wrong!