人口基础信息服务支撑系统的安全性研究
摘要:没有对具体业务的安全特点和安全环境的正确分析和认识,任何安全技术、产品
都解决不了真正的安全问题。本章就针对人口基础信息服务支撑系统的安全性进行研究,
提出了就利用身份验证、SQL 本身以及数据库备份与还原的系统安全策略。 关键词:人
口 信息 系统 研究 0 引言 随着 金融 信息化、 电子 政务、电子商务等信息
化建设的快速 发展 , 政治 、 经济 、文化等重要领域的信息系统都面临着日益严重的信
息安全问题。然而,安全专家研究却发现,首先,安全设备有其技术定位和安全局限性。
一般地,安全技术都是针对安全的某一个环节或方面开发的,而对于 网络 这个多样化的
复杂系统,仅用某项或几个安全技术是无法满足所有业务的所有安全需求。其次,安全技
术的简单堆砌无法提高系统的安全度。没有对具体业务的安全特点和安全环境的正确分析
和认识,任何安全技术、产品都解决不了真正的安全问题。本章就针对人口基础信息服务
支撑系统的安全性进行研究,提出了就利用身份验证、SQL 本身以及数据库备份与还原的
系统安全策略。 1 实施安全策略的必要性 信息之所以要保密,是因为它具有
机密性或敏感性。在信息时代,随着各种信息的剧增、社会通信的发展和 计算 机能力的
进步,信息在产生、存储、处理、传递和利用的各个环节中都有被窃取、被篡改或被利用
的危险。因此,数据安全是进行系统设计时必须考虑的问题之一。对于人口基础信息服务
支撑系统来说,数据库中存放大量人口数据和档案信息,需要进行严密的保护,一旦数据
被损坏,就会导致非常严重的后果。 2 利用身份验证进行数据保护 人口基础
信息服务支撑系统是一个 Web 管理系统,研究它的安全性,首先要解决一个问题:谁有
权力进入系统通常的做法就是系统维护一张允许进入的用户名单。当用户要求进入的时候
,系统判断是否为合法用户。于是问题就转化为如何有效地判别一个用户是否是系统的有
效用户,称之为“身份验证(Authentication)”过程。接受用户凭证,并根据指定的颁发机
构来验证的过程称为身份验证。用户(或者潜在的应用程序或计算机的)标识被称为安全
当事者。客户端必须提供凭据,以便服务器验证当事者的标识。确认标识后,应用程序就
能授权当事者访问系统资源。 和 IIS(International Information Service)
一起为用户提供验证服务。 有 3 种用户验证方式,即 Windows 验证、窗体
Forms 验证和 Passport 验证。 Windows 身份验证 这种身份验证提供程序依靠
IIS 来执行所需要的客户端身份验证。在 IIS 验证客户端身份后,它将安全标记传递给
。 基于从 IIS 获得的安全标记构造一个 WindowsPrincipal 类的对象,并
将其附加到应用程序的上下文中。Windows 身份验证方案的优点是:身份验证使用
Windows 账户,所以不需要编写任何自定义的身份验证代码。确定是可能要求使用和管理
单个 Windows 账户。因此 Windows 验证只适用于放在受控环境里的网站,也就是说,使
用 Windows 登录适合于 企业 内网。在 Internet 上,网站无法控制用来访问网站的浏览器
或者客户端的机器。 Forms 身份验证 Forms 身份验证提供程序是一个身份验证
方案,它使用应用程序可使用 HTML 窗体直接从客户端收集凭据。客户端直接向应用程序
代码提交凭据以进行身份验证。如果应用程序验证该客户端的身份,则它向该客户端发出
一个 Cookie。该客户端在后面的请求中提交该 Cookie。如果对于受保护资源的请求不包
含该 Cookie,则应用程序将该客户重定向到登录页。当验证凭据时,应用程序可以多种方
法存储凭据,如配置文件或 SQL Server 数据库。Forms 身份验证方案的优点包括:允许
使用任意条件自定义身份验证方案;可用于身份验证或身份确认;不需要相应的 Windows
帐户。确定是受制于 Cookie 生存期的重放攻击。因此 Forms 身份验证特别适合布置于互
联网的应用。
Passport 身份验证 Passport 身份验证提供程序是一个由 Microsoft 提供的集中
式身份验证服务,它为成员站点提供一次登录和核心配置文件的服务。当成员站点注册到
Passport 时,Passport 服务就授予一个站点特定的密钥。Passport 登录服务器使用该密
钥加密和解密在成员站点和 Passport 登录服务器之间传递的查询字符串。Passport 验证
方式适合于跨站之间的应用。 人口基础信息服务支撑系统涉及的用户包括系统管理
员与系统普通用户,因此客户端不容易进行控制,所以不能采用 Windows 身份验证,而
采用 Forms 身份验证。这种身份验证过程允许应用程序直接从客户端请求方收集凭据(例
如用户名和密码),并自己确定这些凭据的真实性。由于在进行 验证以前首先进
行 IIS 验证,为了保证客户端请求能够达到 应用程序,在实现自定义身份验证方
案时需要启用 IIS“匿名访问”的设置。 3 利用 SQL 本身进行安全保护
SQL Server 本身具有的安全机制主要有: 登录验证机制,也就是
Windows 认证模式、SQL Server 身份验证模式或者混合模式。 角色机制,利用
角色,系统管理员只需对权限的种类进行划分,然后将不同的权限授予不同的角色,而不
必关心有哪些具体的用户,从而简化了权限的管理,减少了权限的授予工作。
许可机制,许可,也称为特权、权限。合法用户进入服务器和数据库后,对数据对象进
行的操作还要通过访问许可机制来控制。系统把所有的操作根据用户操作的性质创建成不
同角色,利用角色来进行用户访问许可。如果某个用户被赋予 n 个角色,就拥有这 n 个角
色所拥有操作权限的并集。SQL Server 中,可以通过 SQL 命令 Grant 和 Revoke 来授予和
取消许可。具体实例不再详细地描述。 视图机制,进行权限控制,不仅可以通
过角色和许可来实现,还可以通过定义外模式来提供一定的安全保护。 存储过
程机制,进行权限控制,不仅可以通过角色和许可来实现,还可以通过定义外模式来提供
一定的安全保护。 加密机制,对于高度敏感性数据,例如,财务数据、军事数
据、国家机密,除以上安全性措施外,还可以采用一定的加密算法,将明文转换为密文,
再实现数据的存储或传输。 审计机制,审计是监视和记录用户对数据库施加的
各种操作的机制,主要包括用户、操作对象、操作时间、操作类型等。审计的结果存储在
数据库的审计表中。审计本身并不能直接加强系统的安全性,但是通过审计我们可以了解
到有关数据库操作的详细信息,并发现安全隐患,在损失之前就采取措施。 修
改 sa 密码,因为 SQL Server 既不能修改 sa 账户的名称,也不能删除它,并且该账号的
密码在默认情况下为空,所以我们必须对这个账号的密码进行修改,并且要求长度超过 8
位,还应该是数字和字母组成的高度复杂的密码。 数据库的备份与恢复,备份
和恢复是指为保护一个数据库免于数据损失或者在发生数据损失后进行数据重新创建的各
种策略、步骤和方法。在人口基础信息服务支撑系统中,进行的主要是 存储过程机制
和 数据库备份与恢复。对于数据库的备份和恢复,已经将系统的数据库设定在每天凌
晨零点进行数据的自动备份。由于系统不需要具备很强的机密性,所以没有选择过多的
SQL 本身的数据保护机制。