POLIPO: Policies & OntoLogies for Interoperability, Portability, and autOnomy Daniel Trivellato.

Slides:



Advertisements
Similar presentations
NRL Security Architecture: A Web Services-Based Solution
Advertisements

Policy Based Dynamic Negotiation for Grid Services Authorization Infolunch, L3S Research Center Hannover, 29 th Jun Ionut Constandache Daniel Olmedilla.
Outline  Introduction  Background  Distributed DBMS Architecture  Distributed Database Design  Semantic Data Control ➠ View Management ➠ Data Security.
GridVine: Building Internet-Scale Semantic Overlay Networks By Lan Tian.
Rule based Trust management using RT - second lecture Sandro Etalle thanks to Ninghui Li - Purdue William H. Winsborough – University of Texas S. Antonio.
Access Control Methodologies
OASIS Reference Model for Service Oriented Architecture 1.0
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Software Testing and Quality Assurance
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Trust Management II Anupam Datta Fall A: Foundations of Security and Privacy.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 The Enhanced Entity- Relationship (EER) Model.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
Kmi.open.ac.uk Semantic Execution Environments Service Engineering and Execution Barry Norton and Mick Kerrigan.
An Introduction to Decentralized Trust Management Sandro Etalle University of Twente thanks to William H. Winsborough – University of Texas S. Antonio.
Distributed Database Management Systems. Reading Textbook: Ch. 4 Textbook: Ch. 4 FarkasCSCE Spring
Ontology-based Access Ontology-based Access to Digital Libraries Sonia Bergamaschi University of Modena and Reggio Emilia Modena Italy Fausto Rabitti.
Audumbar Chormale Advisor: Dr. Anupam Joshi M.S. Thesis Defense
Knowledge Mediation in the WWW based on Labelled DAGs with Attached Constraints Jutta Eusterbrock WebTechnology GmbH.
1st MODINIS workshop Identity management in eGovernment Frank Robben General manager Crossroads Bank for Social Security Strategic advisor Federal Public.
CISE Demonstrator Vincent Dijkstra DG Informatics (DIGIT)
CONTI’2008, 5-6 June 2008, TIMISOARA 1 Towards a digital content management system Gheorghe Sebestyen-Pal, Tünde Bálint, Bogdan Moscaliuc, Agnes Sebestyen-Pal.
Web Explanations for Semantic Heterogeneity Discovery Pavel Shvaiko 2 nd European Semantic Web Conference (ESWC), 1 June 2005, Crete, Greece work in collaboration.
RDF (Resource Description Framework) Why?. XML XML is a metalanguage that allows users to define markup XML separates content and structure from formatting.
Selective and Authentic Third-Party distribution of XML Documents - Yashaswini Harsha Kumar - Netaji Mandava (Oct 16 th 2006)
CS590U Access Control: Theory and Practice Lecture 21 (April 11) Distributed Credential Chain Discovery in Trust Management.
Trusted Systems Laboratory Hewlett-Packard Laboratories Bristol, UK InfraSec 2002 InfraSec 2002 Bristol, October 2002 Marco Casassa Mont Richard.
1 A pattern language for security models Eduardo B. Fernandez and Rouyi Pan Presented by Liping Cai 03/15/2006.
MITREMITRE Coalition Security Policy Language Project 11 December 2000.
PART IV: REPRESENTING, EXPLAINING, AND PROCESSING ALIGNMENTS & PART V: CONCLUSIONS Ontology Matching Jerome Euzenat and Pavel Shvaiko.
Rule based Trust management using RT Sandro Etalle thanks to Ninghui Li - Purdue William H. Winsborough – University of Texas S. Antonio. The DTM team.
An Algebra for Composing Access Control Policies (2002) Author: PIERO BONATTI, SABRINA DE CAPITANI DI, PIERANGELA SAMARATI Presenter: Siqing Du Date:
Ebrahim Tarameshloo, Philip W.L.Fong, Payman Mohassel University of Calgary Calgary, Alberta, Canada {etarames, pwlfong, On Protection.
1 Dept of Information and Communication Technology Creating Objects in Flexible Authorization Framework ¹ Dep. of Information and Communication Technology,
Next-generation databases Active databases: when a particular event occurs and given conditions are satisfied then some actions are executed. An active.
Accuracy-Constrained Privacy-Preserving Access Control Mechanism for Relational Data.
A Flexible Access Control Model for Web Services Elisa Bertino CERIAS and CS Department, Purdue University Joint work with Anna C. Squicciarini – University.
Ocean Observatories Initiative Data Management (DM) Subsystem Overview Michael Meisinger September 29, 2009.
METADATA WORKSHOP Conclusions Keith Jeffery Peter Wittenburg.
Dr. Bhavani Thuraisingham August 2006 Building Trustworthy Semantic Webs Unit #1: Introduction to The Semantic Web.
I.H. TorosluESSW Workshop Budapest May 20, A Semantic based Privacy Framework for Web Services Arif Tumer, Asuman Dogac, Hakki Toroslu Middle East.
Object Oriented Multi-Database Systems An Overview of Chapters 4 and 5.
PEP Similarity Credential Repository Gossip protocol Access request Credential request Reputation-based Similarity Evaluator AC Policy Request Decision.
What’s MPEG-21 ? (a short summary of available papers by OCCAMM)
Dr. Bhavani Thuraisingham The University of Texas at Dallas Trustworthy Semantic Webs March 25, 2011 Data and Applications Security Developments and Directions.
Christoph F. Eick University of Houston Organization 1. What are Ontologies? 2. What are they good for? 3. Ontologies and.
Ontology Mapping in Pervasive Computing Environment C.Y. Kong, C.L. Wang, F.C.M. Lau The University of Hong Kong.
Scalable Grid system– VDHA_Grid: an e-Science Grid with virtual and dynamic hierarchical architecture Huang Lican College of Computer.
SecPAL Presented by Daniel Pechulis CS5204 – Operating Systems1.
Issues in Ontology-based Information integration By Zhan Cui, Dean Jones and Paul O’Brien.
Secure Virtual Enclaves February 4, 2000 Deborah Shands, Richard Yee Jay Jacobs, E. John Sebes.
MDA & RM-ODP. Why? Warehouses, factories, and supply chains are examples of distributed systems that can be thought of in terms of objects They are all.
Introduction to Access Control and Trust Management Daniel Trivellato.
Mr.Prasad Sawant, MIT Pune India Introduction to DBMS.
Ranking of Database Query Results Nitesh Maan, Arujn Saraswat, Nishant Kapoor.
An Ontology-based Approach to Context Modeling and Reasoning in Pervasive Computing Dejene Ejigu, Marian Scuturici, Lionel Brunie Laboratoire INSA de Lyon,
Rule based Trust management using RT – third lecture Sandro Etalle University of Twente & Eindhoven thanks to Ninghui Li - Purdue William H. Winsborough.
Protection & Security Greg Bilodeau CS 5204 October 13, 2009.
A Portrait of the Semantic Web in Action Jeff Heflin and James Hendler IEEE Intelligent Systems December 6, 2010 Hyewon Lim.
Newcastle uopn Tyne, September 2002 V. Ghini, G. Lodi, N. Mezzetti, F. Panzieri Department of Computer Science University of Bologna.
Presented by Kyumars Sheykh Esmaili Description Logics for Data Bases (DLHB,Chapter 16) Semantic Web Seminar.
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. SOA-RM Overview and relation with SEE Adrian Mocan
Of 24 lecture 11: ontology – mediation, merging & aligning.
COP Introduction to Database Structures
Lan Zhou, Vijay Varadharajan, and Michael Hitchens
Kent Seamons Brigham Young University Marianne Winslett, Ting Yu
Chapter 2 Database Environment.
Lecture #6: RDF and RDF Security Dr. Bhavani Thuraisingham
Beyond Proof-of-compliance: Security Analysis in Trust Management
AGENT FRAMEWORK By- Arpan Biswas Rahul Gupta.
Presentation transcript:

POLIPO: Policies & OntoLogies for Interoperability, Portability, and autOnomy Daniel Trivellato

Outline Problem Definition Approach POLIPO Language requirements Policy language syntax Reputation system Credential Chain Discovery Algorithm

Example Scenario NATO surveillance mission Goals USA GBR CANADA ITA read if Senior Officer Senior Officer??? NATO Definitions Senior Officer is an Officer with at least 10 years of service Aaahhhhhh!!!!

Problem Definition (1/2) Goal: Situational awareness in a System of Systems independent, heterogeneous components  DISTRIBUTED AUTHORITY MUTUAL UNDERSTANDING dynamic (re-)configurations (join and leave)  AVAILABILITY ACCOUNTABILITY

Problem Definition (2/2) Security goals: protection of sensitive data from unauthorized disclosure, using content- and context-aware security policies secure interaction between (possibly untrusted) parties of dynamic coalitions interoperability between heterogeneous systems and policy models, tuning local policies to ensure global security

Proposed Solutions Access Control to specify the permissions of subjects on objects Trust Management to establish trust between unknown parties Ontologies to enable mutual- understanding

Ontologies (1/2) Formally represent domain knowledge Define concepts, instances and (binary) relationships in a domain Constraints allow to infer information not explicitly stated Each ontology can refer to concepts defined in another ontology (reusability) MO:Officer PSD:Junior Officer MO:worksFor NATO:Allied Country JackJohn NL PSD:Senior Officer

Ontologies (2/2) Ontologies can be used to give semantics to predicates in rules Ontologies can also be used to align AC models However, in a distributed system … two entities may refer to the same object with different names two entities may use the same name to refer to different objects

The POLIPO Framework

Application Domains Semantic Web Data protection on the web Business Processes for Web Services Virtual organizations Maritime Safety and Security (MSS) Healthcare Business to Business (B2B)

Language Requirements Requirement 1: INTEROPERABILITY Requirement 2: AUTONOMY Requirement 3: PORTABILITY

Parties shall be able to interact with each other unambiguously Ontologies denote the semantics of concepts and relationships in the domain R1 - Interoperability

R2 - Autonomy Every party shall be able to design and express its policy autonomously A party must be able to specify its policy independently from the actions and definitions of other parties

Global ontology Officer JuniorSenior Officer Temporary Party 1 DISJOINT Example  Local extensions to the global ontology  Mappings from local to global concepts WHO DOES THE MAPPINGS? HOW DO WE GUARANTEE THEIR CORRECTNESS? Officer Temporary Party 2

R3 - Portability Remote evaluation of policies shall preserve the interpretation of the policy owner Remote policy evaluations should not grant any permission that would not be granted by a local evaluation Use credentials to preserve interpretation of the policy owner

Language Syntax Atoms Atoms are used to build rules Sets of rules make policies

Ontology atoms: queries to the knowledge base, represented by an ontology e.g., psd:SeniorOfficer(‘John’) psd:worksFor(‘John’,’BS’) Credential atoms e.g., cred (‘BS’,’psd:SeniorOfficer’,’John’, [(‘psd:validUntil’,’31/12/2009’]) Authorization atoms e.g., perm (‘psd:read’, ‘John’, ‘File’) Constraints: built-ins or user-defined predicates e.g., X = Y + 3, aboutSuveillance(‘File’) Syntax: Basic Constructs

Horn clauses of the form h  b 1,…,b n h (head) is an atom b 1,…,b n (body) are literals (i.e. positive or negative atoms) Negation is treated as negation as failure Safety condition: each variable in h, in a negative literal, or in a built-in also occurs in a positive body literal Syntax: Rules

The head is a credential atom The body can contain positive credential and ontology atoms, and constraints Example: cred (‘BS’,‘psd:SeniorOfficer’,X,[])  psd:SeniorOfficer(X) Credential Release Rules

Authorization Rules The head is an authorization atom The body can contain positive credential, authorization and ontology atoms, constraints, and negative ontology and constraints Example: perm (‘psd:read’,X,Y)  aboutSurveillance(Y), cred(‘BS’,‘psd:SeniorOfficer’,X,[])

Constraint Definition Rules The head is a user-defined predicate The body can contain positive ontology atoms and constraints Example: aboutSurveillance(X)  bs:aboutMission(X,‘Surveillance’), bs:sensitivityLevel(X,Y), Y<3

Credential Release Policy: set of credential release rules Authorization Policy: set of authorization rules Policies

Local models may not match the global ontology model Global terms might be too coarse-grained to describe a specific domain Policies need precise definitions to guarantee security within a domain A complete and precise vocabulary alignment is costly Not feasible in short- and mid-term cooperation Problems…

GBR ITA Officer OF-3 OF-4 OF-2 OF-1

…and Solution Local terms to provide fine-grained definitions Flexible mapping of local to global terms local to local terms  MORE AUTONOMY  INTEROPERABILITY  AVOID CONFLICTING DEFINITIONS

Ontology Alignment (1/2) GBR ITA Officer Admiral Lieutenant Captain Commodore Ufficiale Generale Maggiore Tenente Colonnello Capitano Goals read if OF-3

Mapping local to global concepts is necessary for mutual-understanding Mapping local to local concepts is also a possibility However, mappings can be imprecise no 100% equivalent concepts entities have different mapping capabilities Who performs the mapping? How? How do we know if we can trust it? Ontology Alignment (2/2)

Extend ontology-based TM with a reputation system every peer can define a mapping between two concepts the trustworthiness (reputation) of a peer depends on the affinity of its opinions with those of the other peers the final mapping is obtained by combining subjective opinions of peers based on their reputation TM + Reputation System

Expressed by similarity credentials e.g., sim(GBR,’Captain’,’SeniorOfficer’, [(degree,0.7),(timeStamp,2009/09/09)]) Reflects inequality between concepts Signed  non-repudiation Similarity Credentials Repository Exchanged through gossip protocols More entities can express the similarity about the same concepts contrasting opinions which one should be considered? Mapping two Concepts

Combine all the opinions the average similarity degree is the “correct” one Not all peers are equally trustworthy Similarity statements discriminated according to peer’s reputation Naïve approach

Reflects the accuracy of the similarity statements of a peer Based on agreement with other peers The agreement between two peers is proportional to the affinity of their similarity statements Steps to compute reputation 1.For each pair of comparable similarity statements, compute their affinity 2.For each pair of peers, compute their agreement 3.Compute the reputation of all peers Reputation

Measures the level of correspondence between non-contradicting statements st is a local similarity threshold that establishes when two statements are contradictory Affinity

Low values of st increase the number of statements considered High values of st lead to a more accurate identification of trustworthy peers Local Similarity Threshold

Agreement values represented as a matrix Updated when new credentials are acquired Agreement

The reputation of a peer is a value in [0,1] It is based on its agreement with the other peers, weighted by their reputation The formula converges after t iterations α is used to bias the computation on the initial reputation and guarantees convergence More details in the paper… Computing Reputation

for st = 0.6 Order of navies: WS, BS, GC, GS Initial reputation: 1, 0, 0, 0 Final reputation values: 0.81, 0.70, 0.89, 0.14 Example

Computes similarity of attributes based on similarity statements Weighted by the reputation of the issuer Excluding opinions of untrustworthy peers rt is a reputation threshold. Similarity credentials of peers with reputation lower than rt are discarded Reputation-based Similarity

Similarity can be exploited in rules Peers may accept credentials about any attributes similar to a given attribute perm(read,X,File1)  cred(GBR,Ally,Y), cred(Y,Z,X), similar(0.5,Z,Captain) ≥ 0.6 A peer can express policies just with known vocabulary  AUTONOMY Peers are able interpret unknown terms by similarity  INTEROPERABILITY TM + Reputation System

Credentials must be derived on request To derive a credential c a peer needs to collect all the credentials on which c depends Where do we find them? Who performs all the computations? We need an algorithm to define a storage schema and a retrieval method Credential Chain Discovery

3 algorithms: Backward search: top-down Forward search: bottom-up Bi-directional search Designed to answer different query types Work if some requirements about credential storage location are satisfied The RT algorithms

3 possible query types 1.Type 1: cred(TU/e,student,Alice)? 2.Type 2: cred(TU/e,student,X)? 3.Type 3: cred(X,Y,Alice)? Where do we start searching? Query Types

Query: Is Bart employee of an accredited university? All credentials stored by the issuer Ask for all accredited universities Ask to each university if Bart is a student All credentials stored by the subject Ask Bart all credentials Ask to all issuers for entailed credentials… Bart has 1000 credentials, 900 confidential… Combine the two… Credential Storage

Consider 1.cred(TU/e,student,X)  cred(PD,student,X) 2.cred(PD,stud,Bart) Query: Is Bart a TU/e student? Now, what happens if both credentials are stored by the PD? We cannot answer the query as we do not know where to start from But…

We need to regulate where credentials can be stored Credential and credential rules must be well-typed Only if credentials are well-typed all the solutions can be retrieved More details in the paper… Well-typed Credentials

Top-down Credentials stored by the issuer! Build a graph in which nodes are labeled by roles Each node gets a “list of participants” Advantages Goal-directed Decentralized Backward Search Algorithm

cred(DSA,student,X)  cred(DG,accredited,Y), cred(Y,student,X) cred(DG,accredited,TU/e) cred(DG,accredited,UT) cred(DG,accredited,UvA) cred(DG,educationalInstitution,TU/e) cred(WUA,qualityInstitution,TU/e) cred(TU/e,student,X)  cred(PD,student,X) cred(PD,student,Alice) cred(PD,student,Bart) cred(PD,student,Charlie) cred(ABN,client,Bart) cred(VISA,ccard,Bart) Example

DSA student Query: cred(DSA,student,Bart)? DG Accredited TU/e UT UvA TU/e student UT student UvA student ……… PD student Alice Bart Charlie Alice Bart Charlie Alice Bart Charlie

Bottom-up Credentials stored by the subject! Build a graph in which nodes are labeled by roles or principals Each node gets a “list of roles it participates to or it is a subset of” Disadvantages: privacy issues! Forward Search Algorithm

Example cred(DSA,student,X)  cred(DG,accredited,Y), cred(Y,student,X) cred(DG,accredited,TU/e) cred(DG,accredited,UT) cred(DG,accredited,UvA) cred(DG,educationalInstitution,TU/e) cred(WUA,qualityInstitution,TU/e) cred(TU/e,student,X)  cred(PD,student,X) cred(PD,student,Alice) cred(PD,student,Bart) cred(PD,student,Charlie) cred(ABN,client,Bart) cred(VISA,ccard,Bart)

Example Query: cred(DSA,student,Bart)? Bart PD student ABN client VISA ccard ABN client PD student PD TU/e student TUE student ABN VISA TU/e DG accredited DG educationalInst WUA qualityInst DG accredited DG educationalInst WUA qualityInst DSA student

Backward search needs credentials stored by issuers Forward search needs credentials stored by subjects We want to be able to store credentials –sometimes by issuers –sometimes by subjects –sometimes by both Combine of forward + backward search Faster, if all credentials can be found… Bi-Directional Search

POLIPO: a security framework for interoperability, portability, and autonomy in the MSS domain –Combines AC, TM, and ontologies –Local ontologies alignment through a reputation system –Works with several existing credential discovery algorithms (e.g., RT) In the next presentation: architecture Summary