web-dev-qa-db-fra.com

Comment ajouter un en-tête Access-Control-Allow-Origin dans IIS7 avec des restrictions

J'ai besoin d'accéder à un fichier de polices dans mon application à partir du serveur que je possède également. Cela fonctionne pour tous les navigateurs sauf Firefox, et je sais que je dois ajouter un en-tête "Access-Control-Allow-Origin".

Donc, à la racine de mon serveur, il y a une autre application avec web.config à laquelle j'ai ajouté:

<httpProtocol>
  <customHeaders>
    <add name="Access-Control-Allow-Origin" value="*" />
  </customHeaders>
</httpProtocol>

Cela fonctionne bien cependant, je ne sais pas quels sont les problèmes de sécurité ici. Spécifier le domaine qui peut y accéder est-il une bonne résolution de sécurité ici? Je pense que je préfère avoir ce paramètre uniquement pour les fichiers dans le dossier de polices et non pour toute l'application. J'ai vu une solution .htaccess pour cela qui nécessite de placer le fichier dans le dossier souhaité, mais comment puis-je le faire avec web.config ou IIS?

Apache:

<FilesMatch "\.(ttf|otf|eot|woff)$">
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "http://yourdomain.com"
</IfModule>
</FilesMatch>

Merci beaucoup,

25
bobek

Avez-vous essayé de placer un web.config uniquement dans le sous-dossier souhaité? Jetez un œil à " Hiérarchie et héritage des fichiers de configuration ASP.NET ".

24
twomm