Securing Materialized Views: a Rewriting-Based Approach
Sarah Nait Bahloul, Emmanuel Coquery and Mohand-Saïd Hacid Université de Lyon, France
Securing Materialized Views: a Rewriting-Based Approach Sarah Nait - - PowerPoint PPT Presentation
Securing Materialized Views: a Rewriting-Based Approach Sarah Nait Bahloul, Emmanuel Coquery and Mohand-Sad Hacid Universit de Lyon, France First Franco-American Workshop Security Outline Context Problem statement Related work
Sarah Nait Bahloul, Emmanuel Coquery and Mohand-Saïd Hacid Université de Lyon, France
1
2
3
User
4 Granularity Derived access control policies
Coarse Defined on base relations
Fine Defined on base relations Our approach Fine Defined on MVs
5
Query evaluation
6
○ Authorization views are logical tables that specify exactly
○ An authorization view can be a traditional relational view
■
■
7
8
9
10
11
12
13
14
Rewriting using AV Rewriting using MV
15
16
17
18
Views returned by the algorithm
19
patients (x,y)
treatments (y1, z2)
patients (x, y1) patients (x, y1)
treatments (y1, z3) doctors (z3, t1)
Direct child Indirect child Anonymous node
20
r1 (x,y) r1 (x, y1) r2 (y1, y2) r1 (x, y1) r2 (y1, y3) r1 (y3, y4) r1 (x, y5) r2 (y5, y3) r1 (y3, y6) r2 (y6, y7) r1 (x, y5) r2 (y5, y8) r1 (y8, y6) r2 (y6, y9) r1 (y9, y10) av1 mv2 av1 mv2
21
r1 (x,y) r3 (y,z1) r1 (x,y) r2 (y, z2) r3 (y, z1) r3 (y, z3) r2 (y, z2) r3 (y, z1) r2 (y, z4) r1 (x,y) r3 (y, z5) r2 (y, z4) r2 (y, z2) r2 (y, z2) r3 (y, z1) r3 (y, z1) r3 (y, z3) r3 (y, z3) r1 (x,y) r1 (x,y) av1 mv1 av1 mv1
22
patients (x,y)
treatments (y1, z2)
patients (x, y1) patients (x, y1)
treatments (y1, z3) doctors (z3, t1)
Direct child Indirect child
View: av1 Cpos: 2 Ppos:1
Anonymous node
23
24 r1 (x,y) r1 (x, y1) r2 (y1, y2) r1 (x, y1) r2 (y1, y3) r1 (y3, y4) r1 (x, y5) r2 (y5, y3) r1 (y3, y6) r2 (y6, y7) r1 (x, y5) r2 (y5, y8) r1 (y8, y6) r2 (y6, y9) r1 (y9, y10)
[1,[av1,1,2]] [1,[av1,1,2],[mv2,1,2] ,[av1,1,2]] [1] [1] [1,[mv1,1,2],[av2,1,2]]
av1 mv2 mv2 av1
25 r1 (x,y) r3 (y,z1) r1 (x,y) r2 (y, z2) r3 (y, z1) r3 (y, z3) r2 (y, z2) r3 (y, z1) r2 (y, z4) r1 (x,y) r3 (y, z5) r2 (y, z4) r2 (y, z2) r2 (y, z2) r3 (y, z1) r3 (y, z1) r3 (y, z3) r3 (y, z3) r1 (x,y) r1 (x,y)
Real node Virtual node [1,[mv1,1,2]]
26
27
28
29
[Ros&Sci CAISE’00] A. Rosenthal and E. Sciore. View security as the basis
[Cuz&al. IDEAS’10] A. Cuzzocrea, M.-S. Hacid, and N. Grillo. Effectively
[Pot&Lev VLDB’00] R. Pottinger and A. Y. Levy. A scalable algorithm for
[Riz&al. SIGMOD’04] S. Rizvi, A. O. Mendelzon, S. Sudarshan, and P.