腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
标签
appdomain
#
appdomain
关注
专栏文章
(4)
技术视频
(0)
互动问答
(1)
如何利用反射拒绝反射?
1
回答
appdomain
、
msdn
、
插件
、
反射
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文章中。...
展开详请
赞
0
收藏
0
评论
0
分享
若要使用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文章中。
热门
专栏
stcnb
153 文章
20 订阅
科控自动化
579 文章
84 订阅
JusterZhu
340 文章
31 订阅
领券