SPECIFICATION TECHNIQUE DU PROTOCOLE RDEX Ridesharing Data Exchange. Version 1.0

Documents pareils
Le standard d'échange d'annonces de covoiturage. RDEX- Ridesharing Data EXchange

RDEX. Ridesharing Data EXchange Le standard d'échange d'annonces de covoiturage

Présentation Backup.XML DossierBase/Preferences/Backup/Backup.XML DossierBase Preferences/Backup/

API SMS CONSEIL HTTP V2.01. Sommaire. Documentation V1.0 au 21/05/2011

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

SPÉCIFICATION DE L'API VERISIGN OPENHYBRID CLOUD SIGNALING

ANNONCE-LOCALE.COM A VENDRE

SCHMITT Année 2012/2014 Cédric BTS SIO. TP Serveur Backup

Manuel d'utilisation d'apimail V3

PHP CLÉS EN MAIN. 76 scripts efficaces pour enrichir vos sites web. par William Steinmetz et Brian Ward

NOTICE INSTALLATION. ARCHANGE Simplex Office N&B/Couleur KONICA MINOLTA BUSINESS SOLUTIONS FRANCE

4e Dimension Clés XML Backup. Windows /Mac OS 4e Dimension D SA. Tous droits réservés.

1. Installation du Module

BD et XML : Exercices

API HTTP DOCUMENTATION TECHNIQUE PLATEFORME SAAS D'ENVOI DE SMS. Version Mise à jour : 3 juillet 2015

SOLUTIONS DE MESSAGERIE SÉCURISÉE POUR L'ENTREPRISE

Android comme périphérique annexe.

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

Guide de démarrage Tradedoubler. Manuel éditeur / affilié

Assistance à distance sous Windows

Le service FTP. M.BOUABID, Page 1 sur 5

Module BD et sites WEB

Réaliser un accès distant sur un enregistreur DVR

SSL ET IPSEC. Licence Pro ATC Amel Guetat

COMMENT AUTORISER LES PARTAGES RESEAUX ET IMPRIMANTE SOUS L ANTIVIRUS FIREWALL V3

SYSTÈMES D INFORMATIONS

Les réseaux des EPLEFPA. Guide «PfSense»

Département Marketing Mobile. Dernière mise à jour : 14 avril 10

Sécurité des applications web. Daniel Boteanu

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Réponse : Liste des paramètres de retour :... 7 Simuler un envoi (POST /send/simulate)... 8 Publipostage (POST /send/lists)...

BIND : installer un serveur DNS

Vulnérabilités et solutions de sécurisation des applications Web

Monitoring des Ressources Informatiques au LAL. Journées Informatique IN2P3 DAPNIA HOURTIN Jacquelin Charbonnel - printemps 2004

Module SIPS/ATOS pour Prestashop

Tech-Evenings Sécurité des applications Web Sébastien LEBRETON

Fonctionnement et mise en place d un reverse proxy sécurisé avec Apache. Dimitri ségard 8 mai 2011

TP WINDOWS 2008 SERVER - OUTILS DE SAUVEGARDE ET DE RESTAURATION

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

1 La visualisation des logs au CNES

Guide Numériser vers FTP

TeamLab. Premières étapes

Présentation du modèle OSI(Open Systems Interconnection)

Configurer le Serveur avec une adresse IP Statique (INTERFACE :FastEthernet) : et un masque

NOTICE INSTALLATION. ARCHANGE WebDAV Office N&B/Couleur KONICA MINOLTA BUSINESS SOLUTIONS FRANCE

FACULTE DES SCIENCES ET TECHNIQUES FES SAIS MASTER SYSTEMES INTELLIGENTS ET RESEAUX MST SIR 2014 TP WIFI. Encadré par PR.

SQL Server 2012 Administrez une base de données : Exercices et corrigés

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

Alfstore workflow framework Spécification technique

Obtention via HTTP des fichiers PDF générés par le service de SMS/MMS certifiés

Guide d implémentation. Réussir l intégration de Systempay

Un exemple d'authentification sécurisée utilisant les outils du Web : CAS. P-F. Bonnefoi

Modules Prestashop - ExportCatalogue / EXPORT IMPORT POUR MODIFICATIONS EN MASSE DANS PRESTASHOP VERSION Optim'Informatique

Je demande à bénéficier d un Pass Sport Culture 2015 qui me donnera accès aux activités présentées pour le(s) mois de : NOM :... Prénom : Né(e) le :

Réseau : Interconnexion de réseaux, routage et application de règles de filtrage.

Informations sur la sécurité

Mise en service HORUS version HTTP

2 Formation utilisateur

