目前构建网站系统的语言无外乎ASP.NET、JSP或PHP等,它们自身的安全性和编程的方式是否安全是关键。随着近年来.NET技术和JSP越来越为大家所熟知,各类基于它们的Web应用系统被广泛开发和应用。特别是基于.NET框架的ASP.NET等技术使得Web程序更加容易开发和维护,但Web应用程序所带来的安全漏洞也越来越多,每年由于代码安全问题,都会造成巨额损失。目前大部分互联网犯罪和黑客行为,都是通过网站的漏洞展开的。例如,“世界著名社区网站Facebook近日测试新网站的用户界面,其中的一个漏洞竟然导致网站8000万用户的生日信息被泄露。类似的事情数不胜数,盛大、联想等公司也都出现过网站被攻破的事件。
.NET框架本身具备很多编写安全代码的技术,运用这些技术,可以开发安全的Web应用程序。本章将从程序安全性的含义、用户角色与代码访问、安全模型、安全类库4个方面讲述Web应用程序安全的基本概念。