IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IGN API Géoportail Discussion :

Clé SIG pour une utilisation web


Sujet :

IGN API Géoportail

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2012
    Messages : 52
    Points : 42
    Points
    42
    Par défaut Clé SIG pour une utilisation web
    Bonjour,

    Pour ceux qui n'ont pas eu le malheur de me croiser ces derniers jours , je suis un petit stagiaire qui étudie l'API géoportail pour l'utiliser dans un projet Java EE. J'ai déjà pas mal avancer sur le service de géocodage (et je n'étais pas seul ). Pour ce faire, j'ai créé un contrat SIG de développeur.

    Mais voilà, comme j'ai réussi à gérer le géocodage, mon chef voudrait pouvoir afficher une carte. Et du coup je me suis lancé dans cette folle l'aventure , et jusque là ça va pas trop mal .

    Un jour, mon chef a vu mon test et il a vu que lorsque j'ouvre une carte, on me demande mon identifiant et mot de passe. Il en a profité pour me dire que ça devait disparaître . Les futures utilisateurs n'ont pas à saisir un identifiant mot de passe (qu'il n'ont pas à connaître de toute manière). En fouillant un peu, je suis tomber sur :
    Citation Envoyé par dgrichard Voir le message
    dans le cadre de la directive INSPIRE, le login / password est mal à propos ...

    https + login / password, c'est pour le SIG ou l'application lourde, pas pour le web.
    Bon ce qui est pas mal, c'est que pour le service de géocodage, j'ai pris le bon contrat . Mais j'aimerai savoir si pour créer des cartes et les afficher, je suis obligé de créer un nouveau contrat ? (j'ai vu qu'il était possible de passer le login/pwd dans l'url mais ça ne plait pas du tout à mon chef ... pas assez sécuritaire). N'y a-t-il pas moyen de ne créer qu'un seul contrat ?

    En passant, nous souhaiterions utiliser tous nos services en https ...

    Merci d'avance.

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    (futur) ingénieur cartographe
    Inscrit en
    Juillet 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : (futur) ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 28
    Points : 30
    Points
    30
    Par défaut
    La clé SIG est normalement adaptée à ce que tu fais: appel des webservices via une application tierce.
    Pour ce qui est de l'authentification, il suffit (sauf erreur) de passer le user/password dans le header de la requête http(s):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var xmlHttpRequest= OpenLayers.Request.POST({
    'headers':{'Authorization': 'val'}
    })
    avec val contenant ton user/password encrypté en base64 (http://www.webtoolkit.info/javascript-base64.html)

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 442
    Points : 502
    Points
    502
    Par défaut
    Si tu as le géocodage, je suppose que tu n'as pas une clé INSPIRE (qui ne concerne que du WMS); tu as donc une clé Géoportail WMTS pour SIG (avec login/psw).
    Si tu veux faire une page web, pourquoi pas prendre une clé Géoportail pour le web (avec referer mais sans login/psw)?
    Le géocodage est inclus dedans.

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2012
    Messages : 52
    Points : 42
    Points
    42
    Par défaut reformulation
    Je me rend compte que je me suis mal exprimé.

    Effectivement la clé SIG, pour interroger le webservice, est parfaite. Mais cette étape est finie ... Avec le MÊME contrat, on souhaite gérer un affichage de carte via une application web. Je rappelle que l'application qui appelle le webservice est la même que celle qui affichera les cartes ... (l'utilisation en webservice est géré par Java et les carte par JavaScript)

    Pourquoi utiliser le même contrat :
    - 1 application => 1 contrat
    - 1 contrat => une seule clé et une seule méthode de connexion ...

    Côté JS, on charge pour l'instant la carte avec la classique fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    loadAPI() {
        // on attend que les classes soient chargées
        if (checkApiLoading(loadAPI,['OpenLayers','Geoportal','Geoportal.Viewer','Geoportal.Viewer.Default'])===false) {
            return;
        }
        // on charge la configuration de la clef API, puis on charge l'application si la configuration est correcte
        //La méthode appelée est celle de la classe surchargée "Geoportal.GeoRMHandler.OverloadedUpdater"
        Geoportal.GeoRMHandler.getConfig(['xxxxxxxxx'], null, null, {
            onContractsComplete: initGeoportalMap
        });
    }
    Comment rajouter le :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var xmlHttpRequest= OpenLayers.Request.POST({
    'headers':{'Authorization': 'val'}
    })
    J'ai testé en l'insérant juste après le block GeoRMHandler mais j'ai toujours la petite fenêtre qui vient me demander mon identifiant e mot de passe ...

  5. #5
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    On a sincèrement pas prévu que les clefs SIG soient utilisées en mode web. D'abord parce que pour nous, login/password est forcément dans le code JavaScript (moins sensible en flash) d'où une totale perte de ces derniers.

    Et puis, login/password est en HTTPS ce qui implique que l'application Web le soit aussi ...

    La seule porte de sortie est une application mobile native où on peut retrouver la sécurité via le langage utilisé d'un login/password ...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 442
    Points : 502
    Points
    502
    Par défaut
    est-ce qu'une clé sécurisée par user-agent ou par IP serait plus pratique ?

  7. #7
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2012
    Messages : 52
    Points : 42
    Points
    42
    Par défaut
    Je vais donc essayer de voir s'il est possible pour le client d'avoir deux clés :
    1- Sig pour la géolocalisation
    2- Web pour la gestion des cartes

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/12/2012, 19h33
  2. java.nio pour une utilisation web ?
    Par Dominique49 dans le forum Général Java
    Réponses: 5
    Dernier message: 15/12/2011, 12h36
  3. Architecture : Utilisation de Jersey pour une appli. Web standard
    Par Emmanuel_L dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 19/05/2009, 12h11
  4. Réponses: 1
    Dernier message: 01/12/2008, 14h39
  5. [Méthodes]Utiliser UML ou MERISE pour une application Web ?
    Par naimoooovich dans le forum Méthodes
    Réponses: 5
    Dernier message: 28/05/2007, 12h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo