Web 2.0 et Sécurité XForms XUL Annotations RDF et fils RSS

Slides:



Advertisements
Présentations similaires
Jean-Pierre Villain - Qelios W3Café Accessibilité - Paris – Avril 2011
Advertisements

Tutoriel - Les Ressources du BCH
Présentation des technologies SharePoint 2007
Les technologies décisionnelles et le portail
« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
Transformation de documents XML
TOUQUET Arnaud ▪ GI05 BLONDEEL Igor ▪ GM05
Première expérience d’utilisation des Web Services dans SmartTools Didier Parigot Projet OASIS INRIA Sophia www-sop.inria.fr/oasis/SmartTools Journée.
Serveur jeu Le serveur fait partie d'un logiciel de jeu en ligne multi joueur en architecture client serveur. Il répond à des demandes.
19 septembre 2006 Tendances Logicielles IBM Rational Data Architect Un outil complet de modélisation et de conception pour SGBD Isabelle Claverie-Berge.
Connecter des données métier à Office SharePoint Server 2007 via le Business Data Catalog.
Personnalisation des sites SharePoint avec SharePoint Designer 2007
Construire un site Web Internet en utilisant Microsoft Office SharePoint Server 2007.
Microsoft Office Groove Le contexte Une utilisation des postes de travail en très grande évolution chez les professionnels. Des lieux de travail.
Introduction aux fonctions de gestion de contenu Web dans Microsoft Office SharePoint Server 2007.
Excel 2007 et les services Excel. Pourquoi Excel ? Outil privilégié danalyse des données issues des bases multidimensionnelles Ergonomie connue des outils.
INTRODUCTION INTRODUCTION ERGONOMIE Tri par cartes Formulaires Interface Installation Lanceur Documentation TECHNOLOGIES XML + XSL CSS Formulaires génériques.
L’architecture .net et ASP.net
Vue d'ensemble Implémentation de la sécurité IPSec
version Beta Marie Calberg Ninni Louhelainen SLFN7
Design Pattern MVC En PHP5.
Sécurité Informatique
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
INTRODUCTION Sites vitrines vs sites applicatifs Un concept abstrait
Etude des Technologies du Web services
Nouveau blog. WordPress connexion Nommez votre blog.
XML-Family Web Services Description Language W.S.D.L.
Amélioration de la sécurité des données à l'aide de SQL Server 2005
Réalisée par :Samira RAHALI
Développement Rapide dApplications Web avec.NET « Mon premier site »
Web Sémantique: Le Relief Actuel
Le Travail Collaboratif ...
RDF(S)
ASP.NET Par: Hugo St-Louis. C ARACTÉRISTIQUES A SP. NET Évolution, successeur plus flexible quASP (Active Server Pages). Pages web dynamiques permettant.
Introduction à la structuration des documents: les techniques M2: Gestion des connaissances.
Notions sur le XML Réfs : manuel p 149. Introduction Le XML (eXtensible Markup Language) est un standard d'échange de données. Il fait partie comme le.
Clients riches RIA (Rich Internet Application) / RDA
An Introduction to distributed applications and ecommerce 1 1 Les services Web, XML et les places de marchés.
PhP-MySQL Pagora 2012/2013 CTD 1 - Presentation de moi ^^
Jonathan Montois Cyrille Kriegel
Intégration des TIC et nouveaux outils
La veille numérique : un outil pour s'informer intelligemment &
LES CLIENTS WEB RICHES Tuteur : Olivier CARON LEFEBVRE Benoit
Le langage du Web CSS et HTML
PROGRAMMATION WEB FRONT-END.
Content Management System CMS. Pourquoi ? Obligation de ressaisir des contenus publiés à plusieurs endroits Pas d’outils de gestion de qualité de l’information.
E-Technology lab Plateformes, Technologies et Architectures pour les systèmes eGouvernement Par: Dr Mamadou Koné Université Laval, Québec, Canada et Houda.
0 Objectifs de la session n°1  Revenir sur toutes les bases théoriques nécessaires pour devenir un développeur Web,  Découvrir l’ensemble des langages.
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
L’ ACCESSIBILITE « C’est mettre le Web et ses services à la disposition de tous les individus, quels que soient leur matériel ou logiciel, leur infrastructure.
Web sémantique Par Lydia Carine Mampais KI Bamba SISSOKO
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Metro Web Services Ben Yaflah Marouen Dhrif Mohamed Hbib Hajlaoui Nader.
Programmation Web : Introduction à XML
Mastère Professionnel Systèmes de Communication et Réseaux
Séminaire (6-12 Février 2007) Promo. M2 ESCE-Tunis 2006/07
Web sémantique est pratique documentaire
S'initier au HTML et aux feuilles de style CSS Cours 5.
Développement d’application Web.  Internet  WWW  Client/Serveur  HTTP.
Struts.
Module 3 : Création d'un domaine Windows 2000
Reveal-This Ou comment générer des métadonnées utiles automatiquement.
G.KEMBELLEC - UP81 Master 2 THYP Cas pratique d’utilisation De simpleXML Un lecteur de RSS Novembre 2009.
Soutenance du mémoire de synthèse
G ROUPE IRIUM ™ N°1 européen des PGI pour Distributeurs, Loueurs & Importateurs de Machines Les Bases de Connaissances Knowledge Base Maxime HILAIRE 07/05/2008.
eXtensible Markup Language. Généralités sur le XML.
Karine Vallin - Dorian Baysset
Sécurité des Web Services
Enterprise Content Management © 2007 IBM Corporation 02 octobre IBM FileNet User Group Bertrand BLASQUEZ - Consultant ECM IBM.
Transcription de la présentation:

