首页
学习
活动
专区
圈层
工具
发布
首页标签appdomain

#appdomain

如何利用反射拒绝反射?

DEA林晨曦老司机
已采纳
若要使用AppDomain,请执行以下操作。若要创建沙箱应用程序域,应传入仅包含要授予沙箱程序集的权限的PermissionSet。如果不想授予ReflectionPermission,那么就不应该将它添加到权限集中。 尽管如此,ReflectionPermission并不是唯一的“危险”许可,通常应该拒绝一般的源插件。如果希望非常严格,可能想要考虑只授予SecurityPermission\Execution。比如: PermissionSet permissionSet = new PermissionSet(PermissionState.None); permissionSet.AddPermission(new SecurityPermission(SecurityPermissionFlag.Execution)); 如果希望包含其他“安全”权限,可以使用其他AddPermission调用将它们添加到权限集中。如果希望包含所有被认为足够安全的权限,以便将这些权限授予下面的用于分解CAS策略系统的Internet源代码,则可以通过将internet区域证据传递给SecurityManager来提取这些权限。GetStandardSandbox静态方法。例如: Evidence evidence = new Evidence(); evidence.AddHostEvidence(new Zone(SecurityZone.Internet)); PermissionSet permissionSet = SecurityManager.GetStandardSandbox(evidence); 这两种方法都在MSDN文章中。... 展开详请
领券