Question

Je suis en train de vous assurer que ma bibliothèque ASP.Net travaillera sous Medium Trust. Je vais avoir des problèmes mais dans ce que je dois désactiver un peu de code si elle est en cours d'exécution en confiance moyenne.

Comment puis-je déterminer à partir de C # si l'application actuelle est la confiance moyen?

Plus précisément, je suis en train de lire la section customErrors de web.config et je reçois des erreurs de sécurité

Était-ce utile?

La solution

Cet article décrit ici un mécanisme pour déterminer le niveau de confiance:

Trouver le niveau de confiance actuel dans ASP.NET

Voici le code juste au cas où les matrices de lien:

AspNetHostingPermissionLevel GetCurrentTrustLevel() {
  foreach (AspNetHostingPermissionLevel trustLevel in
      new AspNetHostingPermissionLevel [] {
        AspNetHostingPermissionLevel.Unrestricted,
        AspNetHostingPermissionLevel.High,
        AspNetHostingPermissionLevel.Medium,
        AspNetHostingPermissionLevel.Low,
        AspNetHostingPermissionLevel.Minimal 
      } ) {
    try {
      new AspNetHostingPermission(trustLevel).Demand();
    }
    catch (System.Security.SecurityException ) {
      continue;
    }

    return trustLevel;
   }

   return AspNetHostingPermissionLevel.None;
}

Je l'ai juste testé dans une application ASP.NET MVC3 en cours d'exécution à moyen et pleine confiance et il fait ce qu'il dit sur l'étain.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top