Web 2.0 et Sécurité XForms XUL Annotations RDF et fils RSS Web 2.0 et Web sémantique XML & Bureautique XML & Sécurité

1. XForms: La Saisie XML Spécification W3C depuis Octobre 2003 Spécification jeune Remplacera les formulaires dans XHTML 2.0 Un avenir annoncé Produits: Altova, Open Office, MS InfoPath différent Objectifs Des formulaires entièrement en XML et XML Schema Permettre une utilisation dans tous documents XML Séparer le contenu (XML) de la présentation (XHTML) Fournir une syntaxe simple et déclarative Décentraliser la validation avec la présentation XForms

XForms: Principes Nouvelle génération de formulaires Web Assemblage de formulaires à partir de schéma Schéma = structure + type Contraintes = Dépendances, expressions et calculs XForms User Interfaces est la partie apparente pour l’utilisateur (présentation) XForms User Interfaces intègre des boites symboliques à label Peut être réalisée en XHTML, WML, … Ajoute en plus des contrôles spécifiques au niveau présentation. XForms

Saisie des formulaires Génération et contrôle du message XML Contrôle sur le client ou le serveur XForms Model User Interface <XML> Instance data XForms Submit Protocol XForms

XForms: Avantages Internationalisation Accessibilité Portabilité échanges facilités par XML et Unicode Accessibilité Sépare la forme du contenu et de la logique Portabilité Pateforme et machine indépendant Flexibilité Création déclarative du formulaire Fonctionnalités : Réduit ou élimine les scripts Validation : typage fort via XML-Schema Calcul : calcul automatique via X-PATH Plusieurs formulaires par page et pages par formulaire XForms

2. XUL: Interfaces Graphiques XUL (prononcez zool, cela rime avec cool) a été créé pour avoir un développement du navigateur Mozilla plus facile et plus rapide Langage conçus spécialement pour créer des interfaces utilisateurs portables Langage XML étendant les fonctionnalités pour créer des interfaces graphiques XHTML, SVG, MathML, … intégrables dans XUL Feuilles de style XSL et CSS applicables XUL

Eléments créables avec XUL Champs de saisie tels que des boîtes de textes et des cases à cocher Barres d'outils avec boutons et autres contenus Menus dans des barres de menus ou menus « pop-up » Boites de dialogues à onglets Arbres pour informations hiérarchiques ou tabulaires Raccourcis claviers … XUL

