Security Types for Sessions and Pipelines

The growing importance of service-oriented computing has triggered development of formal computational models for service description and orchestration. Several versions of the Service Centered Calculus (SCC) and its successor, the Calculus of Services with Pipelines and Sessions (CaSPiS) have emerged as outcome of those studies, and are based on the notion of interaction patterns called sessions between the service and the client who invokes it. We propose a security oriented extension of Bruni and Mezzina's typed variant of CaSPiS, where security levels have been assigned to service definitions, clients and data. In order to invoke a service, a client must be endowed with an appropriate clearance, and once the service and client agree on the security level, the data exchanged in the initiated session will not exceed this level. We study a type system that statically ensures these security properties.

[1]  Geoffrey Smith,et al.  A Sound Type System for Secure Flow Analysis , 1996, J. Comput. Secur..

[2]  Simon J. Gay,et al.  Subtyping for session types in the pi calculus , 2005, Acta Informatica.

[3]  Mariangiola Dezani-Ciancaglini,et al.  On Progress for Structured Communications , 2007, TGC.

[4]  Anindya Banerjee,et al.  A Simple Semantics and Static Analysis for Java Security , 2001 .

[5]  Doina Bucur,et al.  Secure Data Flow in a Calculus for Context Awareness , 2008, Concurrency, Graphs and Models.

[6]  Lucia Acciai,et al.  A Type System for Client Progress in a Service-Oriented Calculus , 2008, Concurrency, Graphs and Models.

[7]  Vasco Thudichum Vasconcelos,et al.  Language Primitives and Type Discipline for Structured Communication-Based Programming Revisited: Two Systems for Higher-Order Session Communication , 1998, SecReT@ICALP.

[8]  Roberto Bruni,et al.  SCC: A Service Centered Calculus , 2006, WS-FM.

[9]  Scott F. Smith,et al.  A systematic approach to static access control , 2001, TOPL.

[10]  Gérard Boudol,et al.  Access Control and Declassification , 2007 .

[11]  Andrew C. Myers,et al.  Programming Languages for Information Security , 2002 .

[12]  Roberto Bruni,et al.  Sessions and Pipelines for Structured Service Programming , 2008, FMOODS.

[13]  Dorothy E. Denning,et al.  A lattice model of secure information flow , 1976, CACM.

[14]  Ivan Lanese,et al.  Disciplining Orchestration and Conversation in Service-Oriented Computing , 2007, Fifth IEEE International Conference on Software Engineering and Formal Methods (SEFM 2007).

[15]  Roberto Bruni,et al.  Types and Deadlock Freedom in a Calculus of Services, Sessions and Pipelines , 2008, AMAST.

[16]  Jayadev Misra,et al.  A Language for Task Orchestration and Its Semantic Properties , 2006, CONCUR.

[17]  Brian Campbell,et al.  Amortised Memory Analysis Using the Depth of Data Structures , 2009, ESOP.

[18]  Christel Baier,et al.  CONCUR 2006 - Concurrency Theory, 17th International Conference, CONCUR 2006, Bonn, Germany, August 27-30, 2006, Proceedings , 2006, CONCUR.

[19]  Eduardo Bonelli,et al.  Correspondence assertions for process synchronization in concurrent communications , 2005, J. Funct. Program..

[20]  Computer Network Security , 2005 .

[21]  Andrew D. Gordon,et al.  Stack inspection: theory and variants , 2002, POPL '02.

[22]  Sophia Drossopoulou,et al.  Session Types for Object-Oriented Languages , 2006, ECOOP.

[23]  Scott F. Smith,et al.  Static enforcement of security with types , 2000, ICFP '00.

[24]  Dave Thomas,et al.  ECOOP 2006 - Object-Oriented Programming , 2006 .

[25]  D. E. Bell,et al.  Secure Computer Systems : Mathematical Foundations , 2022 .

[26]  Francesco Tiezzi,et al.  A Calculus for Orchestration of Web Services , 2007, ESOP.