Dot.Blog

C#, XAML, Xamarin, UWP/Android/iOS

OpenWebConfiguration lance une exception sur le mappage de “/” (Asp.net)

[new:11/10/2010]Pour les besoins d’un site devant tourner en mode mutualisé sans option Sql Server et dont le recyclage trop fréquent faisait perdre les authentifications j’ai du développer un provider de session fonctionnant sur une base Access. Tout allait bien jusqu’à ce que je tombe sur l’incompréhensible exception de WebConfigurationManager.OpenWebConfiguration n’arrivant pas à mapper le chemin “/monsite” pour lire le fichier Web.Config.

Prise de tête garantie avec ce genre de bug. Surtout lorsqu’on fait joujou avec des providers customisés dont on n’est pas peine sûr du bon fonctionnement, et pour cause, puisqu’on est en train de les écrire et tester…

Je passe sur les détails du provider lui-même, c’est un autre sujet, car le “bug” apparaît dans de nombreuses circonstances très différentes et vous pouvez très bien le rencontrer sans être dans cette situation particulière.

Un simple accès à la configuration du site (le fichier Web.config) par un code du type qui suit provoquera l’exception si vous travaillez sous Visual Studio pour déboguer le site :

   1: Configuration cfg =
   2:     WebConfigurationManager.OpenWebConfiguration(
   3:         System.Web.Hosting.HostingEnvironment.ApplicationVirtualPath);

Dans un tel cas il y a de grandes chances que vous tombiez sur le message “Failed to map the path ‘/’” ou quelque chose de proche.

Beaucoup de gens semblent avoir eu le problème en passant de VS 2005 à VS2008 ou 2010 en raison de “petits” changements dans la gestion de la sécurité, et peut-être même dans celle des OS qui ont connu de grands changements sur ce point (Vista ou Seven par rapport à XP par exemple).

La seule solution que j’ai trouvée et qui règle le problème : lancer Visual Studio en privilège Administrateur…

C’est un peu “cra-cra” car une fois dans ce mode il y a certaines erreurs de conception qui ne se verront plus (comme écrire dans des répertoires interdits ou autres). Je ne conseille donc vraiment pas d’aller modifier les caractéristiques du raccourci de VS pour le mettre systématiquement en mode Administrateur. Faites le uniquement de façon ponctuelle pour déboguer des sites ASP.NET qui présentent ce problème et en gardant à l’esprit que vous ne travaillez pas dans un mode “normal”.

Conclusion

La sécurité en informatique est un truc qui me donne des boutons. C’est compliqué, complexe, abscons, et ça change d’un soft à l’autre, d’un OS à l’autre, d’une version à l’autre, d’un framework à l’autre. C’est toujours mal fichu, incompréhensible, contradictoire, personne n’y connaît rien donc chacun fait sa sauce dans son coin, et c’est comme ça qu’en réalité il n’y a aucune sécurité nulle part…

Les types qui s’occupent de sécurité informatique, et pire de la coder dans les OS ou les frameworks, sont des vicieux, des pervers autistes totalement découplés de la réalité du monde. Du genre à dire “yaka, fokon…”. Si votre machine est mal protégée “yaka configurer ceci ou cela”. Le “ceci” et le “cela” ne sont jamais les mêmes, même pour un problème identique, c’est selon le “spécialiste” que vous “consultez”.

Ici encore la “sécurité” fait perdre du temps, est inefficace puisque contournable par une astuce, reste incompréhensible et m’énerve (ça doit se voir :-) ).

En ce moment les trucs “sécuritaires” (comme les limitations de Silverlight ou le problème de Caspol dont j’ai parlés dernièrement) chatouillent vraiment trop ma sensibilité anar. Le “tout interdit, mais c’est pour votre bien” m’est insupportable. Ca doit être l’âge (quoi que j’étais comme ça aussi à 15 ans), ou à cause de notre gouvernement qui nous abreuve de sécurité pour mieux nous faire oublier ses incuries et ses échecs sur toute la ligne de ses promesses… Mais bon, je rappelle que le Schmilblick est œuf et q’un œuf ne fait pas de politique, Simone, candidat suivant… (Coluche, le Schilblick).

Stay Tuned !

blog comments powered by Disqus