Les éléments XUL Eléments de premier niveau Widgets Modèle de boite e.g. window, page, dialog, wizard, etc. Widgets  e.g. label, button, text box, list box, combo box, radio button, check box, tree, menu, toolbar, group box, tab box, color picker, spacer, splitter, etc. Modèle de boite e.g. box, grid, stack, deck, etc. Evénements e.g. script, command, key, broadcaster, observer, etc. Sources de données e.g. template, rule, etc. XUL

Contenus XUL Données dans le fichier XUL Source de données messages des boîtes aux lettres, Marque-pages, résultats de recherche fichiers décrits en RDF Chargement de fichier XUL à partir d'un site distant type de contenu application/vnd.mozilla.xul+xml XUL est habituellement stocké dans des fichiers .xul Possibilité d’ouvrir un fichier XUL avec Mozilla Paquetage chrome installé avec Mozilla XUL

Exemple <?xml version="1.0" encoding="ISO-8859-1"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="example-window" title="Exemple 2.2.1" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <button label="Normal"/> <box> <description>Hello world!</description> </box> <button label="Désactivé" disabled="true"/> </window> Bouton actif Boite à texte Bouton désactivé XUL

Evénements et Actions À chaque objet graphique peuvent être associés des événements (clic de souris, double-clic,touche entrée, etc.) pour lesquels le développeur doit écrire du code (typiquement en Javascript) à exécuter par la machine cliente Exemple : boite active </box> <hbox> <textbox id="labelfield" flex="1" oninput="validateInput();"/> <button id="addButton" label="Add Item" disabled="false" oncommand="addItem();"/> </hbox> XUL

XUL: Bilan Extension de XHTML pour Mozilla Permet de définir des interfaces graphiques avec : Structure et contenu (fichier XUL) Apparence (CSS) Traitement (événements et code, DOM) Portabilité sur tout mobile Disposant d’un interpréteur XUL XAML (Zammel = eXtensible Application ML) langage graphique déclaratif développé pour les besoins du nouveau système d'exploitation de Microsoft, Windows Vista fait partie de Windows Presentation Framework XUL

3. Annotations, Descriptions et Web 2.0 RDF = Resource Description Framework Pour exprimer des méta-données sémantiques sur des pages Web Pour aider à traiter l'information (moteur de recherche, intégration, etc.) Classification des ressources décrites par des propriétés de valeurs fixées Pour faciliter le partage et l'échange de contenus RDF

RDF: Modèle Un modèle et deux syntaxes XML pour exprimer des méta-données Triplets permettant de décrire l'information du Web Ressource, Propriété, Valeur http://www.exemple.org/article1 titre "Semantic Web" Une ressource est un objet (document ou fragment) défini par une URI Une valeur est une ressource ou un litéral Les descriptions RDF sont faites en termes définis dans une ontologie (en RDF Schema ou OWL) RDF

RDF: Graphe Sémantique http://www.exemple.org ref-article1 http://www.exemple.org/article1 auteur titre date "Tim Berners-Lee" "Semantic Web" "30-10-2003" RDF

RDF: Exemple Ajoute du sens : article avec auteur, titre, date .. <rdf:Description rdf:about=" http://www.exemple.org"> <ref-article1 resource= http://www.exemple.org/article1 /> </rdf:Description> <rdf:Description rdf:about="http://www.exemple.org/article1"> <auteur> Tim Berners-Lee</auteur> <titre>Semantic Web</titre> <date> 30-10-2003 </date> Ajoute du sens : article avec auteur, titre, date .. RDF

RSS: Syndication de Contenus RSS = Rich Site Summary RSS = Really Simple Syndication Annotation de site Web en RDF spécialisé et étendu Plus de la moitié des sources d’information sont décrites et publiées en RSS exemples: Libération, Le Monde, Le Figaro, … méthode simple et efficace pour accéder aux meilleures sources d'information sur le web. permet aux sites Internet et aux blogs de proposer leur contenu de manière simplifiée. Lu et présenté par un agrégateur RSS (e.g., Yahoo) mises à jour sont détectées automatiquement par l'agrégateur Atom = Autre langage de description de flux basé RDF RSS

