Composite Decentralized Access Control Petar Tsankov , Srdjan - - PowerPoint PPT Presentation

composite decentralized access control
SMART_READER_LITE
LIVE PREVIEW

Composite Decentralized Access Control Petar Tsankov , Srdjan - - PowerPoint PPT Presentation

Composite Decentralized Access Control Petar Tsankov , Srdjan Marinovic, Mohammad Torabi Dashtj, David Basin Instjtute of Informatjon Security ETH Zurich Example: SweGrid Goal Provides computatjonal and storage resources to researchers


slide-1
SLIDE 1

Composite Decentralized Access Control

Petar Tsankov, Srdjan Marinovic, Mohammad Torabi Dashtj, David Basin Instjtute of Informatjon Security ETH Zurich

slide-2
SLIDE 2

Example: SweGrid

Access Control Requirements

– A project leader delegates his authority

  • ver resources to principals

– A project leader composes the principals'

policies (e.g., using permit-override)

Goal

Provides computatjonal and storage resources to researchers

slide-3
SLIDE 3

Delegatjon

Multjple principals can issue access rights

Researchers access rights access rights delegatjons Project leader Dave Project Leader Bob Researchers

slide-4
SLIDE 4

Delegatjon

Multjple principals can issue access rights

Researchers access rights access rights delegatjons

Decentralized Access Control

Project leader Dave Project Leader Bob Researchers

slide-5
SLIDE 5

Compositjon

Policy decisions in large-scale systems

– Grant, Deny, Not-applicable, Confmict

Dave Project leader

+

Bob

Compositjon

  • perators, e.g.:
  • Permit-override
  • Deny-override
  • Confmict-override

+

slide-6
SLIDE 6

Composite Access Control

Compositjon

Policy decisions in large-scale systems

– Grant, Deny, Not-applicable, Confmict

Dave Project leader

+

Bob

Compositjon

  • perators, e.g.:
  • Permit-override
  • Deny-override
  • Confmict-override

+

slide-7
SLIDE 7

System Model

Subjects Resources

slide-8
SLIDE 8

System Model

Requirements control access Subjects Resources Principals

slide-9
SLIDE 9

System Model

PEP PDP Requirements control access Subjects Resources Principals Policies

slide-10
SLIDE 10

Related Work

Systems and standards Formal foundatjons

slide-11
SLIDE 11

Related Work

