![]() |
| ![]() |
关闭本窗口 | ||
王正飞 ---- 随着Internet的迅速发展,政府、企业、个人等都需要在网上发布自己的信息,提供自己的服务。然而,网络上存在许多不安全因素,使人们担心自己的数据被偷窃、拦截或更改。如果事先采取相应的安全保密措施来堵塞隐患,系统的安全性将会大大提高。下面本文将从常用的Microsoft后台数据库SQL Server和Web服务器IIS这2个方面谈谈Web应用的安全措施。 一、SQL Server的安全配置 ---- 在网站开发过程中,运用SQL Server的安全特性提供适当的约束控制来保护数据,以便防止来自内部和外部的攻击。一般说来,内部攻击是大多数企业最关心的事情,常把安全性设置为限制谁可以访问数据库服务器以及访问的权限大小。对于SQL Server 7.0,可以从安全模式设置、使用许可和SAA的密码管理等3个方面来考虑。 ---- 1. 安全模式设置
选择“开始”*“程序”*“Microsoft SQL Server”*“Enterprise Manager”。 单击要管理的服务器使之加亮,选择“Server”*“Action”*“Properties”,或右击要管理的项目,选择“Properties”。 选择“Security”选项卡,在“Security”对话框中,把设备数据库的安全类型设置为标准型或集成型。 ---- 2. 使用许可 ---- 许可是访问数据库中某个对象(如一个表)的权限,把许可授予该用户,即允许用户执行选择数据、插入新行和更新数据等操作。SQL Server Enterprise Manager为数据库中的用户和组提供一个管理许可的简单办法,具体步骤如下。 ---- ①选择“开始”*“程序”*“Microsoft SQL Server”*“Enterprise Manager”。 ---- ②单击要管理的服务器使之加亮,选择“Server”*“Action”*“Properties”,或右击要管理的项目,选“Properties”。 ---- ③在“Properties”对话框中选中“Permissions”选项卡。使用户或角色高亮显示,并选择要授予该用户或角色的许可。 ---- (2)使用Grant和Revoke管理许可。 ---- Grant和Revoke语句是SQL Server管理许可的Transact-SQL界面,这2个命令用于把一个或多个许可赋给SQL Server中的一个用户或组。假设已经创建了pubs数据库,pubs数据库中有Employees和Authors这2个表,则下列语句授予了wzf用户对pubs数据库中Employees表的insert和select许可。 ---- Grant insert update ---- 下列语句撤消了表Authors的delete许可。 ----
3. 系统管理员的密码管理 启动Enterprise Manager,把服务器的安全模式换为集成安全模式。 终止,再启动SQL Server。 保证作为管理员登录到Windows NT服务器。 再启动Enterprise Manager。 单击“Security”,打开“Logins”目录,选择SA登录。单击右键选择“Properties”,改变口令。 把安全模式换回标准安全模式。 终止,再启动SQL Server。 二、IIS的安全防护 ---- 作为Web服务器,IIS(Internet Information Server)的任务之一是负责检验登录用户。可从以下几个方面进行安全措施的设置,以保护Web的安全。 ----
1. IP地址检查 ---- (1)选择“开始”*“程序”*“Windows NT 4.0 Option Pack”*“IIS”*“Internet Service Manager”,打开IIS管理控制台。 ---- (2)选中IIS下计算机名的Default Web Site,单击右键选择“Properties”,然后在选项卡中选中“Directory Security”。 ---- (3)选择“IP Address and Domain Name Restrictions”*“Edit”。 ---- (4)设置授权(Granted Access)或拒绝(Denied Access)的IP地址后,单击“OK”即可完成。 ----
2. IIS的身份验证 ---- 在Internet中,非常少的Web站点为访问者提供用户名和口令,所以在安装IIS时,就自动生成IUSR-Computername账号,专为Internet匿名用户使用。对于Basic的验证方式,系统要求用户与限制内容页连接之前提供用户在Web服务上的用户名和密码。其实,这不是一种很好的验证方法,因为基本验证会以未加密的形式来传送用户账号和密码信息,这时,只要使用Net monitor工具就可能拦截到这些消息。Windows NT Challenge/Response与Basic验证方式基本相同,但最明显的区别在于Web服务器与浏览器采用密码交换信息。SSL Client Authentication是指带客户SSL证书的用户可以访问要求SSL验证的Web服务器信息。 ---- 所以,利用IS的身份验证,将某些重要和敏感的数据资源的访问权限限定为特定的Web合法用户,禁止匿名访问,以此来保护Web应用中的重要资源。身份验证的设置步骤如下。 ---- (1)选择“开始”*“程序”*“Windows NT 4.0 Option Pack”*“IIS”*“Internet Service Manager”,打开IIS管理控制台。 ---- (2)选中IIS下计算机名的Default Web Site,单击右键选择“Properties”,然后在选项卡中选中“Directory Security”。 ---- (3)单击“Password Authentication Method”的“Edit”进行设置,完成后单击“OK”即可。 ----
3. 安全通信 ---- (1)Require Secure Channel 该复选框指定用加密通道连接客户机浏览器和Web服务器。 ---- (2)Require 128-bit Encryption 该复选框要求用128位加密连接客户机浏览器和Web服务器。 ---- (3)Key Manager 单击该按钮可以用密钥管理器收集所有相关信息,并从信任的第三方机构(称为证书机构)请求数字证书。受到证书后,用密钥管理器安装证书,并将它连接到验证密钥对中。 ---- 4. IIS自身问题的解决 ---- (1)SP文件应该和HTML文件保存在不同的目录下。 ---- (2)存放ASP文件的虚拟目录要设置为“Execute”(执行),但不可为“Read”(读取)。 ---- (3)HTML文件的虚拟目录要设置为可“Read”,否则这些Web页将无法显示。 ---- Web应用的安全性问题非常复杂,范围很广,在本文中,我们只是从内部安全角度出发,对后台数据库SQL Server 7.0和Web服务器IIS 4.0进行一些合理的和有效的安全设置,来防止非法用户对Web应用程序的越权访问,提高Web站点的安全性。
推荐本文给好友 我要投稿>> 进入信息化BBS论坛
| ||
![]() | 世纪科创电脑系统有限公司版权所有 | ![]() |