Que gagne-t-on à utiliser RSS ? l'efficacité les toutes dernières infos sont automatiquement rassemblées sur votre portail la variété les titres concernant les sujets qui vous intéressent sont mis en évidence la clarté les titres peuvent être affichés en fonction de leur importance et/ou en commençant par le plus récent l'ordre les lettres d'information par email et les favoris négligés peuvent vite devenir encombrants ! RSS

Exemple RSS <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">   <channel>     <title>XML.com</title>     <link>http://www.xml.com/</link>     <description>XML.com features a rich mix of information and services for the XML community.</description>     <language>en-us</language>         <item>       <title>The .NET Schema Object Model</title>       <link>http://www.xml.com/pub/a/2002/12/04/som.html</link>       <description>Priya Lakshminarayanan describes in detail the use of the .NET Schema Object Model for programmatic manipulation of W3C XML Schemas.</description>       <dc:creator>Priya Lakshminarayanan</dc:creator>       <dc:date>2002-12-04</dc:date>         </item>     <item>       <title>SVG's Past and Promising Future</title>       <link>http://www.xml.com/pub/a/2002/12/04/svg.html</link>       <description>In this month's SVG column, Antoine Quint looks back at SVG's journey through 2002 and looks forward to 2003.</description>       <dc:creator>Antoine Quint</dc:creator>       <dc:date>2002-12-04</dc:date>         </item>   </channel> </rss> RSS

Agrégateurs RSS AmphetaDesk - http://www.disobey.com/amphetadesk/ Free, cross platform, open-sourced, syndicated news aggregator.  Pluck - http://www.pluck.com/ A tool that automatically retrieves RSS feeds then delivers the results for scanning and customized sorting.  Sage - http://sage.mozdev.org/ RSS and Atom feed aggregator extension for Mozilla and FireFox browsers.  Rocketinfo Desktop - http://www.rocketinfo.com/ Search software for finding and sharing news with integrated solid RSS newsreader.  Planet - http://www.planetplanet.org/ Server software that combines several feeds together and publishes them together on one web page.  BottomFeeder - http://www.cincomsmalltalk.com/BottomFeeder/ A Smalltalk, desktop RSS Reader. Open source, runs on Windows, Mac, and various Unix flavors.  Feed on Feeds - http://feedonfeeds.com/ A Free PHP/MySQL based server-side RSS and Atom aggregator. All feeds are in one place, and users can read the latest news wherever they are. … les principaux browsers (Firefox, IE, Opera …)  RSS

ATOM Semblable à RSS 2.0, mais vise à être plus flexible Intègre un protocole d’échange au-dessus de HTTP Normalisé par l'IETF contrairement aux divers RSS, pilotés par des entreprises privée Spécifié par un schéma XML Moins utilisé que RSS RSS/ATOM

Exemple ATOM <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom"> <title>Example Feed</title> <subtitle>A subtitle.</subtitle> <link href="http://example.org/"/> <updated>2003-12-13T18:30:02Z</updated> <author> <name>John Doe</name> <email>johndoe@example.com</email> </author> <id>urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6</id> <entry> <title>Atom-Powered Robots Run Amok</title> <link href="http://example.org/2003/12/13/atom03"/> <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id> <summary>Some text.</summary> </entry> </feed> RSS/ATOM

Web 2.0: Définition Terme marketing inventé par O’Reilly Media D’après Wikipedia, l’encyclopédie du Web 2.0 « terme souvent utilisé pour désigner ce qui est perçu comme une transition importante du World Wide Web, passant d'une collection de sites web à une plateforme informatique à part entière, fournissant des applications web aux utilisateurs. Les défenseurs de ce point de vue soutiennent que les services du Web 2.0 remplaceront progressivement les applications de bureau traditionnelles. » Web 2.0

Web 2.0: des techniques éprouvées ? HTTP et HTTPS: Protocoles URI: Identifiants universels XHTML: version XMLisée de HTML CSS 2.0 : Feuilles de style de base XSL : Feuilles de style pour XML JScript: langage de script (JavaScript) RSS et ATOM: Syndication de contenus REST: Style d’architecture de services avec appels HTTP Services web: Composants accédés et décrits en XML Ajax: XML sur HTTP en mode asynchrone via Javascript XSP: Pages XML dynamiques  Web 2.0 We