INSTALLATION APACHE POUR WINDOWS (XP OU 2000)

Mysql. Les requêtes préparées Prepared statements

HAUTE DISPONIBILITÉ DE MACHINE VIRTUELLE AVEC HYPER-V 2012 R2 PARTIE CONFIGURATION OPENVPN SUR PFSENSE

La base de données XML exist. A. Belaïd

WINDOWS SERVER 2003-R2

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

Nettoyer l'historique et le cache DNS de votre navigateur

API FTP SMSENVOI V1.1

Jean-Louis Cech descente des Princes des Baux Orange Orange : 20 juin 2014.

Déploiement d'une application Visual Studio Lightswitch dans Windows Azure.

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :

Projet de Veille Technologique

ALOHA Load Balancer 2.5. Guide de démarrage rapide. EXCELIANCE ALOHA 2.5 Guide de démarrage rapide 30/01/2008 1/17

Activité 1 : Création et Clonage d'une première machine virtuelle Linux OpenSuSE.

DirXML License Auditing Tool version Guide de l'utilisateur

Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN

NAS 208 WebDAV Une alternative au protocole FTP pour le partage sécurisé des fichiers

Sur un ordinateur exécutant Windows 2000 Server Ayant une adresse IP statique

TUTORIEL : Formulaire sur Google : Saisie des réponses questionnaires comptoir Mise en place de questionnaires à distance

TEST D INTRUSION : UNE SIMULATION DE HACKING POUR IDENTIFIER LES FAIBLESSES DE VOTRE SYSTÈME

Recherche d information textuelle

SOLUTION D ENVOI DE SMS POUR PROFESSIONNELS

OWASP Open Web Application Security Project. Jean-Marc Robert Génie logiciel et des TI

Documentation d Intégration CB Paysite Cash

USERGATE PROXY & FIREWALL. Protection exhaustive de réseau corporate, optimisation de trafic Internet, administration flexible

Packet Tracer : configuration des listes de contrôle d'accès étendues, scénario 1

Protection exhaustive de réseau corporate, optimisation de trafic Internet, administration flexible

Fonctions pour la Suisse

Installation et utilisation d'un certificat

Dossier d inscription. 9 au 11 juin Paris Porte de Versailles. Bus. d'or

Vulnérabilités et sécurisation des applications Web

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Les ACL Cisco. F. Nolot Master 2 Professionnel STIC-Informatique 1

O.S.S.I.R. rdv du 11 mai 2010

Documentation pour l envoi de SMS

Caruso33 : une association à votre service

Authentification unique Eurécia

Transcription:

SPECIFICATION TECHNIQUE DU PROTOCOLE RDEX Ridesharing Data Exchange Version 1.0

I. Objectif Normer l'échange des annonces covoiturage entre les différents opérateurs. Permettre aux utilisateurs d entrer en contact quelque soit la plateforme de covoiturage. Garantir la sécurité des données Favoriser l open data II. Contraintes Impératif de ne pas transférer les données personnelles Rapidité d exécution des recherches Conditions générales hétérogènes Mettre en place une organisation point à point et non «de groupe» pour favoriser les accords bilatéraux de manière indépendante et alléger la structure : bâtir un protocole d échange et non une alliance d opérateur III. Fonctionnement Chaque soir les plateformes «A» et «B» échangent mutuellement leurs annonces de covoiturage en excluant les données personnelles. Lors d une recherche sur le site «A» ou par l intermédiaire d une alerte, l utilisateur «a» reçoit une liste d annonce correspondant à sa demande. L utilisateur «b», enregistré sur une plateforme partenaire «B» apparaît de manière différenciée (logo type ou inscription texte). Pour contacter «b», «a» doit saisir un message, incluant ses propres coordonnées, dans un formulaire. La plateforme «A» transfert alors le message à la plateforme «B» qui contacte l utilisateur «b». «b» reçoit les coordonnées de «a», il est libre de donner suite ou non. IV. Spécifications Échanger des fichiers d'annonces compressés. A partir d'une clef et d'une url d'api, on permet à l'utilisateur de contacter l'annonceur.

Fichiers xml Le xml permet à chacun des acteurs d'ajouter des particularités sur ses annonces, sans que pour autant les autres en tiennent compte. Plusieurs xml du même format peuvent être facilement compilés. Les champs sont décris ci-dessous : Les champs seront nommés en anglais pour permettre l'intégration d'acteurs internationaux.

