首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PermissionSet -程序集的安全限制在哪里设置?

PermissionSet -程序集的安全限制在哪里设置?
EN

Stack Overflow用户
提问于 2011-03-02 07:03:33
回答 1查看 537关注 0票数 0

我继承了一个解决方案,该解决方案包含一个类库,该类库的方法以:

代码语言:javascript
复制
[PermissionSet(SecurityAction.Assert, Name = "FullTrust")]

该属性显然是必需的,因为如果我注释掉该属性,则该方法抛出以下异常:

'System.Security.Permissions.FileIOPermission,System.Security.SecurityException:请求

mscorlib、Version=4.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089‘类型的许可失败。

据我所见,引用此程序集的可执行文件正在完全信任地运行,因为当我查看可执行文件的app.manifest时,我可以看到:

代码语言:javascript
复制
<requestedExecutionLevel level="asInvoker" uiAccess="false" />

当我以管理员身份运行Visual时,我会假设命中调试也会在Administrator模式下运行可执行文件,因此它应该具有完全的权限(尽管我可能完全误解了这一点)。

库的AssemblyInfo似乎没有什么有趣的关于安全限制的内容。

所以我不明白为什么这个库一开始运行在一个较低的信任级别上。有人能告诉我所有可能的地方,我应该看看这个限制性的安全策略是在哪里设置的吗?

(值得注意的是,这个项目是在.net 3.5下设计的,但我的工作是将其升级到4.0上(它现在正在运行)。据我所知,在最新版本中,安全模型发生了重大变化。)

EN

回答 1

Stack Overflow用户

发布于 2011-03-03 01:22:54

好的找到答案了。安全限制在加载程序集的AppDomain上。我最初以为程序集是静态调用的,但结果是它在运行时被加载到一个新的AppDomain中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5164402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档