Un côté social via interactivité et groupes Création de réseaux sociaux de sites Web dynamiques Utilisation de moteurs de recherche ciblés sur des sites d’intérêt Développement de sites composites à partir d’autres par composition et agrégation (mesh-ups) Partage, collaboration, implication valeurs fondamentales du web 2.0 une évolution des usages au-delà des avancées techniques Web 2.0

Wikis: L’outil de collaboration Application Web collaborative permettant aux utilisateurs de créer des contenus et à n’importe qui [autorisé] de les éditer sans restriction Simplification du processus de création de pages Web, avec création incrémental de connaissance en groupe L’encyclopédie universelle éditable: Web 2.0

Sémantique Web Évolution du Web pour rendre l'information plus accessible Un vaste espace de documents semi-structurés (XML) Avec une sémantique commune Compréhension des pages Web Annotations RDF Sémantique commune Bases d’annotations: RDFS et OWL Décrire le contenu avec un formalisme à base de connaissances (RDF) Utiliser des ontologies communes (RDF Schema, OWL) pour annoter les documents Web 2.0

Du Web au Web Semantique W3C Semantic Web Activity Marja-Riita Koivunen and Eric Miller, Nov. 2001 Web 2.0

Pile de travail Web 2.0

Contributions essentielles XML Schema RDF et RDFS (RDF Schema) Ontologie RDF Schema DAML+OIL (Oasis) OWL Web 2.0

Qu'est ce qu'une Ontologie ? Définition de termes et relations entre termes utilisés pour décrire un domaine de connaissance Exemples: Finance, Tourism, Transport, Médecine, Immobilier ... Utilisée par les gens, les bases de données et les applications pour partager l'information et son sens Définition des concepts de base, de leurs propriétés et relations Web 2.0

Cas d'usage Portails Web Objets multimedia Site Web d'entreprise Description des informations publiées Objets multimedia Description des images, films, ... Site Web d'entreprise Unifier les informations Documentation de conception Description des documents d'ingénierie Agents et services Description de connaissances échangées Calculateurs embarqués et mobiles Description des capacités des mobiles et terminaux Web 2.0

OWL: le langage de définition Offrir un langage standard pour définir des ontolgies sur le Web Basé sur RDF schema: classes, propriétés et héritage Etend les constructions de base pour améliorer : L'interopérabilité (e.g., equivalences) Le raisonnement (e.g., description logic) Les évolutions (e.g., integration, version) Inspiré de DAML (Darpa) + OIL (EEC) Une syntaxe XML pour décrire des modèles objets avec contraintes Web 2.0

Exemple d'Ontologie (OTA) Web 2.0

Bilan Sémantique Web Pertinence des ontologies Web Services Description du profile Description des services Médiation Description des sources Description des schémas d'intégration P2P Définition des mots-clés Définition des mappings Web 2.0

Sémantique Web et Web Services Le Web Sémantique vise à: Faciliter les liens sémantiques pour le partage d'information et l'interopérabilité Automatiser les communications et les évaluations de requêtes basées sur la composition de Web Services Semantic Web et Web Services sont complémentaires: Semantic Web= Interopérabilité sémantique des contenus Web Services= Interopérabilité syntaxique des échanges L’ontologie OWL-S décrit la sémantique des services web Web 2.0

4. XML et la Bureautique Stockage Feuilles de styles Format des fichiers : XML devient possible Compatibilité avec l'existant Feuilles de styles Modèle d'import et d'export Des jargons spéciaux Word ML, SpreadsheetML, DataML Open Document 1.0 de l’Oasis Bureautique

Import et Export Import XSL Format XML Open- Document Modèle Format DTD Export XSL

Intégration à MS Office Word Format XML spécifique WordML, couvre le format .doc Professional inclut le support XSLT et la possibilité de créer des schémas utilisateur Possibilité d'importer et exporter du XML "pur" par application de feuilles de style XSLT Excel Format XML spécifique Importation et exportation de document XML Support des Web Services InfoPath Nouvel outil Office produisant du XML Construction de formulaires interactifs FrontPage Outils pour générer HTML avec XSLT Bureautique

