- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在实现一个将加载和执行第 3 方代码的应用程序。
虽然 .NET 沙盒很好,但我找不到阻止代码启动新线程的方法。
这是一个问题,因为据我所知,我们无法安全地枚举和中止它们以卸载沙箱 AppDomain - 我们必须退出整个过程。
我如何禁止 Thread.Start 或(更好的)白名单/黑名单特定 CLR API?
最佳答案
您需要创建脚本环境而不是运行编译代码。在这种环境中,您可以解析出不受支持/不需要的关键字。
http://msdn.microsoft.com/en-us/library/ms974577.aspx
http://osherove.com/blog/2004/2/17/make-your-net-application-support-scripting-a-practical-appr.html
http://www.codeproject.com/KB/library/Dotnet_Scriptor.aspx
可能有一些方法可以限制在 AppDomain 中运行的代码的权限,这就是您所说的沙盒吗?
Good example of use of AppDomain
如果 cpu 和内存出现“不良情况”,您可能会强制卸载 AppDomain。
最近在 .net 4 中我注意到但没有调查 HostProtection Permissions ...
System.Security.Permissions hostprotectionattribute
=== 编辑 ===
看起来设置了安全权限的 CLR 托管是可行的方法。链接...
http://msdn.microsoft.com/en-us/library/hbzz1a9a(v=vs.90).aspx
http://msdn.microsoft.com/en-us/library/h846e9b3(v=vs.90).aspx
http://msdn.microsoft.com/en-us/library/system.security.permissions.securitypermission(v=vs.90).aspx
关于c# - 防止不受信任的 C# 代码启动新线程或黑名单/白名单 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5508712/
嘿。本周的一个教程,其中一个问题要求通过使用其他函数 formatLine 和 formatList 创建一个函数 formatLines,以格式化行列表。 我的代码是这样的; type Line =
我是一名优秀的程序员,十分优秀!