Implementing P3P Using Database Technology Rakesh Agrawal Jerry Kiernan Ramakrishnan Srikant Yirong Xu Presented by Yajie Zhu 03/24/2005.

Slides:



Advertisements
Similar presentations
The creation of "Yaolan.com" A Site for Pre-natal and Parenting Education in Chinese by James Caldwell DAE Interactive Marketing a Web Connection Company.
Advertisements

1 Long term changes to P3P Long Term Future of P3P Workshop Giles Hogben Joint Research Centre European Commission.
Module 13: Performance Tuning. Overview Performance tuning methodologies Instance level Database level Application level Overview of tools and techniques.
Oracle SQL Developer Data Modeler 3.0: Technical Overview March 2011.
Database System Concepts and Architecture
Privacy Policy, Law and Technology Carnegie Mellon University Fall 2005 Lorrie Cranor 1 Privacy Authorization Languages.
U.S. Department of Commerce Web Advisory Group Implementing Machine Readable Privacy Requirements of the E-Gov Act.
Implementing Autodesk Inventor in Your Company MA405-1
AskMe A Web-Based FAQ Management Tool Alex Albu. Background Fast responses to customer inquiries – key factor in customer satisfaction Costs for customer.
P3P Implementation Tips : Observations for approaching Design, Build and Deploy PricewaterhouseCoopers Brendon Lynch.
Technical BI Project Lifecycle
Minding Your Own Business The Platform for Privacy Preferences Project and Privacy Minder Lorrie Faith Cranor AT&T Labs-Research
Need for SOA database for storing SOA data Divya Gade Rejitha Rajasekhar.
Caching the MDSPlus Data via Hibernate By Ajith M Jose Comp6703 Project Client: Raju Karia Supervisor: Dr. Henry Gardner (Development of “WebScope”)
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Technical Architectures
XML Views El Hazoui Ilias Supervised by: Dr. Haddouti Advanced XML data management.
1 Introduction to Software Engineering Lecture 42 – Communication Skills.
Input Validation For Free Text Fields ADD Project Members: Hagar Offer & Ran Mor Academic Advisor: Dr Gera Weiss Technical Advisors: Raffi Lipkin & Nadav.
James Tam Introduction To Design Patterns You will learn about design techniques that have been successfully applied to different scenarios.
Progress Report 11/1/01 Matt Bridges. Overview Data collection and analysis tool for web site traffic Lets website administrators know who is on their.
Negotiated Privacy and Security Policies for Web Services George Yee (Joint work with Larry Korba)
ASP.NET 2.0 Chapter 6 Securing the ASP.NET Application.
Hippocratic Databases Paper by Rakesh Agrawal, Jerry Kiernan, Ramakrishnan Srikant, Yirong Xu CS 681 Presented by Xi Hua March 1st,Spring05.
Privacy Policy, Law and Technology Carnegie Mellon University Fall 2007 Lorrie Cranor 1 Privacy Policy.
IBM User Technology March 2004 | Dynamic Navigation in DITA © 2004 IBM Corporation Dynamic Navigation in DITA Erik Hennum and Robert Anderson.
Query Processing in Mobile Databases
Automated Tracking of Online Service Policies J. Trent Adams 1 Kevin Bauer 2 Asa Hardcastle 3 Dirk Grunwald 2 Douglas Sicker 2 1 The Internet Society 2.
Usable Security – CS 6204 – Fall, 2009 – Dennis Kafura – Virginia Tech Privacy Preferences Edgardo Vega Usable Security – CS 6204 – Fall, 2009 – Dennis.
P3P Soundbytes : Observations for approaching Design, Build and Deploy PricewaterhouseCoopers Ruth Nelson.
Ihr Logo Data Explorer - A data profiling tool. Your Logo Agenda  Introduction  Existing System  Limitations of Existing System  Proposed Solution.
XML-to-Relational Schema Mapping Algorithm ODTDMap Speaker: Artem Chebotko* Wayne State University Joint work with Mustafa Atay,
Pranam Kolari – Policy 2005 Enhancing Web Privacy Protection Through Declarative Policies Pranam Kolari 1 Li Ding 1, Lalana Kagal 2, Shashi Ganjugunte.
P3P A New Standard in Online Privacy Overview and Demos from Summer 2000.
An XPath-based Preference Language for P3P IBM Almaden Research Center Rakesh Agrawal Jerry Kiernan Ramakrishnan Srikant Yirong Xu.
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
Implementing P3P Using Database Technology Rakesh Agrawal Jerry Kiernan Ramakrishnan Srikant Yirong Xu IBM Almaden Research Center.
Chemical Toxicity and Safety Information System Shuanghui Luo Ying Li Jin Xu.
Privacy Policy, Law and Technology Carnegie Mellon University Fall 2004 Lorrie Cranor 1 P3P I Week 6 - October.
Privacy, P3P and Internet Explorer 6 P3P Briefing – 11/16/01.
How P3P Works Lorrie Faith Cranor P3P Specification Working Group Chair AT&T Labs-Research 4 February 2002
Use of a P3P User Agent by Early Adopters Lorrie Faith Cranor Manjula Arjula Praven Guduru AT&T Labs November 2002.
CERN - IT Department CH-1211 Genève 23 Switzerland t DB Development Tools Benthic SQL Developer Application Express WLCG Service Reliability.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
Dr. Azeddine Chikh IS444: Modern tools for applications development.
Specifying Personal Privacy Policies to Avoid Unexpected Outcomes George Yee and Larry Korba {George.Yee, PST 2005 October 12-14, 2005.
Future and Emerging Technologies (FET) Future and Emerging Technologies (FET) The roots of innovation Proactive initiative on: Global Computing (GC) Proactive.
Lesson Overview 3.1 Components of the DBMS 3.1 Components of the DBMS 3.2 Components of The Database Application 3.2 Components of The Database Application.
U.S. Department of Commerce Web Advisory Group Minding Your Own Business The Platform for Privacy Preferences Project.
Efficient RDF Storage and Retrieval in Jena2 Written by: Kevin Wilkinson, Craig Sayers, Harumi Kuno, Dave Reynolds Presented by: Umer Fareed 파리드.
1 Device Descriptions and User Profiles 인공지능연구실 정홍석.
Working with XML Schemas ©NIITeXtensible Markup Language/Lesson 3/Slide 1 of 36 Objectives In this lesson, you will learn to: * Declare attributes in an.
BlackBerry Applications using Microsoft Visual Studio and Database Handling.
CS562 Advanced Java and Internet Application Introduction to the Computer Warehouse Web Application. Java Server Pages (JSP) Technology. By Team Alpha.
March 1, 2004CS WPI1 CS 509 Design of Software Systems Lecture #6 Monday, March 1, 2004.
ESG-CET Meeting, Boulder, CO, April 2008 Gateway Implementation 4/30/2008.
Expense Tracking System Developed by: Ardhita Maharindra Muskan Regmi Nir Gurung Sudeep Karki Tikaprem Gurung Date: December 05 th, 2008.
Chapter 04 Semantic Web Application Architecture 23 November 2015 A Team 오혜성, 조형헌, 권윤, 신동준, 이인용.
CMPE 494 Service-Oriented Architectures and Web Services Platform for Privacy Preferences Project (P3P) İDRİS YILDIZ
1 Copyright © 2008, Oracle. All rights reserved. Repository Basics.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
Windows Vista Configuration MCTS : Internet Explorer 7.0.
Building Enterprise Applications Using Visual Studio®
How P3P Works Lorrie Faith Cranor P3P Specification Working Group Chair AT&T Labs-Research 4 February
Data, Databases, and DBMSs
Analysis models and design models
Message Passing Systems
Presentation transcript:

Implementing P3P Using Database Technology Rakesh Agrawal Jerry Kiernan Ramakrishnan Srikant Yirong Xu Presented by Yajie Zhu 03/24/2005

Outline Introduction Overview of P3P Current P3P implementations Server-centric implementation Algorithms Results of performance experiments Conclusion and future work

Introduction Platform for Privacy Preferences(P3P) –web users gain control over their private information –web site owners can express their privacy policies in a standard format –a user can programmatically check against her privacy preferences to decide whether to release her data to the web site P3P became a W3C Recommendation on April 16, 2002

Overview of P3P Privacy Policies: –An XML format in which a web site can encode its data-collection and data-use practices Privacy Preferences: –A machine-readable specification of a user’s preferences that can be programmatically compared against a privacy policy Detailed information:

P3P Policy Description P3P policies are described as a sequence of STATEMENT elements. –CONSEQUENCE: the purpose for collecting information in human-readable text –PURPOSE: purposes for which information is collected. 12 predefined values. Ex:,, –RECIPIENT: the users of the collected information 6 predefined values. Ex:,, Opt-in or opt-out values can be assign to the required attribute of PURPOSE and RECIPIENT elements

P3P Policy Description (Cont.) –RETENTION: the duration for which the collected information will be kept 5 predefined values Ex:,, –DATA-GROUP and DATA: the list of individual data items that are collected for stated purposes in the statement. predefined types of data items DATA can contain related category information. –CATEGORIES: provide hints to users as to the intended uses of the data. Ex:,,

An Example Policy

Privacy Preferences Privacy preferences are expressed in APPEL as a list of RULEs –Rule behavior: specifies the action to be taken if the rule fires. request, block –Rule body: Provides the pattern that is matched against a policy.

Privacy Preferences (Cont.) Connective attribute: defines the logical operators of the language. –And (default): all of the contained expressions can be found in the policy –Or : one or more of the contained expressions can be found in the policy –And-exact –Or-exact –Non-and (negated and) –Non-or (negated or) Every element in an APPEL rule has a connective associated with it.

An Example APPEL Preference

The Reference File A site may have multiple privacy policy for different web pages, which may offer various services. A site’s reference file assigns individual policies with subsets of the URIs. In the reference file, each policy has a set of INCLUDE/EXCLUDE declarations of the URIs. /* /catalog/* /cgi-bin/* /servlet/* /catalog/* /cgi-bin/* /servlet/* /servlet/unknown

Current P3P Implementation Client-Centric Architecture –Web sites create and install policy files at their sites. P3PEdit: a web-based privacy policy generator IBM Tivoli Privacy Wizard: a web-based GUI tool to define privacy policies –The users browse a web site, their preferences are checked against a site’s policy before they access the sit.

Client-Centric Architecture Implementation IE6 implementation of Compact P3P policies –IE6 allows a user to specify her privacy preference for handling cookies AT&T Privacy Bird –It accepts user-defined APPEL privacy preference –An APPEL engine compares a user’s APPEL preference with a web site’s P3P policy Other Tools –JRC APPEL Preference Editor: a Java-based editor for preparing APPEL preferences. –JRC P3P Proxy: a centralized proxy service that conducts P3P privacy policy checking on behalf of subscribed users

Server-Centric Architecture A website deploys P3P, and installs its privacy policies in a database system Database querying at the server is used for matching a user’s preferences against privacy policies –Convert privacy policies into relational tables and convert an APPEL preference into an SQL query for matching. –Store privacy policies in relational tables, define an XML view over them, and use an XQuery derived from an APPEL preference for matching. –Store privacy policies in a native XML store and use an XQuery derived from an APPEL preference for matching.

Server-Centric Architecture (Cont.) Advantages –The preference checking at the server leads to lean clients (mobile device) –An upgrade in P3P specification only require an upgrade in all the servers –As new privacy-sensitive applications emerge, they will reuse checking done at the server –Site owner can refine their policies, when they know that policies have a conflict with the users’ privacy preferences –Using databases for preference matching yields additional advantages The privacy data tables can serve as meta data for ensuring that polices are followed Can reuse the proven database technology for checking preferences against policies. Versions of policies can be better managed

Server-Centric Architecture (Cont.) Disadvantages –There needs to be a greater amount of trust on the server The user has to trust the server The user has to trust the database software used by the server –By using Client-Centric to cache a reference file, the client may avoid some checks, if a user visits many pages that are governed by the same policy

Algorithms for Server-Centric Implementation Database Schema for P3P policy Populate the tables with the data

Algorithms for Server-Centric Implementation (Cont.) Translating APPEL Preferences into SQL Queries –The main() mirrors the structure of the APPEL rule. –The match() generates the SQL code for matching an APPEL expression Select elements in the P3P policy from the table Ensure that the elements belong to their parent elements Match any attributes specified in the APPEL expression Recursively match any sub expressions with the appropriate connective.

Optimizations Reduce the number of tables in order to reduce the number of joins in the generated SQL queries –Store P3P subelements in their parent table, not in separate tables. –Store the value of RETENTION in STATEMENT table, since each STATEMENT can have only one RETENTION element. –Store the value of CONSEQUENCE in a nullable column in STATEMENT table.

Translation Example Simplified First Rule from Jane’s APPEL preference SQL Translation

Algorithms for Server-Centric Implementation (Cont.) Translating APPEL Preferences into XQuery –The main() generates an XQuery if statement Return the rule behavior if the condition expressed by the rule is met by the application policy –The match() translates the body of the rule

Performance Experiments Measure the time to match a P3P policy with an APPEL Preference –Experimental Setup A native APPEL engine from the Joint Research Center DB2 UDB 7.2 as a database engine Translating APPEL preference into XQuery, use the XTABLE prototype –Data Set 29 P3P policies (size from 1.6 to 11.9 Kbytes) 5 APPEL preference with 5 different levels of sensitivity

Performance Results

Conclusion and Future work Contributions of the paper –Identification of P3P as an important application area for database systems. –Investigation of alternative architectures for implementing P3P. –Proposal for a server-centric architecture based on database querying technology. –Mapping of a P3P policy schema into a relational schema for storing policy data. –Algorithms for translating privacy preferences expressed in APPEL into SQL as well as XQuery. –Performance experiments showing that the proposed architecture has adequate performance for it to be used in practical deployments of P3P. Future work Explore the use of database query languages for directly expressing and representing privacy preference Identify the minimal subset of SQL and XQuery Develop and implement database mechanisms for ensuring that the privacy policies are indeed being followed

Questions and Discussions