Comment pouvez-vous vérifier si vous exécutez dans un environnement moyen confiance dans .NET?
-
21-09-2019 - |
Question
Je gère un site web sur l'hébergement partagé à GoDaddy (pas mon choix, car il est toujours moyen Trust), et j'ai quelques fonctionnalités avancées que je voudrais allumer si l'application est exécutée dans High Trust.
Alors, je voudrais savoir, s'il y a un moyen de vérifier si lors de l'exécution si l'application est en cours d'exécution dans un environnement moyen confiance dans .NET?
La solution
Vous pouvez essayer le code suivant:
if (!SecurityManager.IsGranted(new RegistryPermission(PermissionState.Unrestricted)))
{
//do something.... not at full trust
}
if (!SecurityManager.IsGranted(new DnsPermission(PermissionState.Unrestricted)))
{
//do something.... not at full trust
}
Je suis arrivé ce à partir du lien suivant: http://www.netomatix.com/development/webcaspermissions.aspx
est ici des liens pour les classes d'autorisation Security Manager et Registre dans MSDN:
http://msdn.microsoft.com /en-us/library/system.security.securitymanager.isgranted.aspx http://msdn.microsoft.com/en- nous / bibliothèque / system.security.permissions.registrypermission.aspx
Vous devrez ajouter une référence à System.Security et ajouter quelques déclarations à l'aide pour System.Security et System.Security.Permissions.
EDIT:
Ajouté après Commentaire de Nick:
Vous pouvez tester directement le niveau de sécurité asp.net:
if (SecurityManager.IsGranted( new AspNetHostingPermission(AspNetHostingPermissionLevel.Medium)))
{Response.Write("Medium Trust level");}