Comment puis-je savoir à partir d'un HttpModule quel domaine a fait une demande particulière? Dire que je veux seulement permettre à site1.com et site2.com d'utiliser des images de mon serveur, comment puis-je vérifier que c'est eux qui en font la demande?Puis-je savoir quel domaine a fait une requête qui a déclenché un HttpModule?
Répondre
Il n'y a aucun moyen de le faire dans tous les cas. Considérez que UrlReferrer peut ne pas être défini. En outre, considérez que vous pouvez être appelé par un client qui n'a pas une adresse DNS. Au lieu de cela, vous devez envisager de configurer IIS pour l'authentification à l'aide de certificats utilisateur. Si vous n'avez qu'un petit nombre de sites qui vous appellent, générez un certificat, enregistrez-le avec IIS et mappez avec l'utilisateur que vous voulez, puis donnez les certificats à ces deux machines à installer sur eux.
Request.UrlReferrer, mais il peut facilement être usurpé.
Y a-t-il une meilleure façon de le faire? Est-ce qu'un "bon" moyen est même possible alors? – joshcomley
Je suis seulement intéressé par permettre aux serveurs d'accéder aux fichiers, pas d'autres clients. Quels serveurs n'ont pas d'adresse DNS? Si j'intègre une image dans une page sur www.site1.com/mypage.html, n'y a-t-il vraiment aucun moyen de garantir que lorsque quelqu'un charge cette page, je ne peux pas savoir qu'elle vient de là? – joshcomley
Mis à part l'authentification, non. Il n'est pas garanti que le Référent soit défini ou soit ce que vous attendez de lui. –