Asp .Net 4.0中的部分/完全信任模式验证

时间:2011-08-10 00:58:12

标签: iis .net-4.0 asp.net-4.0 medium-trust partial-trust

我在Msdn的论坛上发现了类似的问题,但没有回答(你可以查看here) .Net 4.0附带了过时的方法

IsUnderHighTrust = SecurityManager.IsGranted( 
  new AspNetHostingPermission( AspNetHostingPermissionLevel.Unrestricted ) );

作为替代品,建议使用 AppDomain.CurrentDomain.PermissionSet

var permission = new PermissionSet(PermissionState.None);
permission.AddPermission(
  new AspNetHostingPermission(AspNetHostingPermissionLevel.Unrestricted));

IsUnderHighTrust = permission.IsSubsetOf(AppDomain.CurrentDomain.PermissionSet); 

PermissionSet 也需要完全信任模式。

所以显而易见的问题 - 如果应用程序处于完全或中等信任模式,如何在Asp .Net 4.0下进行检查?

1 个答案:

答案 0 :(得分:0)

如何将try / catch放在需要完全信任并捕获SecurityException的代码块(如上面的PermissionSet检查)上?它不是那么漂亮,因为这不是通常应该使用的try / catch,但似乎它会完成目标。