• Aucun résultat trouvé

Automates pour l'analyse de documents XML compressés, applications à la sécurité d'accès

N/A
N/A
Protected

Academic year: 2021

Partager "Automates pour l'analyse de documents XML compressés, applications à la sécurité d'accès"

Copied!
98
0
0

Texte intégral

(1)

HAL Id: tel-00491193

https://tel.archives-ouvertes.fr/tel-00491193

Submitted on 10 Jun 2010

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Automates pour l’analyse de documents XML compressés, applications à la sécurité d’accès

Barbara Fila

To cite this version:

Barbara Fila. Automates pour l’analyse de documents XML compressés, applications à la sécurité d’accès. Informatique [cs]. Université d’Orléans, 2008. Français. �tel-00491193�

(2)

Laboratoire d'Informatique Fondamentale d'Orléans

Barbara FILAKORDY

Automates pour l'analyse de

douments XML ompressés,

appliations à la séurité d'aès

Thèse dirigée par: Professeur Siva ANANTHARAMAN

JURY:

Professeur Françoise GIRE, Université de PARIS

1

Professeur Sophie TISON, Université de LILLE

1

Professeur Siva ANANTHARAMAN, Université d'ORLÉANS

Professeur Mihael BENEDIKT, University of OXFORD

DireteurdeReherheMihaëlRUSINOWITCH,INRIALorraine

Professeur Moshe VARDI, RICE University

Thèse soutenue le

4

novembre

2008

à Orléans

(3)

Introdution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Chapitre 1. État de l'art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.1. Évaluation derequêtessurdoumentsXML . . . . . . . . . . . . . . . . . . . 5

1.2. Contrled'aèsauxdoumentsXML . . . . . . . . . . . . . . . . . . . . . . 7

1.3. Compression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.4. Inlusionetminimisationderequêtes . . . . . . . . . . . . . . . . . . . . . . . 12

Chapitre 2. Requêtessur doumentsXML préliminaires . . . . . . . . . . 15

2.1. DoumentsXML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.2. Représentationdedouments . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3. Requêtes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.4. RequêtespositivesdeCoreXPath . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.5. RequêtespositivesdeXPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Chapitre 3. Évaluation de requêteset ontrle d'aès . . . . . . . . . . . . . 25

3.1. Préliminaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.2. Systèmedetransitionspourunerequêteélémentaireatomique . . . . . . . . . 26

3.3. Systèmedetransitionspourunerequêteélémentairenonatomique . . . . . . 27

3.4. Systèmedetransitionspourunerequêtequelonque. . . . . . . . . . . . . . . 32

3.5. Stratégielinéaired'évaluationd'unerequête . . . . . . . . . . . . . . . . . . . 33

3.6. Évaluation derequêtessousontrled'aès . . . . . . . . . . . . . . . . . . . 35

3.7. Pouvoird'expressiondelavuelausalepourleontrled'aès . . . . . . . . 40

Chapitre 4. Requêtessur douments ompressés . . . . . . . . . . . . . . . . . 41

4.1. Représentationompresséededoumentsarboresents . . . . . . . . . . . . . 41

4.2. Trdagvuommegrammaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.3. Évaluation derequêtesàl'aidedesautomatesdemots . . . . . . . . . . . . . 45

4.3.1. Requêtesutilisantlesaxesvertiaux . . . . . . . . . . . . . . . . . . . 49

4.3.2. Requêtesutilisantlesaxeshorizontaux . . . . . . . . . . . . . . . . . . 53

4.4. Résultatssurlerundepriorité maximale. . . . . . . . . . . . . . . . . . . . . 55

4.5. Algorithmepourlerundeprioritémaximale . . . . . . . . . . . . . . . . . . . 58

4.6. Évaluation derequêtesomposées . . . . . . . . . . . . . . . . . . . . . . . . . 61

4.7. Réponse àunerequêtesurarbreéquivalent. . . . . . . . . . . . . . . . . . . . 65

4.7.1. Requêtesomposéesvialesautomatesrévisés . . . . . . . . . . . . . . 71

Chapitre 5. Inlusion de patterns via la réériture . . . . . . . . . . . . . . . . 76

5.1. Inlusiondepatterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

5.2. Rééritureetinlusiondepatterns . . . . . . . . . . . . . . . . . . . . . . . . 79

Conlusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

(4)

Le problème de l'extration d'information dansdes douments semistruturés,

du type XML, onstitue un des plus importants domaines de la reherhe atuelle