Intégration à Open Office www.openoffice.org Suite bureautique Open Source Initialement développée par SUN Format natif XML Définit comme un "standard" Oasis Le XML est zippé sur disque Peut référencer du binaire (images, etc.) http://xml.openoffice.org Support de formulaire XForms Bureautique

Format OpenDocument Fichiers XML Autres fichiers Répertoires content.xml meta.xml setting.xml styles.xml minetype layout-cache Basic/ META-INF/ Thumbnails/ Pictures/ Configuration2/ Fichiers XML content.xml: Le fichier content.xml contient le véritable contenu du document (excepté le contenu binaire telles les images qui sont stockées dans des fichiers séparés). On retrouve donc à l’intérieur de celui-ci, le texte contenu dans document pouvant être organisé par chapitres, listes, paragraphes, numérotés, etc. meta.xml: Ce fichier contient les métas données associées au document. Une liste de champs prédéfinis est indiqué dans le standard: application, titre, auteur, etc.. L’utilisateur peut cependant ajouter ces propres champs à cette liste. setting.xml: Ce fichier contient les informations ne faisant pas partie du document en tant que tel, comme la position du curseur ou le zoom courant. styles.xml: Ce fichier contient les styles à appliquer au document. Un style est une collection de propriétés à la fois structurelles et de mise en forme. Les style s’applique à toutes les formes d’objet que l’on peut trouver dans le fichier « content.xml » (paragraphe, titre, etc.). Autres fichiers: minetype: Ce fichier ne contient qu’une seule ligne fournissant le type MINE du document. OpenOffice n’a donc pas besoin de prendre en compte le type d’extension du fichier (.odt, etc.). Celle-ci est néanmoins conservée pour une meilleur compréhension de l’utilisateur. Répertoires: Pictures/: Ce répertoire contient les images pouvant être insérée dans le document. Lorsqu’une image est insérée dans le document elle est alors référencée dans le fichier « content.xml » par la balise: <draw:image> (au même titre que l’HTML utilise la balise <img>). Basic/: Ce répertoire contient les scripts « Basic » éventuellement utilisés dans le document. META-INF/: Ce répertoire contient le fichier manifest.xml qui fournit la liste des fichiers (ainsi que leur type) présent dans l’archive. Thumbnails/: Ce répertoire contient un aperçu du document sous forme d’une image « .png » (Comme les miniatures dans l’explorateur Windows). Remarques: Il est important de noter que le format OpenDocument se base sur le principe de séparation des concepts. En effet la style à appliquer au document est séparé de sont contenu qui est lui-même séparé des paramétrages de visulalisation (setting), etc. Ce principe peut être très intéressant pour le traitement de ces documents par d’autres application. Une application n’utilisant que le contenu du document pour le publier n’aura à utiliser que le fichier « content.xml ».

5. Protocoles de sécurité Ensemble de protocoles pour sécuriser les échanges en XML Englobe les standards W3C : XKMS (XML Key Management Specification) XML Signature XML Encryption Et de l’Oasis : SAML (Echange d’identité et d’autorisations) XACML (Déclaration de politique de contrôle d’accès) XrML (Déclaration de droits d’accès) Intégration aux services Web WS-Security Protocole Sécurité

Les groupes de st andardisation SAML XACML XrML XKMS XML Encryption Signature Biometrics WS-Security Provisioning W3C Architecture OASIS Joint Security

5.1 XKMS Spécification du W3C prévue pour simplifier l’intégration des architectures PKI et la gestion des certificats dans les applications XML Objectifs: créer une couche abstraite entre les applications et la solution de PKI éliminer le besoin pour une application de gérer la syntaxe et sémantique complexe des PKI déplacer la complexité de l'application cliente au niveau de l'infrastructure implémenter XKMS de telle sorte qu'il soit neutre du point de vue de la plateforme, du vendeur ou du protocole de transport. XKMS comprend deux sous services XML Key Information Service Specification (X-KISS) XML Key Registration Service Spectification (X-KRSS)

