<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Designing Secure Socio-Technical Systems with STS-ml</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Elda</forename><surname>Paja</surname></persName>
							<email>elda.paja@unitn.it</email>
							<affiliation key="aff0">
								<orgName type="institution">University of Trento</orgName>
								<address>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><surname>Fabiano Dalpiaz</surname></persName>
							<affiliation key="aff1">
								<orgName type="institution">University of Toronto</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Paolo</forename><surname>Giorgini</surname></persName>
							<email>paolo.giorgini@unitn.it</email>
							<affiliation key="aff0">
								<orgName type="institution">University of Trento</orgName>
								<address>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Designing Secure Socio-Technical Systems with STS-ml</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">8E2E763CBB45CC0C20CC78A65CFBF8FC</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T00:00+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>A Socio-Technical System (STS) is an interplay of humans, organizations and technical systems. STSs consist of interacting actors, which depend on one another to achieve their objectives. In previous work, we have proposed STS-ml, a security requirements modelling language (using i*-like primitives such as actor, goal, delegation) for the design of secure STSs. STS-ml represents security requirements as constraints over the interactions (goal delegation and document exchange) among actors in the STS. In this work, we present the current version of STS-ml, which introduces further modelling primitives as well as sophisticated reasoning mechanisms to detect conflicts in security requirements.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Socio-Technical Systems (STSs) are an interplay of social (human and organisations) and technical subsystems, which interact with one another to reach their objectives, making an STS a network of social relationships <ref type="bibr" target="#b0">[1]</ref>. Each subsystem is a participant of the STS, acts according to its business policy (it is autonomous), and interacts with others. When relying upon others for carrying out tasks and manipulating information, a participant would like its own security requirements to be fulfilled. For example, if a buyer sends its personal data to a seller, the buyer may require the data to be used only for shipment purposes.</p><p>To deal with security in the early phases of STS design, we have previously proposed STS-ml <ref type="bibr" target="#b1">[2]</ref> (Socio-Technical Security modelling language), an actorand goal-oriented security requirements modelling language. STS-ml is based on the idea of relating security requirements to interaction. As such, the language allows stakeholders to express security needs over their interactions to constrain the way interaction is to take place, as in the buyer/seller example above. STS-ml specifies security requirements as social commitments, promises with contractual validity made by an actor to another. One actor commits to another that, while delivering some service, it will comply with the required security needs. In the example above, a security requirement is that the seller commits not to disclose personal data to other parties.</p><p>These specifications guide the design of a STS that satisfies the security requirements. However, in certain cases, the specification may be inconsistent, i.e., one or more requirements might be conflicting. It is, thus, not possible to implement a STS that satisfies all requirements of the specification.</p><p>Coping with such conflicts at requirements-time avoids developing a noncompliant and hard-to-change system. We propose to rely on automated reasoning to identify and resolve these conflicts. This choice is justified by our gathered evidence <ref type="bibr" target="#b4">[5]</ref> that requirements models are large and that even skilled analysts would be unable to identify all the conflicts in a model.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Objectives of the research</head><p>We aim at creating a framework that supports the identification of inconsistencies (conflicts) among security requirements in a STS-ml specification. We focus on two types of conflicts: (1) among security requirements: two or more security requirements cannot be implemented by the same system. For instance, access to some information may be granted from one stakeholder, and prohibited from another. The different authorisations are conflicting, and one of them needs to be relaxed and adapted, perhaps by negotiating the needs of the authorisee; and (2) between actors' business policies and security requirements: an actor's policy may specify that some information shall be accessed, while no authorisation is granted by the information owner. We provide examples in Sec. 3.1.</p><p>While analysts may detect some conflicts by looking at the graphical models, others are harder to spot-especially in large models-and require computeraided support. To such extent, we have formalised the semantics of the STS-ml primitives and that of its security requirements. This effort enables us developing automated reasoning techniques for the identification of conflicts. Our longerterm objective is to support the resolution of conflicts too.</p><p>3 Scientific contributions STS-ml is an actor-and goal-oriented security requirements engineering method. It is composed of the modelling language and its support tool STS-Tool<ref type="foot" target="#foot_0">3</ref> . The contributions of this research are as follows:</p><p>a revised version of the STS-ml language, including a wider set of security requirements; a formal framework to identify conflicts among security requirements, as well as among actors' business policies and the security requirements they are required to comply with; an implementation of the framework in disjuctive Datalog. STS-Tool supports the graphical visualisation of conflicts in STS-ml diagrams.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>3.1</head><p>The STS-ml framework for security requirements engineering STS-ml has been first proposed in <ref type="bibr" target="#b1">[2]</ref>, here we present the current version of STS-ml. STS-ml includes high-level organisational concepts such as actor, goal, delegation, etc. Security requirements in STS-ml models are mapped to social commitments <ref type="bibr" target="#b3">[4]</ref>-contracts among actors-that actors in the STS shall comply with at runtime. STS-ml modelling consists of three complementary views of the same model, namely social, information, and authorisation view (see Fig. <ref type="figure" target="#fig_0">1</ref>), so that different interactions among actors can be analysed by concentrating on a specific view at a time. Interview consistency is ensured by STS-Tool<ref type="foot" target="#foot_1">4</ref> .</p><p>Example 1 (Travel Planning). A tourist wants to organise a trip using a Travel Agency Service (TAS ). TAS allows end users to read about various destinations, book flights and hotels, hire a car, etc., and uses the Amadeus flight service to book flight tickets. To book hotels, the Tourist has chosen to directly contact the Hotel himself, without interacting with TAS.</p><p>The social view (Fig. <ref type="figure" target="#fig_0">1a</ref>) represents actors as intentional and social entities. Actors are intentional as they aim to attain their goals, and they are social, for they interact with others by delegating goals and exchanging documents. STS-ml supports two types of actors: agents-concrete participants, and rolesabstract actors, used when the actual participant is unknown. In our example, we represent the TAS as a role, and the Amadeus flight service as an agent, as it refers to a specific flight service. Actors may possess documents, they may use, modify, or produce documents while achieving their goals. For instance, Tourist wants to achieve the goal trip planned, for which it needs to both have tickets booked and hotel booked. To book the hotel it needs document ID Doc copy.</p><p>The information view (Fig. <ref type="figure" target="#fig_0">1b</ref>) gives a structured representation of actors' information and documents, and the way they are interconnected. Information can be represented by one or more documents (through TangibleBy), and on the other hand one or more information entities can be part of some document. For instance, information Personal data is represented by both ID Doc copy and Flight tickets documents. We keep track of how information and documents are interconnected to identify which information actors manipulate, when they use, modify, produce, or distribute documents to achieve their goals. We take a pessimistic approach assuming that whenever a document is altered, the information it makes tangible is also altered. For instance, the Amadeus flight service modifies information Personal data when modifying document Flight tickets.</p><p>The authorisation view (Fig. <ref type="figure" target="#fig_0">1c</ref>) shows the authorisations actors grant to others over information, specifying which operations they are allowed (prohibited) to do, for which goals (scope), and whether authorisation can be further transferred or not. For instance, Tourist authorises TAS to use (U selected) information Personal data and Itinerary in the scope of the goal Tickets booked granting a transferrable authorisation (authorisation's arrow line is continuous). Through its three views, STS-ml supports different requirements types:</p><p>-Business policies are expressed by specifying actors, their goals, delegations, document provisions, and how actors manipulate documents to fulfil goals. In a nutshell, they are represented by an actor's goal model. -Authorisation requirements determine which information can be used, how, for which purpose, and by whom; at the same time they define also prohibitions over the same information. In this category, STS-ml supports nonreauthorisation, need-to-know of information, non-usage, non-modification, non-production and non-disclosure of information. While authorising TAS to use (U selected) information Personal data and Itinerary in the scope of the goal Tickets booked, the tourist is prohibiting TAS to perform the rest of operations, requiring non-modification, non-production and non-disclosure of the given information. Moreover, since authorisation is limited to a goal scope, this expresses a need-to-know requirement over information, demanding it to be used only for the specified scope; -Organisational constraints determine constraints on the adoption of roles and the uptake of responsibilities. STS-ml supports separation and binding of duties both over roles and over goals. For instance, a separation of duty is expressed between goals Flight tickets booked and Train tickets booked requiring TAS not to ever achieve both these goals.</p><p>Together, interaction requirements, authorisation requirements, and organisational constraints are the security requirements of STS-ml. A STS-ml model is consistent if the actors' business policies comply with the security requirements.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">Detecting conflicts in security requirements</head><p>We are concerned with the verification of two types of inconsistencies that relate to security requirements: (i) identifying conflicts among security requirements, that is, verifying whether the simultaneous specification of different security requirements brings up conflicts; and (ii) identifying conflicts raised by the specification of the security requirements with respect to an actor's business policy. For each of these two categories, we identify conflicts in our running example, and provide insights on how they could be fixed. Here we provide just the intuition behind the identification of these conflicts. The formal framework, its implementation in disjunctive Datalog, and experimental results from an industrial case study on eGovernment are presented in a technical report (see <ref type="bibr" target="#b2">[3]</ref>).</p><p>The first challenge is to obtain a set of security requirements that is consistent, which enables us to build a secure socio-technical system (that violates no security requirement). The focus of STS-ml is mainly on information security; thus, we have begun by tackling authorisation conflicts. Detecting conflicts among other types of security requirements is still work in progress.</p><p>For instance, the Tourist does not authorise the Amadeus flight service to use his/her Personal Data, while TAS authorises the Amadeus flight service to use Tourist's Personal Data. This situation represents an authorisation conflict for the Amadeus flight service. Specifically, this conflict relates to the "use" operation. Our framework supports also conflicts about modification, production, distribution, and authorisation transferibility (i.e., an actor is granted authorisation to perform operations but not that of further distributing the authorisation).</p><p>The second challenge is to verify if one or more security requirements conflict with the private business policy of an actor (as dictated by its goal model). For instance, suppose the Hotel 's business policy requires handling all bookings by means of a reservation system service. When Tourist specifies a no-redelegation security requirement over the delegation of the goal Hotel booked, there is a conflict between what the security requirement demands the Hotel to do, and what its internal requirement dictates. Let us show another example of this kind of conflict. The Amadeus flight service modifies Flight tickets when achieving goal Flight tickets booked. Flight tickets makes tangible tourist's personal data, for which no authorisation on modification (M) is granted, instead a nonmodification authorisation requirement is specified. The Amadeus flight service might need to modify Flight tickets to accommodate changes in the itinerary of the Tourist, so either the Tourist decides he/she does not want the flight tickets modified, or he/she should grant the permission to the Amadeus flight service.</p><p>4 Conclusions, ongoing and future work STS-ml is a framework to model and reason over security requirements for STSs. The current version of the framework is a result of an iterative approach, of various evaluations conducted with industrial partners of the FP7 European project Aniketos. The framework has proven suitable to model real case studies spanning from eGovernment to Air Traffic Management Control. STS-ml supports a rich set of security requirements, for which we can identify conflicts.</p><p>Ongoing work includes different directions: (i) developing a new version of the tool with improved usability, and (ii) exploring how STS-ml can inform later phases in the design of secure STSs, e.g., the definition of access control policies.</p><p>Future work includes: (i) devising other reasoning techniques for more sophisticated reasoning, (ii) exploring techniques for conflict resolution, and (iii) reducing the learning curve for STS-ml, also via self-learning mechanisms.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 :</head><label>1</label><figDesc>Fig. 1: Multi-view modelling for the travel planning scenario</figDesc><graphic coords="4,137.84,351.72,156.40,104.17" type="bitmap" /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_0">http://www.sts-tool.eu Proceedings of the 6th International i* Workshop (iStar 2013), CEUR Vol-978</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_1">http://www.sts-tool.eu Proceedings of the 6th International i* Workshop (iStar 2013), CEUR Vol-978</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Acknowledgments. The research leading to these results has received funding from the European Union Seventh Framework Programme (FP7/2007-2013) under grants no 257930 (Aniketos) and 256980 (NESSoS).</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Adaptive Socio-Technical Systems: a Requirements-driven Approach</title>
		<author>
			<persName><forename type="first">F</forename><surname>Dalpiaz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mylopoulos</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Requirements Engineering</title>
		<imprint>
			<biblScope unit="volume">18</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="1" to="24" />
			<date type="published" when="2013">2013</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Security Requirements Engineering via Commitments</title>
		<author>
			<persName><forename type="first">F</forename><surname>Dalpiaz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Paja</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the First Workshop on Socio-Technical Aspects in Security and Trust (STAST)</title>
				<meeting>the First Workshop on Socio-Technical Aspects in Security and Trust (STAST)</meeting>
		<imprint>
			<date type="published" when="2011">2011</date>
			<biblScope unit="page" from="1" to="8" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<title level="m" type="main">Identifying Conflicts in Security Requirements with STS-ml</title>
		<author>
			<persName><forename type="first">E</forename><surname>Paja</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Dalpiaz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</author>
		<idno>TR DISI-12-041</idno>
		<ptr target="http://disi.unitn.it/~paja/tr-identifying-sec-conflicts.pdf" />
		<imprint>
			<date type="published" when="2012">2012</date>
		</imprint>
		<respStmt>
			<orgName>University of Trento</orgName>
		</respStmt>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">An Ontology for Commitments in Multiagent Systems: Toward a Unification of Normative Concepts</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">P</forename><surname>Singh</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Artificial Intelligence and Law</title>
		<imprint>
			<biblScope unit="volume">7</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="97" to="113" />
			<date type="published" when="1999">1999</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Formative User-Centered Evaluation of Security Modeling: Results from a Case Study</title>
		<author>
			<persName><forename type="first">S</forename><surname>Trösterer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Beck</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Dalpiaz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Paja</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Tscheligi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 6th International i* Workshop (iStar 2013)</title>
				<meeting>the 6th International i* Workshop (iStar 2013)</meeting>
		<imprint>
			<date type="published" when="2012">2012</date>
			<biblScope unit="volume">3</biblScope>
			<biblScope unit="page" from="1" to="19" />
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