Validation des fichiers et recommandations sur leurs tailles La DTD ensemble (annexe 2) permet de décrire les données du fichier XML afin de s'affranchir au maximum des erreurs d'export. Elle est accessible via une url publique. Pour minimiser le volume de données échangées, on recommande : 1. Ne pas renseigner les balises vides (du type <balise></balise>) 2. Minifier les données (tout sur une ligne) 3. Les compresser Échange des fichiers Chaque opérateur met à disposition des fichiers xml à des adresses définies. Il choisit de restreindre cet accès ou non en fonction de son souhaite de participer à la démarche d ouverture des données API de contact L'étape suivante consiste à permettre à un annonceur d'être contacté par un usager d'un site partenaire. Pour cela chaque opérateur va mettre en place une API. Pour restreindre et ouvrir l'accès aux partenaires, l'accès sera basé sur des clefs attribuées par chaque opérateur à ses partenaires. Clef de contact Calculé sur l'ip interrogeant l'api. Cela permet de garantir que la clef ne peut être interceptée et utilisée depuis une autre ip. Identifie quel opérateur met en relation Stockée en base et rapide à mettre à jour. Requête Une url d'api est accessible chez chaque opérateur permettant de contacter l'annonceur. Cette url ne doit pas être appelée directement par un formulaire. Pour éviter une attaque par XSS (méthode injection de code) sur un formulaire non sécurisé qui poste vers un https. Le formulaire doit être rempli, validé en interne par le serveur, qui, lui, appelle l'api. Elle doit être appelée en POST, En SSL,pas forcément certifié par une autorité, mais conseillé pour garantir la confidentialité de la clef d'accès et de l'émetteur du message. Avec les paramètres suivants : Key : fournie par l'opérateur, cf plus haut Id :l'identifiant de l'annonce (uuid, sha1) From : email+pseudo permettant de tracer (éventuellement par la suite répondre) l'utilisateur envoyant le message. Site : d'origine du message. On s'oriente vers un paradigme REST dans un souci de simplicité de mise en œuvre. On interrogera

ainsi les codes de retour HTTP pour connaître le succès d'un envoi de message. Diagramme de séquence L'utilisateur demande le détail d'une annonce d'un site partenaire. Un formulaire de contact est affiché à l'utilisateur lui permettant d'envoyer un message à l'annonceur sur l'autre site.

Annexes Exemple de xml <?xml version="1.0" encoding="utf-8"?> <document> <title>ecolutis - Carpooling journeys</title> <journey> <operator>ecolutis</operator> <site>easycovoiturage.com</site> <uuid>6c0868c0cb8a7682768c7b9912b89b105df1c389</uuid> <from> <location>marseille</location> <inseecode>13216</inseecode> <postalcode>13007</postalcode> <address>6 impasse de la girelle</address> <coords>43.2850,5.3507</coords> <country>france</country> </from> <to> <location>paris</location> <inseecode>75101</inseecode> <postalcode>75001</postalcode> <address>10 rue decamps</address> <coords>48.8632,2.2775</coords> <country>france</country> </to> <kilometers>776</kilometers> <minutes>418</minutes> <route>43.2966667,5.3763889;43.2971600,5.3774200;43.2991300,5.3761800;43.2991700,5.3762600;43.301270 0,5.3750600;43.3016200,5.3749200;43.3020500,5.3760100;43.3023500,5.3760300;43.3026500,5.3753400;43.5 533300,5.2316500;45.7475600,4.8299000;47.0178200,4.8691500;48.7327500,2.3157800;48.8149600,2.3367000 ;48.8195200,2.3288200;48.8202300,2.3256700;48.8232300,2.3256400;48.8277900,2.3269800;48.8336800,2.33 19400;48.8344200,2.3326800;48.8392900,2.3367000;48.8412300,2.3374600;48.8537400,2.3443100;48.8543400,2.3449300;48.8571500,2.3474300;48.8577200,2.3477900;48.8585000,2.3482300;48.8640800,2.3310800</rout e> <url>http://easycovoiturage.com/trajets-de-covoiturage.php?id=256900</url> <name>baptiste</name> <image>http://www.gravatar.com/avatar/ae5022a2a95c707f2308c7d2a2aa5d72.jpg?s=60</image> <cost>123</cost> <driver>1</driver> <passenger>1</passenger> <seats>3</seats> <activefrom>2011-02-01</activefrom> <activeto>2011-02-28</activeto> <punctual> <date>2011-02-28</date> <mintime>08:00</mintime> <maxtime>08:00</maxtime> </punctual> <details>je fume</details> </journey> <journey> <operator>ecolutis</operator> <site>covoiturage17.com</site> <uuid>7d8c3989a660a730408826fb8a800ff19caa79be</uuid> <from> <location>la Rochelle</location> <inseecode>17300</inseecode> <postalcode>17000</postalcode> <address>25 rue de Jéricho</address> <coords>46.1661,-1.1605</coords> <country>france</country> </from> <to> <location>rochefort</location> <inseecode>17299</inseecode> <postalcode>17300</postalcode> <address>rue Gustave Charpentier</address> <coords>45.9486,-0.9654</coords> <country>france</country> </to> <kilometers>35,5</kilometers> <minutes>33</minutes> <route>45.9450300,-0.975620;45.9451400,-0.9755200;45.9478900,-0.9764000;45.9585100,-

