|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
Salut
J'ai développé un module en ASP permettant l'interrogation en ligne des fichiers adresses de la poste. J'aimerai donner accès à ce module, moyennant un abonnement, à des clients qui inclurait l'url du module dans leur page. Le soucis c'est qu'il faudrait que seul le client soit autoriser à inclure le module. Il ne faut pas qu'il puisse donner l'acces à quelqu'un d'autre en donnant l'url. Comment feriez vous pour restreindre l'accès au module aux seuls clients autorisé ? (sachant que monsieur tout le monde l'utilisera quand il ira sur le site du client) Merci |
|
|
00
|
|
|
#2 |
|
Membre expérimenté
![]() Inscription : septembre 2005 Messages : 925 ![]() |
si c'est du Iframe, c'est perdu... plus ou moins... tu auras beau mettre du javascript qui t'envoie sur qeul serveur s'est connecté le client, ca marchera pas...
je voit deux solutions : faire payer un forfait de X connections (là, ca fait passer l'envie de filer l'adresse, mais on peut toujours la voler) faire inculure un script coté serveur qui va lui meme recupérer les info genre avec fsockopen en plus, si tu travail coté serveur, tu peut faire inculre des parametres tels que mot de passe, afin de controler plus finement l'acces. ps : je suis pas bon en info, me rpend pas au pied de la lettre :p ou tu peut combiner les deux : coté serveur, il fait un fsockopen qui lui retourne un password valide 10 minutes, et coté client, tu fait mettre ce password dans le formulaire de recherche en champ hidden. |
|
|
00
|
|
|
#3 |
![]() ![]() |
Et si c'est la conjonction d'un code passé en argument de l'url demandée chez toi et du domaine du referer (on peut récupérer ça en PHP, on devrait aussi pouvoir en ASP) qui donnait accès à ton service... ça me semble imparable, non? Remarque, le domaine du referer à lui seul devrait même suffire....
|
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
oui j'avais pensé au referer, le soucis c'est que j'ai déjà essayé d'utiliser cette fonction et bizarrement elle ne renvoit pas toujours de valeur
Sinon y'aurai pas moyen de récupérer l'IP du serveur qui ferait l'include de la page ? |
|
|
00
|
|
|
#5 |
![]() ![]() |
Si c'est uniquementun lien vers ton service, on ne peut pas y glisser une information qui soit solidaire de l'endroit depuis lequel le lien est cliqué, étant donné qu'on est côté client (si par exemple tu récupère l'url en javascript pour la passer par le lien, rien n'empèche de le faire manuellement).
Dans quel cas le referer ne fonctionne pas? C'est normal qu'il n'y en aie pas en utilisant les signets par exemple, mais ça tu dois t'en douter. Et je ne sais pas si c'est une information falsifiable. J'aurais tendance à dire que ça doit être possible, mais pas simple. L'information doit être dans l'en-tête http. |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
Je viens de penser à un truc.
Voilà comment se compose mon module : une page HTML qui contient un morceau de formulaire et que devra inclure le client dans ses pages avec la fonction include coté server, une page .js qui utilise de l'AJAX et 3 pages ASP. Le soucis c'est que le client lui est en PHP. Donc il doit faire un include d'une page HTML chez moi qui par le biais d'AJAX appelera mon ASP. Donc si j'essaye de récupérer le referer dans mes pages ASP, je risque d'avoir l'url de ma page HTML ou .js, non ? |
|
|
00
|
|
|
#7 |
![]() ![]() |
Je ne pense pas, non.. l'include se fait côté serveur et une page php incluant ton code html sera renvoyée. l'url de cette page est une url du site de ton client.
Et quand tu parles d'incule une page html, je dirais plutôt une portion de code html, non? ou peut-être qu'il s'agit d'une iframe, et dans ce cas d'une page complète... je ne sais pas. le mieux c'est de faire un test... si tu en as besoin, j'ai un serveur avec php où je peux te créer un accès... |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
oui quand je parle de page HTML, il n'y aura que des morceaux de code dedans.
Je vais déjà faire des tests avec le 2eme serveur web qu'on a au boulot pour voir si déjà avec de l'ASP ca fonctionne mais je prend note si je peux tester sur ton serveur PHP Je testerai ca demain.
|
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
bon j'ai fais des tests, on a même ajouter PHP sur IIS.
Par contre, si on considère que les pages HTML et .js sont en local (donc chez le client) et que les pages ASP restent hébergées chez nous (on ne veut pas qu'ils voient où se trouve la base), j'ai une alerte de sécurité sous internet explorer (éléments qui ne sont pas sous son controle ou un truc du genre) quand à firefox, il bloque carrement le xmlhttprequest avec comme message "permission denied". Ca s'annonce très mal Une idée ? (peut être qu'il faudrait que je déplace dans le forum javascript EDIT : je poste ma question dans le forum javascript, je laisse ce topic ouvert comme je n'ai pas encore pu tester la restriction d'accès |
|
|
00
|
|
|
#10 |
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
Perso je suis septique vis à vis du fait de confier la sécurité du script à du javascript... ce qu'ajax peut faire tu peux le reproduire manuellement sur une autre page que celle autorisée... mieux vaut essayer via les sockets en passant un n° de compte et un mot de pass et get ou en post... un peu comme le font les services type paypal, envoi de sms, etc... .. .
tchaOo° |
|
|
00
|
|
|
#11 | |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
Citation:
|
|
|
|
00
|
|
|
#12 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
Bon je viens de tester le referer dans mes pages ASP (qui sont appelée avec un include par une page PHP elle même sur un autre serveur), mais celui ci ne me renvoit rien du tout
Quelqu'un aurait une autre idée ? |
|
|
00
|
|
|
#13 |
![]() ![]() |
Si ton client dispose d'un langage script serveur (je crois qu'en l'occurence, il a accès à php, c'est juste?), tu peux t'en servir pour lui faire encoder un identifiant qui inclut le nom du client et la date du jour... identifiant que tu décodes de ton côté pour vérifier que le client a droit au service et que la date est bien celle du jour.
Si quelqu'un copie l'identifiant en question, il ne pourra s'en servir que le jour même. La seule faille, c'est qu'on peut automatiser ce "pompage" quotidiennement, en parsant la page de ton client, mais là ça devient tordu... |
|
|
00
|
|
|
#14 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
apparemment quand je récupère l'adresse IP dans mon ASP il me renvoit bien l'adresse IP du serveur distant (donc du client), puisque c'est la page PHP du client qui fait l'include. Je vais fonc me faire une liste d'adresse IP autorisée et en fonction de ca, afficher ou non les données.
Merci pour votre aide en tous cas |
|
|
00
|
|
|
#15 |
![]() ![]() |
arf, la solution était trop simple... on va toujours chercher midi à 14h...
|
|
|
00
|
|
|
#16 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
en fait j'y avais pensé mais j'avais peur de recevoir l'adresse IP du visiteur et non pas celle du serveur de mon client
|
|
|
00
|
|
|
#17 |
![]() ![]() |
Tu nous montrera quand ça tournera? j'ai un petit doute à ce sujet...
A quel moment tu reçois l'ip de ton client? |
|
|
00
|
|
|
#18 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
je récupère l'IP dans mes pages ASP qui interrogent ma bdd. Ces pages sont inclues dans des pages PHP située sur le serveur de mon client, elles mêmes appelées par mon AJAX lui aussi sur le serveur du client.
Si tu veux tester, demande moi l'url temporaire par MP |
|
|
00
|
|
|
#19 | ||
![]() ![]() |
Citation:
Citation:
|
||
|
|
00
|
|
|
#20 | |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 2 161 ![]() |
Citation:
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com