我想以中等信任度运行 exe 和 Windows 服务,但我能找到的所有文献都建议使用
<system.web>
<trust level="Medium"/>
</system.web>
对于 ASP.NET,所以我已经尝试过,但使用的代码来自如何检查.NET 中是否在中等信任环境中运行?它似乎仍然完全信任。这样做的正确方法是什么?
可用的方法取决于 .NET 版本。在 .NET 4.0 之前,CLR 强制执行 CAS 策略,这使得限制任何程序集的权限成为可能。但是,从 .NET 4.0 开始,CLR 不再应用 CAS 策略,除非您通过NetFx40_LegacySecurityPolicy任何给定应用程序的 app.config 文件中的元素。虽然此方法当前可用,但您可能需要记住,未来的 .NET Framework 版本可能不支持它。
新的权限限制方式是通过“裸”CLR 之外的主机来限制权限。这就是 ASP.NET 所做的事情,并且您的备用托管平台也需要这样做才能正确实现这一点。这种权限限制的最简单机制是通过沙盒应用程序域。我不熟悉 Topshelf,他们的介绍文档没有明确说明他们是否支持这一点。然而,这可能是一个相对简单的增强功能,因此可能值得请求该功能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)