再安全的CLR和IIS,遇到没有安全意识的程序员和管理员,也是白搭。
WINDOWS本身其实也很安全,据说美国国防部用的都是WINDOWS,但是还是有很多人说Windows不安全。
微软的产品,为了保证兼容性和易用性(即:不管专业人士,还是非专业人士都好用,默认情况下,很多配置的安全级别并没有设置到最高)
另外你问题中:ASP.NET/IIS的"安全"跟".NET编写的程序代码更安全"中的安全,其实是二个意思,IIS/ASP.NET中的安全一般来讲,指防止黑客入侵之类的安全,而".net编写的程序代码更安全"中的安全,更多时候,指的是因为CLR的程序是托管的,所以对所有类型的变量会进行检查(比如string类型的值,不能赋值给int型,byte型的值是否越界),以及提供了异常机制,不会象以前win32原生程序那样容易出现:内存读取错误,而导致蓝屏,同时有AppDomain的边界机制,程序在内存中相对隔离,不太容易发生象以前的内存数据挟持等情况