0 votes

SecurityException dans une application ASP.net

J'ai une application web qui interroge un index Lucene et cela fonctionne très bien sur un serveur W2K3 dans mon réseau. Maintenant que j'ai mon code Azure, je voulais tester le service qui télécharge l'application. Pour ce faire, j'ai dû installer Vista (je l'ai fait dans une machine virtuelle) car le SDK Azure ne s'installe pas sur une machine XP.

J'ai créé mon service Cloud, ajouté les fichiers de mon application mais lorsque je l'exécute (juste F5), j'obtiens une SecurityException, lorsque j'appelle Lucene pour interroger l'index, disant :

T une opération non autorisée par la politique de sécurité. Pour accorder cette application l'autorisation requise veuillez contacter votre administrateur système ou modifiez le fichier le niveau de confiance de l'application dans le fichier de configuration.

J'ai cherché sur Internet et les solutions que j'ai trouvées concernent la modification du fichier machine.config, ce que je ne pourrai pas faire "dans le nuage".

Quelqu'un peut-il m'aider ?

1voto

sebagomez Points 3305

Ok, au cas où quelqu'un serait confronté aux mêmes problèmes, voici la réponse correcte que j'ai obtenue sur le forum Azure :

Ceci est dû à la politique de confiance pour le CTP de Windows Azure. Le site variables d'environnement TEMP et TMP sont disponibles et configurées de manière appropriée. Cependant, System.IO.Path.GetTempPath et System.IO.GetTempFile ne fonctionnent pas car elles nécessitent des autorisations de l'environnement. Je vous suggérer de contacter les développeurs de Lucene pour voir s'ils peuvent modifier le code pour qu'il fonctionne correctement en confiance moyenne.

Merci à Daniel C. Wang pour la réponse.

1voto

sebagomez Points 3305

J'ai également trouvé une question concernant le même problème que moi et comment il a été résolu.
Voici le lien : Lucene.Net échoue sur mon hôte car il appelle GetTempPath(). Quelle est la solution ?

0voto

Matt Briggs Points 20291

Vous pouvez modifier la confiance dans le web.config, à moins que cela n'ait été interdit dans le machine.config (ce qui est souvent le cas dans l'hébergement partagé). dans votre mise et voyez ce qui se passe.

Si vous n'êtes pas autorisé à le faire, voyez si vous pouvez obtenir votre contrôle GACd en parlant à votre fournisseur. Si cela ne fonctionne pas, désolé de vous dire que vous n'avez pas de chance. Parfois, vous pouvez trouver des solutions de contournement qui ne nécessitent pas une confiance totale dans une méthode spécifique, mais si une dll tierce l'exige, vous ne pouvez pas faire grand-chose.

-1voto

dove Points 12456

Je ne l'ai pas encore fait, mais n'est-il pas possible d'avoir une version de bureau de l'environnement d'exploitation en direct ? Cela semblerait un bon début pour le dépannage.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X