Infrastructure PKI et XKMS Eléments: Autorité de certification (AC) Autorité d’enregistrement (AE) Système de publication et distribution de certificats (annuaires) Applications compatibles avec la PKI Objets manipulés: Bi-clés (publique/privée) et certificat

XKISS X-KISS définit un service web pour localiser ou valider les informations (propriétaire, statut, date de validité,…) associées à une clé publique Le service de localisation (Locate) permet, à partir d'une des informations contenues dans <KeyInfo>, de connaître les autres informations attachées Le service de validation (Validate) permet de s'assurer qu'une clé est valide, qu'elle n'a pas été révoquée et qu'il est possible de l'utiliser pour un usage spécifique (signature, encryption…).

XKRSS Définit le protocole permettant la gestion du cycle de vie d’une clé Key Registration Key Reissue Key Revocation Key Recovery

XKRSS: Enregistrement d’une clé <complexType name="KeyBinding">    <sequence>       <element name="Status" type="xkms:BindingStatus"/>       <element name="KeyID" type="string" minOccurs="0"/>       <element name="KeyInfo" type="ds:KeyInfo"/>       <element name="PassPhrase" type="string" minOccurs="0"/>       <element name="ProcessInfo" type="string" minOccurs="0"/>       <element name="ValidityInterval" type="xkms:ValidityInterval"/>       <element name="KeyUsage" type="xkms:KeyUsage"            minOccurs="0" maxOccurs="unbounded"/>       <s:element name="KeyUsage">         <s:complexType>           <s:all>             <s:element name="string" type="s:string" minOccurs="0" maxOccurs="unbounded"/>           </s:all>         </s:complexType>       </s:element>    </sequence> </complexType>

XKISS: Recherche d’une clé par nom Reponse du service XKMS <SOAP:Envelope> <LocateResult> <ds:KeyInfo> <ds:KeyName>MyMMM</ds:KeyName> <ds:KeyValue>...AfG7We7...</ds:KeyValue> </dsKeyInfo> </LocateResult> </SOAP:Envelope> Requête "Client" <SOAP:Envelope> <LocateRequest> <KeyInfoQuery> <ds:KeyName>MyMMM</ds:KeyName> </KeyInfoQuery> </LocateRequest> </SOAP:Envelope>

5.2 XML Signature Qu'est-ce que XML Signature ? Principes Standard du W3C et de l'IETF Signature de message en XML Architecture PKI sous-jacente Principes Appliquées à des "data objects" arbitraires Data objects sont placés dans un élément Cet élément est signé La signature est placée dans un élément signature Protocole Sécurité

Principe des signatures B H H Résumé Résumé Document Document CPB CsB on compare CsA CPA Signature Signature Résumé L'égalité des résumés (digests) garantit que l'émetteur connaît la clé secrète de A, donc qu'il s'agit de A. Protocole Sécurité

Structure du message Protocole Sécurité </Signature> Englobe l'information signée Ouvre la signature électronique <Signature> <SignedInfo> (CanonicalizationMethod) (SignatureMethod) (<Reference (URI=)? > (Transforms)? (DigestMethod) (DigestValue) </Reference>)+ </SignedInfo> (SignatureValue) (KeyInfo)? (Object)* </Signature> Décrit chaque objet à signer, en particulier sa localisation Indique la méthode de canonisation des objets Définit la liste des transformations appliquées à l'objet avant calcul du digest Référence la méthode de calcul du digest Définit l'algorithme utilisé pour transformer l'élément SignedInfo canonisé en SignatureValue Contient la valeur du digest de l'objet Contient la valeur du résumé de l'élément <SignedInfo> chiffré Définit les clés de chiffrements nécessaires au calcul de la signature Protocole Sécurité

5.3 XML Encryption Recommandation du W3C Protocole d'échange des données cryptées Clés publique et privée Valeurs des données cryptées Algorithmes de cryptage Chaque élément peut être crypté Possibilité de crypter à tout niveau Une partie ou la totalité d’un document Clé symétrique ou asymétrique Protocole Sécurité