en informatique. Il a généré un grand nombre de travaux tant d'un point de vue

pratique,qued'unpointdevuethéorique(voirChapitre1). Dansetravaildethèse,

nousnoussommes xés deuxobjetifs:

1. évaluation des requêtes sur un doument assujetti à une politique du ontrle

d'aès,

2. évaluation des requêtes sur un doument pouvant être partiellement ou totale-

ment ompressé.

Notreétudeporteessentiellementsurl'évaluationdesrequêtesunaires,.àd.,séle-

tionnantunensembledesn÷uds dudoument,quisatisfont lespropriétés spéiées

par larequête. Pour exprimerles requêtes,nousutilisonsXPath [92℄ leprinipal

langage de séletion dansles douments XML.Grâe à ses axes "navigationels", et

ses ltresqualiatifs, XPath permetlanavigation dansdes doumentsXML, etla

séletion desn÷uds répondant àlarequête.

XML(eXtensibleMerkupLanguage)[97℄estdevenulestandarddereprésentation

etd'éhangedesdonnéessurleWEB.Ilestbasésurunsimplemaispuissantonept,

elui deséléments balisés. Un élément balisé peut représenter une petite partie du

doument,ouunobjettrèsomplexe. Lesélémentspeuvent êtreimbriqués,.àd.,

unélémentpeutêtreomposéd'autreséléments. Deplus,desattributsquiapportent

desinformationssupplémentaires,peuventêtreassoiésauxéléments. AuChapitre2

nous présentons brièvement le adre de notre travail : les douments XML et le

langage XPath. Nous y dénissons également deux fragments de XPath, auxquels

nousnousintéresserons par lasuite.

L'utilisationtrèsrépandud'XMLaentraînélanéessitéd'introduiredesmodèles

et tehniques pour séuriser les données XML. La séurisation est ruiale pour

failiter la propagation des données qui ontiennent des informations représentant

les diérents niveaux de sensibilité et d'aessibilité. Dans e travail nous nous

foalisonssurlesaspetsdeséuritéliésàl'autorisationd'aèsàl'information la

ondentialité. Cettedernièreestengénéralassuréepardesméanismesdeontrle

d'aès(politiquesduontrle d'aès,lés et.). Nousavonshoiside modéliserles

politiquesduontrled'aèspardeslausesdupremierordre,etplusspéiquement

par deslausesdeHorn, pouvant êtresoumisesàdesontraintes. Untelhoix nous

permet d'évaluer des requêtes sur les douments XML, en utilisant une approhe

baséesurdessystèmesde transitionsappropriés(Chapitre 3). L'idée estd'exprimer

les transitions de es systèmes également par des lauses de Horn ontraintes, et

(5)

ensuite de les oupler ave elles traduisant la politique du ontrle d'aès. Il

n'est pasdiile de montrer qu'ave une telle modélisationon ouvre biend'autres

approhes, telles que par exemple RBAC (Role Based Aess Control), ou elles

basées surl'attribution de lés auxn÷uds et/ouauxattributs.

ToutdoumentXMLaunestruturearboresente,dond'unemanièrenaturelle,

estreprésentépar un arbre. Néanmoins,une tellereprésentation est souvent redon-

dante,arsurunarbre,lamêmeinformationpeutgurerplusieursfois. L'utilisation

des strutures ompressées telles que les dags (direted ayli graphs), ou les

grammaires d'arbresappropriées au lieudesarbres, permetalors d'optimiseron-

sidérablement l'espae de stokage des douments, ainsi que le temps d'évaluation

des requêtes. Les avantages d'utilisation des strutures XML ompressées ont été

étudiés, entreautres,dans [35,16 ,64 ℄.

Les douments que nous onsidérons dans e travail peuvent être totalement

ou partiellement ompressés. Un doument est donné sous une forme totalement

ompressée, si le dag qui le représente ontient toute information une seule fois.

Toute représentation intermédiaire,entre l'arbre etlaforme totalement ompressée

d'un doument donné, est une forme partiellement ompressée de e dernier. Au

Chapitre 4,nousdévelopponsune approhe pour l'évaluationdesrequêtes positives

de Core XPath, sur les douments ompressés représentés par les dags. Elle est

basée sur sept automates de mots, orrespondant aux sept axes de base de Core

XPath. Grâeàunedénitionappropriée,esautomatespeuventourird'unefaçon

desendante, sur les dags. Cette méthode nous permet d'évaluer des requêtes sur

les douments partiellement ou totalement ompressées, sans devoir déompresser

es derniers. De plus, pour une requête Q et un doument (ompressé) t donnés,

l'évaluation de Q sur t peut être adaptée de façon à fournir exatement la même

réponseque l'évaluationde Qsurl'arbre représentant t(Setion 4.7).

Ilimporte denoterquelaomplexitédesapprohesquenousavonsdéveloppées,

reste omparable à elle des méthodes onnues : linéaire par rapport au nombre

d'arêtes du doument donné, etpar rapportà lataille de larequête onsidérée. En

partiulier, elle est linéaire par rapport au nombre de n÷uds, si le doument est

arboresent (nonompressé).

Dansladernièrepartie denotre travail,nousesquissonsune approhe quitraite

du problème d'inlusion des shémas de requêtes (pattern ontainment, [67 , 77 ℄).

Cette approhe est basée sur des tehniques de réériture. On remarque que tout

doument XMLétantun arbre, peutêtrevuommeun "pattern" (ausens de[67 ℄).

De plus, toute requête positive de Core Xpath, n'utilisant que des axes hild et

desendant, dénit aussiun tel pattern. Résoudre le problème d'inlusion de pat-

terns revient de faità répondreauxquestionssuivantes:

soient deuxrequêtes Q,Q etun doument t:

vériersitoute réponseà Qonstitue également une réponseà Q (Q⊆Q);

vériersiQetQ ontexatementlesmêmeréponsessurtoutdoument(Q≡Q);

vériersiQ admet(au moins) uneréponse surt(t⊆Q).

Au Chapitre 5, nous dénissons un système de règles de réériture basées sur la

sémantique de l'inlusion de patterns, et montrons que pour deux patterns donnés

Q et Q, Q est inlus dans Q si et seulement si, il est possible de réérire Q vers

(6)

Q, en utilisant les règles de e système. Il est important de noter que ette vision

de requêtes ommedespatternspeutservirde basepour letraitement desrequêtes

naires,.àd.,ellesquiséletionnentunensembledesnupletsden÷uds. Anoter

égalementquelesrésultatssurl'inlusiondepatterns,obtenusdansetravail,restent

validesmême lorsque lesmodèlesdes patternssont desdoumentsompressés.

(7)

État de l'art

Cetétatdel'artpeut êtrevuommele point dedépartpourlaprésentethèse. Nous

yénonçonslesplusimportantsrésultatsonnus,onernantl'évaluationdesrequêtessur

lesdoumentsXML(Setion1.1),leontrled'aès(Setion1.2),laompression(Se-

tion1.3),etleproblèmed'inlusionetde minimisationdesrequêtes(Setion1.4). Nous

esquissons brièvement les diérentes méthodes existantes, ainsi que leurs omplexités.

Nousessayonségalementde situernostravaux(détaillésdanslasuitede erapport)par

rapportàesrésultats onnus.

1.1. Évaluation de requêtes sur douments XML

XML, standardisé en janvier 1998, joue un rle de plus en plus important pra-

tiquement dans toutes les branhes d'informatique ontemporaine. Conevoir les

outilseaespourl'extrationdesinformationsdanslesdoumentsXMLestdevenu

l'objetif prinipalde nombreuxherheurstravaillantdansledomaine desbasesde

données. Plusieurs fragments des diérentes logiques (FOL [10, 9℄, logique modale

[64℄, MSO [75℄, datalog monadique [35 , 40℄ et.) ont été étudiés dans le ontexte

d'évaluation des requêtes sur les douments XML. MSO (Monadi SeondOrder

Logi) a été proposé dans [75 ℄ omme un repère pour le pouvoir d'expression des

langagesde séletion. Néanmoins,MSOn'est pasapproprié pour onstituer unlan-

gagederequêtespratique,arilpermetd'exprimerdesrequêtestrèsomplexesd'une

façon très onise, e qui entraîne que le problème d'évaluation devient intraitable

[34℄. Or, ilexistedeslangagesommeleµ-alulmodalou ledatalogmonadique

[35, 40℄ qui ont le même pouvoir d'expression sur les arbres que MSO, mais

l'évaluation de requêtes est plus eae. Par exemple, la omplexité d'évaluation

desrequêtesdedatalogmonadiquesurlesdoumentsXML,estmontréelinéaire par

rapport à la taille du programme datalog orrespondant, et la taille du doument

onsidéré [39 ℄.

L'utilisationdeplusenplusrépandudeXMLasusité,durantladernièredéen-

nie,ledéveloppementdeslangagesderequêtes,telsqueXPath,XQuery,spéialement

onçus pour traiter les douments XML. XPath [92℄ est un langage pour adresser

ertaines parties des douments XML. Il est également inorporé dans plusieurs

formalismesliésà XML,tels que:

XSLT [93 ,15 ℄(eXtensible Style sheetLanguageTransformations) unlangage permettant detransformer undoument XML enun autredoument XML;

(8)

XQuery [99 ℄ un langage de requêtes d'ordre supérieur, qui ore entreautres,

une possibilitéde modier le résultatd'évaluationd'une requête, etde produire

desnouveaux doumentsXML;

XPointer [96℄ une spéiation du W3C, dont l'objetif est de permettre de

référenerun fragment d'un doument XMLexterne enligne;

XML Shema [95 ℄ et XLink [94 ℄ des expressions XPath servent à dénir deslés d'aès.

XPathVersion1.0àétépubliéommeunereommandation deW3Cen 1999. C'est

un langage sans variables, onçu pour séletionner des n÷uds dans les douments

XML, en spéiant des hemins d'aès. De tels hemins peuvent alternativement

êtreformulésdanslalogiquedepremier ordre(FOL). Néanmoins,lapartie denavi-

gation deXPath, diteCore XPath,n'est pasassez puissantepour exprimertousles

heminsd'aèsdénissablesenFOL.MihaelBenediktetChristophKohmontrent

dans[10℄queleCoreXPathouvrepréisémenttouteslesrequêtesdeFOLavedeux

variablessurlastruture de navigation dedouments XML.Dans[63 , 65℄,Maarten

Marx introduit XPath ave desaxes onditionnels (enanglais Conditional XPath),

une extension de Core XPath (toujours sans variables), dans laquelleil est possible

d'exprimer tout hemin d'aès sur un arbre XML, dénissable en FOL. La toute

dernière version de XPath [98℄ (XPath 2.0, reommandée par W3C depuis 2007),

étend onsidérablement le pouvoir d'expression de XPath 1.0. Elle ontient des

variables, et ore une possibilité d'exprimer des formules quantiées de FOL. Par

onséquent, elle ouvre pratiquement toutFOL.

Dans le présent travail, nous nous restreignons à XPath 1.0, qui est toujours

largement employé par les utilisateurs d'XML. Nous présentons ii deux approhes

permettant d'évaluer des requêtes positives de XPath, sur les douments XML :

la première (Chapitre 3) est basée sur des systèmes de transitions, et la deuxième

(Chapitre 4) surdes automates de mots. La théoriedes automates a étélargement

utiliséepourl'évaluationde requêtes surlesdoumentsXML [75 ,74,76 ,39 , 73,44 ,

19, 62, 78℄. Dans le ontexte étudié ii, les plus importants sont des automates de

requêtes,proposésparNevenetShwentikdans[76 ℄,pour l'évaluationdesrequêtes

MSO sur les arbres d'arité xe (en anglais ranked) et non xe (unranked). Un

automate de requête est un automate déterministe bidiretionnel d'arbres, qui a

une apaitéde séletionner desn÷uds,grâe àun ensembled'états séletionnants.

Nousutilisonse onept d'étatsséletionnantsdansnotreapprohe présentéedans

leChapitre 4.

Lesarbres d'arité non xeonstituent les meilleurs modèles pour les douments

XML, mais leur utilisation peut être problématique, ar ils peuvent être réursifs

en largeur et en profondeur. Pour aborder e problème plusieurs méthodes on

été employées : Dans [41 ℄ Gottlob et al. redénissent tous les axes de XPath en

n'utilisant que deux relations rsthild et nextsibling, e qui permet d'évaluer des

requêtes sur une représentation binaire (lassique du type rsthild nextsibling)

d'undoumentarbred'ariténonxedonné. Desautomatesdehaie(enanglais

hedge automata) [49, 72 ℄utilisent un niveau de réursivitésupplémentaire dans des

transitions, pour exprimer la réursivité horizontale. Pourtant, une telle extension

syntaxique entraîne de nombreux problèmes tehniques [39, 76℄. Des automates

(9)

d'arbres stepwise, dénis dans [19 ℄, ourent surune nouvelle représentation binaire

d'arbres d'arité non xe. En utilisant e odage, les auteurs de [19℄ montrent que

les automates d'arbres stepwise ont le même pouvoir d'expression que le datalog

monadiqueetMSO.Deplus, ilaétémontrédans[62 ℄queesautomatesfournissent

desreprésentations très onises,e qui est important de point de vue duproblème

de minimisation.

Laquestiondelaomplexitéd'évaluationdesrequêtesXPath,surlesdouments

XML,a été abordée dans[41 , 42℄pour les doumentsarboresents, etdans [16,35 ℄

pourlesdoumentsompressés(pourplusd'informationsurl'évaluationdesrequêtes

XPath sur les douments XML ompressés, voir la Setion 1.3). En se basant sur

desobservationsexpérimentales,lesauteursde[41 ℄onstatentquel'évaluationd'une

requêteQdonnéenéessite(danslepiredeas),danslamajorité desévaluateursde XPath existants, un temps exponentiel par rapport à la taille de Q. Pourtant, des

requêtes XPath peuvent être évaluées beauoup plus eaement. Gottlob, Koh

etPihler proposent dans[41℄desalgorithmes quipermettent d'évaluerles requêtes

quelonquesdeXPath entempspolynomialombiné, .àd.,par rapportàlataille

de la requête et la taille du doument. D'ailleurs, ils montrent omment implé-

menter leurs algorithmes dans des évaluateurs de XPath existants. Ils distinguent

deuxfragmentsdeXPath Core XPath etXPatterns pour lesquelsilexiste des

algorithmeslinéaires(entemps)d'évaluation. Danslaversionétenduedeleurartile

([43 ℄),Gottlob,KohetPihlerdéveloppentlesrésultatspréédents,enprouvantque

la omplexité ombinée d'évaluation de requêtes XPath est PTIMEhard. Ils iden-

tient également plusieurs fragmentsde XPath, fréquemment utilisés, pour lesquels

laomplexité ombinée du problèmed'évaluationest dansune lassede omplexité

parallélisable NC

2

. Pour nir ette setion, notons que la omplexité en temps de

nos deux approhes d'évaluation de requêtes, présentées dans les Chapitres 3 et 4,

est linéaire par rapport àla taille de la requête et le nombre d'arêtes du doument

onsidéré.

1.2. Contrle d'aès aux douments XML

Puisque les systèmes informatiques fournissent des appliations multiples aux

utilisateursmultiples,laprotetiondesdonnéesatoujoursétéunequestion dans

le ontexte de systèmes d'information. Le rle du ontrle d'aès estde permettre

ou interdire à des sujets(utilisateurs ou proessus),d'exéuter desopérations (lire,

érire, modier, supprimer et.) sur des objets (données ou programmes) dans le

systèmeinformatique[57 ℄. Grâeauontrle d'aès,lesystèmepeutlimiterl'aès

à ertaines données, aux utilisateurs non autorisés. Ainsi, les bases de données

relationnelles sont en général aompagnées d'un méanisme de ontrle d'aès,

intégré dans le système, et basé sur des vues, des droits d'aès, ou des tables de

privilèges aordésauxutilisateurs [20 ℄.

L'utilisationtrèsrépandudeXMLaentraînélanéessitéd'introduiredesmodèles

ettehniquespourséuriserlesdonnéesXML.Unertainnombredenormes(omme

OASIS standard [79 ℄, ou XACL [51℄) ont été introduites, pour aborder leproblème

du ontrle d'aès auxdouments XML. Diérentes approhes [71 , 37 , 26 , 27 ,14 ,

Références

Documents relatifs

• Quantum Optics Research: fluids of light in exciton-polariton systems and warm atomic media, superfluidity, quantum simulation using atomic-based quantum memories.. • Photonic

An ultra-high optical depth cold atomic ensemble for quantum

[r]

Q₂ Dresser la liste complète des N factorions en base 10 Pour les plus courageux avec l’aide d’un automate:. Q₃ Démontrer qu’il existe une base b < 10 dans laquelle il

(1) (5 points) Construire un graphe simple, non orienté et 3 -régulier possédant une arête de oupure. Exprimer, en fontion de elles-i,.. le nombre de hemins fermés de longueur n dans

À travers cet essai, nous nous intéresserons à l’impact d’une nuit de privation de sommeil sur la façon dont l’être humain se représente mentalement un groupe ethnique

63 Le FONG a été admis comme membre du ROPPA en tant que Plateforme nationale représentant les paysans ghanéens, lors de la 4ième convention ordinaire du ROPPA qui s'est tenue à

• Pour le mouvement des planètes, on vérifie les deux premières lois de Ke- pler : mouvement elliptique (donc plan) et vérifiant la loi des aires...