Upload
faith
View
29
Download
1
Embed Size (px)
DESCRIPTION
Concepts pour le contrôle de flux. [email protected]. Pourquoi. Étant donné un ensemble de sujets et objets qui peuvent lire et écrire l’un sur l’autre, où peut aboutir l’information. A. x. x. B. Le sujet B, peut-il arriver à connaître l’information de A? - PowerPoint PPT Presentation
Citation preview
Pourquoi
Étant donné un ensemble de sujets et objets qui peuvent lire et écrire l’un sur l’autre, où peut aboutir l’information
x
x
A
B
Le sujet B, peut-il arriver à connaître l’information de A?question importante pour la confidentialité
2
3
Réponse:
x
x
A
B
Le sujet B, peut-il arriver à connaître l’information de A?La réponse OUI est évidente dans ce cas, mais dans d’autres cas le réseau peut être bien plus complexe.
Pour l’intégrité
Pour l’intégrité, les questions sont semblables: L’objet O peut-il arriver à stocker une information provenant
d’un autre objet O’ L’objet O peut-il arriver à stocker une information provenant
d’un sujet S?
4
Modèle de base
Nous avons des sujets et des objetsToute communication est effectuée entre sujets par
l’entremise d’objets
O
S1 S2
5
Définitions
• CanStore (O,x) : l’objet O peut stocker la valeur x
• CanKnow (S,x) : le sujet S peut connaître la valeur x
• CanWrite (S,O) : sujet S peut écrire sur objet O
• CanRead (S,O) : sujet S peut lire de l’objet O
O
xS
x
O
S
CA
66
Règles de dérivation
• CanStore(O,x) = S (CanKnow(S,x) CanWrite(S,O))
• CanKnow(S,x) = O (CanStore(O,x) CanRead(S,O))
x x
S1 S4Donné:CanKnow(S1,x)
Conclusion:CanKnow(S4,x)
CanStore x CanKnow x . . .
77
Application à RBAC
Pour appliquer ces idées à RBAC, nous n’avons qu’à rédéfinir CanWrite and CanRead: CanWrite(S,O)= R Roles(S) ((O, write) Perm(R))∈ ∈ CanRead(O,S)= R Roles(S) ((O, read) Perm(R))∈ ∈
• Donc étant donné: CanStore(O,x), nous pouvons arriver à une des conclusions: CanKnow(S,x) or ¬CanKnow(S,x)
• Évidemment ceci présuppose qu’ on connaisse tout le réseau
RBAC: Questions plus simples
Les mêmes idées peuvent être utilisées pour répondre à des questions plus simples, comme: Pour un rôle donné R, quels sont les objets desquels les
sujets qui peuvent avoir R peuvent recevoir des informations, directement ou indirectement? Cette question est importante pour la confidentialité
Pour un objet donné O, quels sont les données desquelles le contenu de O peut provenir, directement ou indirectement? Cette question est importante pour l’intégrité
Voir devoir
9
CanKnowSet, CanStoreSet
Voici deux fonctions auxiliaires utiles: CanStoreSet(O) est l’ensemble de tous les x qui peuvent
être stockés dans O {x | CanStore(O,x)= vrai}
CanKnowSet(S) est l’ensemble de tous les x qui peuvent être connus par S {x | CanKnow(S,x)= vrai}
10
Modèles MAC, etc.
Les mêmes idées peuvent être appliquées aux modèles MAC, CW et autres, mais ceci exige une certaine adaptation des définitions Laissé comme exercice …
11