代码改变世界

随笔档案-2011年8月7日

Effective C# 学习笔记(四十八)使用安全代码

2011-08-07 10:04 by 小郝(Kaibo Hao), 506 阅读, 收藏,
摘要: .NET 运行时保证了恶意代码不可在远程设备上(即跨Internet、Intranet)执行,但一些分布式部署的应用需要执行远程操作。若CLR不信任某个程序集,它就不会执行程序集的某个操作,这种行为叫做CAS(Code access security)。CLR执行基于角色的权限控制。这种控制是在运行时校验的,编译时无法强制检验,而且在你的开发机上也很难发现这些权限控制的约束,因为你硬盘上的代码拥有较高的执行权限。在处理此类非安全代码时,原则是首先看能否通过其他方式不去访问这些受保护的资源;若必须使用,则将这些代码放到一个独立的程序集中。 阅读全文