0.9789100;45.9672800,-0.9808300;45.9698800,-0.9842900;46.1688500,-1.1208100;46.1682900,- 1.1912800;46.1666700,-1.1923300;46.1631300,-1.1940600;46.1599600,-1.1974500;46.1613800,- 1.1828600;46.1600767,-1.1774721;</route> <url>http://easycovoiturage.com/trajets-de-covoiturage.php?id=256900</url> <name>olivier</name> <image>http://www.gravatar.com/avatar/5388cc1bc872e6f4f8f150160a4f1ebb.jpg?s=60</image> <cost>5</cost> <driver>0</driver> <passenger>1</passenger> <activefrom>2010-09-01</activefrom> <activeto>2011-07-05</activeto> <regular> <monday> <retmintime>17:30</retmintime> </monday> <tuesday> <retmintime>17:30</retmintime> </tuesday> <wednesday> <retmintime>17:30</retmintime> </wednesday> <thursday> <retmintime>17:30</retmintime> </thursday> <friday> <retmintime>16:00</retmintime> </friday> </regular> <details></details> </journey> </document>

DTD (version minimaliste) <!ELEMENT document (title, journey*)> <!ELEMENT title (#PCDATA)> <!-- TODO : meilleure validation ordre des éléments? --> <!-- TODO : Faire en sorte : soit passager soit cond soit les 2 --> <!ELEMENT journey (operator, site, uuid, from, to, route?, url, name, driver?, passenger?, seats?, activefrom, activeto, details?, (regular punctual))> <!ELEMENT operator (#PCDATA)> <!ELEMENT site (#PCDATA)> <!ELEMENT uuid (#PCDATA)> <!-- TODO : faire en sorte que au moins l'un ou lautre de insee ou postal --> <!ELEMENT from (location, inseecode?, postalcode?, address?, coords, country?)> <!ELEMENT to (location, inseecode?, postalcode?, address?, coords, country?)> <!-- From/To --> <!ELEMENT location (#PCDATA)> <!ELEMENT inseecode (#PCDATA)> <!ELEMENT postalcode (#PCDATA)> <!ELEMENT coords (#PCDATA)> <!ELEMENT address (#PCDATA)> <!ELEMENT country (#PCDATA)> <!ELEMENT route (#PCDATA)> <!ELEMENT url (#PCDATA)> <!ELEMENT name (#PCDATA)> <!ELEMENT driver (#PCDATA)> <!ELEMENT passenger (#PCDATA)> <!ELEMENT seats (#PCDATA)> <!ELEMENT activefrom (#PCDATA)> <!ELEMENT activeto (#PCDATA)> <!ELEMENT details (#PCDATA)> <!-- Regular --> <!ELEMENT regular (monday?, tuesday?, wednesday?, thursday?, friday?, saturday?, sunday?)> <!ELEMENT monday ((depmintime, depmaxtime)?, (retmintime, retmaxtime)?)> <!ELEMENT tuesday ((depmintime, depmaxtime)?, (retmintime, retmaxtime)?)> <!ELEMENT wednesday ((depmintime, depmaxtime)?, (retmintime, retmaxtime)?)> <!ELEMENT thursday ((depmintime, depmaxtime)?, (retmintime, retmaxtime)?)> <!ELEMENT friday ((depmintime, depmaxtime)?, (retmintime, retmaxtime)?)> <!ELEMENT saturday ((depmintime, depmaxtime)?, (retmintime, retmaxtime)?)> <!ELEMENT sunday ((depmintime, depmaxtime)?, (retmintime, retmaxtime)?)> <!ELEMENT depmintime (#PCDATA)> <!ELEMENT depmaxtime (#PCDATA)> <!ELEMENT retmintime (#PCDATA)> <!ELEMENT retmaxtime (#PCDATA)> <!-- Punctual --> <!ELEMENT punctual (date, mintime, maxtime)> <!ELEMENT date (#PCDATA)> <!ELEMENT mintime (#PCDATA)> <!ELEMENT maxtime (#PCDATA)> Formulaire-type de contact