Open JoanZapata opened 12 years ago
On pourrait aussi très simplement avoir une clé de hashage différente pour MUI, pour le Market, et pour le Dev. Le hash servira alors à la fois d'authentification et d'identification.
En plus de ça, une clé de Dev qui renverrait toujours les mêmes résultats pourrait être commitée sur le repo publique, permettant à ceux qui clonent le projet de tester l'interface avec des notes bidon.
Faut qu'on aille regarder du côté de data publica comment ils font.
A priori, afin de garantir l'unicité des requêtes, il faut utiliser un timestamp. Une technique simple serait d'ajouter 3 params : 1) timestamp 2) identifiant de la clé 3) signature timestamp. Côté server, on vérifie que le timestamp est à moins de 1 seconde de "now", et on check la signature.
Ça me paraît pas mal.
Si ça match pas, 403 ?
403 c'est le bon code HTTP :)
Ok, issue à dupliquer côté serveur, celle ci concerne uniquement le client.
Ajouter dans les requêtes du client un paramètre Get qui nous permettra d'identifier l'appelant. Pas nécessairement besoin de l'utiliser côté serveur immédiatement, mais faut au moins que ça soit dans les clients