维护ASP应用程序的安全
脚本映射文件
应用程序的脚本映射保证了
Web 服务器不会意外地下载
.asp 文件的源代码。例如,即使您为包含了某个 .asp 文件的目录设置了“读”权限,只要该 .asp 文件隶属于某个脚本映射应用程序,那么您的 Web 服务器就不会将该文件的源代码返回给用户。
Cookie 安全性
ASP 使用 SessionID
cookie 跟踪应用程序访问或会话期间特定的 Web 浏览器的信息。这就是说,带有相应的 cookie 的 HTTP 请求被认为是来自同一 Web
浏览器。Web 服务器可以使用 SessionID
cookies 配置带有用户特定会话信息的
ASP 应用程序。例如,如果您的应用程序是一个允许用户选择和购买 CD 唱盘的联机音乐商店,就可以用
SessionID 跟踪用户漫游整个应用程序时的选择。
SessionID 能否被黑客猜中?
为了防止计算机黑客猜中 SessionID cookie 并获得对合法用户的会话变量的访问,Web 服务器为每个 SessionID 指派一个随机生成号码。每当用户的 Web 浏览器返回一个 SessionID cookie 时,服务器取出 SessionID 和被赋予的数字,接着检查是否与存储在服务器上的生成号码一致。若两个号码一致,将允许用户访问会话变量。这一技术的有效性在于被赋予的数字的长度(64 位),此长度使计算机黑客猜中
SessionID 从而窃取用户的活动会话的可能性几乎为 0。
加密重要的 SessionID Cookie
截获了用户 sessionID cookie 的计算机黑客可以使用此 cookie 假冒该用户。如果 ASP 应用程序包含私人信息,信用卡或银行帐户号码,拥有窃取的 cookie 的计算机黑客就可以在应用程序中开始一个活动会话并获取这些信息。您可以通过对您的 Web 服务器和用户的浏览器间的通讯链路加密来防止 SessionID cookie 被截获。
使用身份验证机制保护被限制的
ASP 内容
您可以要求每个试图访问被限制的 ASP 内容的用户必须要有有效的
Windows NT 帐号的用户名和密码。每当用户试图访问被限制的内容时,Web 服务器将进行身份验证,即确认用户身份,以检查用户是否拥有有效的
Windows NT 帐号。
Web 服务器支持以下几种身份验证方式:
基本身份验证 提示用户输入用户名和密码。
Windows NT 请求/响应式身份验证
从用户的 Web 浏览器通过加密方式获取用户身份信息。
然而,Web 服务器仅当禁止匿名访问或 Windows NT 文件系统的权限限制匿名访问时才验证用户身份。
保护元数据库
访问元数据库的 ASP 脚本需要 Web 服务器所运行的计算机的管理员权限。在从远程计算机上运行这些脚本时,须经已通过身份验证的连接,如使用 Windows NT 请求/响应验证方式进行连接。应该为管理级 .asp 文件创建一个服务器或目录并将其目录安全验证方式设置为 Windows NT 请求/响应式身份验证。目前,仅
Microsoft Internet Explorer 2.0 或更高版本支持 Windows NT 请求/响应式身份验证。