Support » Plugin: Colissimo Delivery Integration » Google Maps : précisions et amélioration

  • Bonjour,

    Tout d’abord : merci Harasse pour le boulot sur ce plugin !
    Je viens d’ouvrir une boutique en ligne, le plugin me rend bien service.

    Malheureusement, le point sur lequel j’ai le plus eu de difficulté concerné la carte des points relais.
    1er point : les API Google à utiliser lorsque l’on utilise une clé sont “Geocoding API” et “Maps Javascript API”. Je le précise car beaucoup de personnes se sont posées la question sur le support mais je n’ai vu aucune réponse sur le sujet.

    2ème point : ayant créé une clé pour la carte Google Maps, j’ai voulu la sécuriser pour empêcher que quelqu’un d’autre s’en serve sur son site. J’ai donc restreint sur le paramètre “Référents http” en mettant l’url de mon site. En faisant cela, la carte ne s’affiche jamais et j’ai le message d’erreur “REQUEST_DENIED”.

    J’ai analysé ton code Harasse et j’ai trouvé l’origine du problème.
    Mettre une restriction “Référents http” est fonctionnelle lorsque l’appel à l’API “Geocoding API” se fait en javascript (côté client) depuis la page html de la boutique. Cependant, dans ton plugin, l’appel est effectué depuis une méthode curl en php (côté serveur) qui ne transmet pas d’information sur le referrer. Du coup Google interdit l’utilisation de l’API.
    J’ai tenté d’ajouter l’option referrer sur l’appel curl mais cela ne semble pas pris en compte.
    Il y a une autre restriction possible côté Google en se basant sur l’ip du serveur mais la doc de Google ne semble pas prendre en compte cette restriction pour la l’API “Maps Javascript API” car Google s’attend justement que l’appel soit initié depuis un appel javascript.

    Du coup, penses tu que ce soit possible de prévoir une mise à jour pour déporter les appels aux API Google dans du code Javascript pour permettre la restriction des API sur l’URL de notre site ?

Viewing 1 replies (of 1 total)
  • J’ai noté le même problème.

    Une alternative peut être plus facile à mettre en oeuvre serait de permettre d’entrer deux clef API.

    L’une utilisée cotée client, pour afficher la map, et qui pourra être sécurisée.
    Une cotée serveur pour récupérer les point Geocoding. Pour laquelle la sécurité pourra être mise soit via l’ip, soit pas mise du tout (j’ai essayé sans succès aujourd’hui), ce qui est moins grave tant que la clef n’est pas lisible cotée client (contrairement a ce qu’on a aujourd’hui).

    La situation actuelle est assez critique puisque vous empechez l’utilisation d’une clef sécurisée avec votre plugin et vous l’affichez coté client dans le javascript. Notez en plus que Google impose désormais de souscrire a un abonnement payant à l’utilisation pour l’utilisation des api Maps, avoir une API sécurisée est donc indispensable.

Viewing 1 replies (of 1 total)
  • The topic ‘Google Maps : précisions et amélioration’ is closed to new replies.