XML Encryption: Principes L’expéditeur utilise la clé publique Le destinataire est le propriétaire de la bi-clés Permet de décrire la façon dont les données sont encodées conformément à XML (Infoset) Après « encryption » c’est l’élément <EncryptedData/> qui contient les données codées Les informations sur la clé utilisé sont encapsulées dans un élément <ds:KeyInfo> Peut chiffrer une partie ou la totalité d’un document

Quelques éléments CipherData: EncryptedData : EncryptedKey: Contient les données cryptées soit: sous forme d’octets dans <CipherValue> sous forme de référence dans <CipherReference> EncryptedData : Elément principal contient CipherData. EncryptedKey: Contient la clé cryptée et est utilisé pour les transports de clés Quand il est décrypté, utilisé par EncryptionMethod EncryptionMethod: Décrit l'algorithme de cryptage appliqué aux données chiffrées (optionnel)

Exemple <EncryptedData xmlns='http://www.w3.org/2001/04/xmlenc#' Type='http://www.w3.org/2001/04/xmlenc#Element'/> <EncryptionMethod Algorithm='http://www.w3.org/2001/04/xmlenc#tripledes-cbc'/> <ds:KeyInfo xmlns:ds='http://www.w3.org/2000/09/xmldsig#'> <ds:KeyName>Marcel DUPOND</ds:KeyName> </ds:KeyInfo> <CipherData><CipherValue>DEADBEEF</CipherValue></CipherData> </EncryptedData>

5.4 WS-Security Modèle d'intégration des dialectes XML pour la sécurité à WS-Security, et donc aux messages SOAP Intégration dans les entêtes SOAP des droits, signatures, encryption, …. Intégré dans les infrastructures J2EE et .NET

Jetons de sécurité Bases pour une authentification et une autorisation distribuées Les jetons de sécurité définissent des affirmations faites au sujet d’une identité, d’aptitude ou de privilèges Nom, adresse mèl, clé, groupe, rôle, etc. Attributs/propriétés de sécurité Quelques exemples Non signé Jeton Nom d’utilisateur Signé Certificat X.509, ticket Kerberos, assertion SAML, licence XrML, etc. Preuve de possession Clé secrète, mot de passe L’authentification implique la vérification de cette connaissance

Exemple (MS) Addressing Security Reliable Messaging <S:Envelope … > <S:Header> <wsa:ReplyTo> <wsa:Address>http://business456.com/User12</wsa:Address> </wsa:ReplyTo> <wsa:To>http://fabrikam123.com/Traffic</wsa:To> <wsa:Action>http://fabrikam123.com/Traffic/Status</wsa:Action> <wssec:Security> <wssec:BinarySecurityToken ValueType="wssec:X509v3" EncodingType=“wssec:Base64Binary">      dWJzY3JpYmVyLVBlc…..eFw0wMTEwMTAwMD </wssec:BinarySecurityToken> </wssec:Security> <wsrm:Sequence> <wsu:Identifier>http://fabrikam123.com/seq1234</wsu:Identifier> <wsrm:MessageNumber>10</wsrm:MessageNumber> </wsrm:Sequence> </S:Header> <S:Body> <app:TrafficStatus xmlns:app="http://highwaymon.org/payloads"> <road>520W</road><speed>3MPH</speed> </app:TrafficStatus> </S:Body> </S:Envelope> Addressing Security Reliable Messaging

WS-* Web Service Architecture de MS Architecture WS sécurisée de MS (SP3) STAR pour Secure, Transactional, Asynchronous, Reliable Service Composition BPEL4WS, Management Composable Service Assurances Reliable Messaging Transactions Security XSD, WSDL, UDDI, Policy, MetadataExchange Description Messaging XML, SOAP, Addressing Transports HTTP, HTTPS, SMTP, etc.

6. En résumé ... Le front-office vers XML La sécurité renforcée Saisie Interface graphique Portail d’infos Bureautique La sécurité renforcée PKI accessible en XML Signature Chiffrement Intégration au WS WS-Security Questions ? Conclusion