Systems and standards Formal foundatjons DKAL ('08)

RT ('01) SecPAL for Grid

Delegatjon

KeyNote PDP (RFC 2704)

...

slide-12
SLIDE 12

Related Work

Systems and standards Formal foundatjons

XACML v2.0 D-Algebra ('09) PTaCL ('12) PBel ('08) DKAL ('08) RT ('01) SecPAL for Grid

Delegatjon Compositjon

KeyNote PDP (RFC 2704)

... ...

slide-13
SLIDE 13

Related Work

Systems and standards Formal foundatjons

XACML v2.0 D-Algebra ('09) SweGrid PTaCL ('12) PBel ('08) DKAL ('08) RT ('01) XACML v3.0 ('13) SecPAL for Grid WSO2 ID Server

Delegatjon Compositjon Delegatjon + Compositjon

KeyNote PDP (RFC 2704)

... ...

slide-14
SLIDE 14

Related Work

Systems and standards Formal foundatjons

XACML v2.0 D-Algebra ('09) SweGrid PTaCL ('12) PBel ('08) DKAL ('08) RT ('01) XACML v3.0 ('13) SecPAL for Grid WSO2 ID Server

BelLog

Delegatjon Compositjon Delegatjon + Compositjon

KeyNote PDP (RFC 2704)

... ...

slide-15
SLIDE 15

How to Build Access Control Systems

Specify Policy Verify Policy Construct PDP

➔ Formal semantjcs ➔ Support for

delegatjon

➔ Support for

compositjon

➔ Analysis language ➔ Decision algorithms ➔ Effjcient evaluatjon

algorithm

slide-16
SLIDE 16

How to Build Access Control Systems

Specify Policy Verify Policy Construct PDP

➔ Formal semantjcs ➔ Support for

delegatjon

➔ Support for

compositjon

➔ Analysis language ➔ Decision algorithms ➔ Effjcient evaluatjon

algorithm

slide-17
SLIDE 17

Belnap Logic + Datalog = BelLog

(Program) (rule) (literal) (atom) Truth ordering Knowledge ordering

Belnap Logic (stratjfjed) Datalog

slide-18
SLIDE 18

Belnap Logic + Datalog = BelLog

(Program) (rule) (literal) (atom) Truth ordering Knowledge ordering

Belnap Logic (stratjfjed) Datalog

slide-19
SLIDE 19

Belnap Logic + Datalog = BelLog

(Program) (rule) (literal) (atom) Truth ordering Knowledge ordering

Belnap Logic (stratjfjed) Datalog

slide-20
SLIDE 20

Belnap Logic + Datalog = BelLog

(Program) (rule) (literal) (atom) Truth ordering Knowledge ordering

Belnap Logic (stratjfjed) Datalog

BelLog

(Program) (rule) (literal) (atom) Negatjon on truth Negatjon on knowledge

slide-21
SLIDE 21

Belnap Logic + Datalog = BelLog

(Program) (rule) (literal) (atom) Truth ordering Knowledge ordering

Belnap Logic (stratjfjed) Datalog

BelLog

(Program) (rule) (literal) (atom) Negatjon on truth Negatjon on knowledge

Semantjcs

Extend stratjfjed Datalog to four- valued fjxed-point semantjcs

slide-22
SLIDE 22

BelLog Examples

slide-23
SLIDE 23

BelLog Examples

Transitjve delegatjon

slide-24
SLIDE 24

BelLog Examples

Transitjve delegatjon Policy targets

slide-25
SLIDE 25

BelLog Examples

Transitjve delegatjon Policy targets Agreement

slide-26
SLIDE 26

BelLog Examples

Transitjve delegatjon Confmict-override Policy targets Agreement

slide-27
SLIDE 27

BelLog Examples

Transitjve delegatjon Confmict-override Policy targets Agreement

Other idioms?

slide-28
SLIDE 28

➔ Formal semantjcs ➔ Support for

delegatjon

➔ Support for

compositjon

➔ Analysis language ➔ Decision algorithms ➔ Effjcient evaluatjon

algorithm

How to Build Access Control Systems

Specify Policy Verify Policy Construct PDP

slide-29
SLIDE 29

Policy Analysis

Does the policy meet its requirements?

Requirements Policy

slide-30
SLIDE 30

Policy Analysis

Does the policy meet its requirements?

Requirements Policy Questjons

slide-31
SLIDE 31

Policy Analysis

Does the policy meet its requirements?

Requirements Policy Questjons Analyzer

slide-32
SLIDE 32

Policy Analysis

Does the policy meet its requirements?

Requirements Policy Questjons Analyzer

Counter- example Policy checked

Fix

slide-33
SLIDE 33

Policy Analysis

Does the policy meet its requirements?

Requirements Policy Questjons Analyzer

Counter- example Policy checked

Fix

How do we write this?

slide-34
SLIDE 34

Policy Analysis

Does the policy meet its requirements?

Requirements Policy Questjons Analyzer

Counter- example Policy checked

Fix

How do we write this? Decidability? Complexity?

slide-35
SLIDE 35

Analysis Questjons

Syntax

– Is policy P2 more permissive than P1 for all inputs

that satjsfy the conditjon c?

(conditjon) (questjon)

slide-36
SLIDE 36

Analysis Questjons

All requests

Requests granted by P2 Requests granted by P1

Syntax

– Is policy P2 more permissive than P1 for all inputs

that satjsfy the conditjon c?

(conditjon) (questjon)

For a given input:

slide-37
SLIDE 37

Analysis Questjons

All requests

Requests granted by P2 Requests granted by P1

Syntax

– Is policy P2 more permissive than P1 for all inputs

that satjsfy the conditjon c?

(conditjon) (questjon)

For a given input:

slide-38
SLIDE 38

Analysis Questjons

All requests

Requests granted by P2 Requests granted by P1

Syntax

– Is policy P2 more permissive than P1 for all inputs

that satjsfy the conditjon c?

(conditjon) (questjon)

For a given input: Check for all inputs that satjsfy the conditjon

slide-39
SLIDE 39

Example: Analysis Questjon

Requirement

If the requester is a project leader, then grant access.

Policy

slide-40
SLIDE 40

Example: Analysis Questjon

Requirement

If the requester is a project leader, then grant access.

Analysis Questjon Policy

slide-41
SLIDE 41

Analysis

slide-42
SLIDE 42

Analysis

Theorem 1

Policy containment is undecidable

slide-43
SLIDE 43

Analysis

Theorem 2

Policy containment for unary-input policies* is in CO-NEXP-COMPLETE

Theorem 1

Policy containment is undecidable

*Unary-input policies

– Example:

slide-44
SLIDE 44

Analysis

Theorem 3

Policy containment for a fjnite universe is in CO-NP-COMPLETE

Theorem 2

Policy containment for unary-input policies* is in CO-NEXP-COMPLETE

Theorem 1

Policy containment is undecidable

*Unary-input policies

– Example:

slide-45
SLIDE 45

➔ Formal semantjcs ➔ Support for

delegatjon

➔ Support for

compositjon

➔ Analysis language ➔ Decision algorithms ➔ Effjcient evaluatjon

algorithm

How to Build Access Control Systems

Specify Policy Verify Policy Construct PDP

slide-46
SLIDE 46

Constructjng PDPs

Policy Interpreter htup://bellog.org GitHub htups://github.com/ptsankov/bellog/ Theorem 4

Policy entailment is in PTIME

slide-47
SLIDE 47

Limitatjons

– Analysis of administratjve changes – Analysis complexity and tool support – Usability

slide-48
SLIDE 48

BelLog Contributjons

A foundatjon for composite decentralized access control Policy analysis framework BelLog PDP (www.bellog.org)