作者:毛海
1 引言
近年来,各种基于互联网的应用已逐渐成为人民日常生活中不可或缺的一部分。网站也成为各政府部门、机关单位、工商企业的首要信息发布平台。随着网站建设的深入推进,网站内容日益丰富,功能逐渐增强,“网站群”建设模式被众多单位采用。网站群是多个网站的集合,网站群的信息容量逐渐向海量的方向发展,其数据管理的复杂度远超单个网站,加之现在各种黑客技术泛滥,一旦发生信息安全事故(隐私泄露、数据丢失、恶意篡改等),就有可能给整个网站群带来灾难性的后果,甚至于面临网站被关停的风险。
网站群内容管理系统(wg-cms)作为网站群建设的系统工具,在实际的建设过程中如何保障网站信息资源的安全,是每个网站群内容管理系统实施人员所必须认真分析与考虑的。本文从网站群内容管理系统(wg-cms)中的数据共享与呈送、系统授权管理机制、信息流转环节入手,论述网站群内容管理系统(wg-cms)中的信息安全保障技术。
如无特别说明,本文用wg-cms缩写代表网站群内容管理系统。
2 网站群概述
网站群是由统一规划建设的若干个能够相互共享信息、按照其隶属关系组织在一起,既可以统一管理,也可以独立管理、自成体系的网站集合。
图 1 网站群模式工作示意图
我国网站群的建设,按照网站群的建设范围和网站群建设技术的逐步发展,可以归纳为以下五个发展阶段:
第一阶段:链接嵌套阶段。这一阶段是网站群建设意识的萌芽阶段。网站建设单位已经初步有了信息共享的愿望,上级单位要求各下属单位网站在自己的站内通过链接的方式组织信息内容。各个网站的风格设计、栏目规划、内容信息等都是各自独立维护。因此,这一阶段的特点是完全未经规划、没有统一管理需求,事实上是各自独立的一群网站。
第二阶段:外观形象统一阶段。这是网站群建设的方法论提出阶段。这一阶段网站的建设单位已经意识到自己的各下属网站需要从网站的栏目规划、页面风格等方面进行进一步的总体规划,以展现上下一致的整体风格。但在实际的建设中,各网站的关系仍然处在一个平面上,没有隶属关系,且各个网站相互独立,信息不能共享。信息的组织还是通过互相嵌套信息链接完成,因此,这阶段的网站群建设的特点是有了统一的外表,但各网站间的信息互相孤立,不能统一管理,其实际还是各自独立的一群网站。
第三阶段:业务整合阶段。这是网站群建设的技术探索阶段。网站建设单位因业务需要,要将分散在不同物理位置的独立网站整合在一起,实现业务信息的共享。此阶段的特点是,利用了很多第三方产品如biztalk、tong link来管理、维护网站的信息,通过数据同步手段来整合已经存在的各子网站。但这样形成的网站群存在很大的缺陷,信息只能通过被动的同步手段,形成一个单向的共享路径。各个网站的后台信息管理系统各自独立,各网站的信息不能充分共享、不能统一管理。在检索信息时只能到网站各自的检索系统中查找,不能实现基于网站群的联合检索。
第四阶段:网站群建设系统化阶段。这是网站群建设的繁荣阶段,网站群的建设模式日趋稳定,建设技术已相当成熟,市场上出现了很多基于网站群模式的内容管理系统(wg-cms)。利用网站群内容管理系统(wg-cms),可以实现建设单位统一规划、统一实施或分步实施的建设要求,wg-cms中,所有的网站运行在同一个管理平台上,通过统一授权平台,实现子网站的统一管理,各网站的信息均可独立维护,但数据集中存储于同一数据库中。所有子网站信息均可通过全文检索平台,检索该网站群内所有网站的数据。此阶段特点是网站建设系统大量推出,诸多先进的技术如web2.0、网站静态化、全文检索等技术被大量应用到网站群建设中,提高了网站的服务能力、提升了用户的浏览体验。
第五阶段:网站群系统云阶段。网站群建设发展到高级阶段,许多新的需求逐渐提出,云计算下的网站群建设理念应运而生。云阶段网站群建设的核心目标是实现网站群数据的云存储,在数据结构上让各子站充分的独立,各子站都能实现自己的数据结构并独立存储网站数据。这也使以往单一数据库存储所有子站数据的建设模式受到挑战,将网站群技术导向了一个全新的方向。
3 数据共享与呈送的安全保障
网站群内容管理系统(wg-cms)的主要目的是实现群内的各个子网站数据共享,消除“信息孤岛”。在数据共享的时候,如何保证数据正确的共享给指定主体,即实现有限制、可控的共享呢?同样,在数据呈送的时候、在有多条数据操作链路并发的时候,如何保证数据高效、安全的提交呢?数据总线技术与消息队列控制技术为网站群数据共享与呈送的安全保障提供了良好的凯发k8天生赢家的解决方案。
1) 数据总线技术
数据总线(data bus)作为一种技术概念和一种实施规范。它规范了应用系统之间、程序之间、容器之间进行数据交换和共享的设计和实施思想,统一了数据共享方面的编程规范和集成规范。数据总线(data bus)是应用系统集成的重要理论基础,规范了一个大的集成应用系统中同构系统、异构系统等方面进行数据共享和交换的实现方法。
图 2 数据总线技术
数据总线技术的实现方法中统一了数据访问接口,将网站群中的每个网站视为一个集群节点,通过网站群数据服务总线,实现同一技术构架、不同数据后台、不同物理位置的网站数据交换。网站群的所有数据操作均通过该接口完成,统一了数据操作出入口,通过数据操作安全认证配合操作日志记录,使得所有数据操作行为可溯,做条每条数据操作均有责任主体。数据总线技术明确定义了数据操作接口,通过相应的代码封装,集合用户认证、权限查验、防sql注入检查、提交数据完整性检查等方法,可以确保数据在共享与呈送时是单例的、可控的。
2) 消息队列技术
消息队列控制器(mqc)是wg-cms中的核心组件,基于消息通讯机制原理,提供一个安全、可靠的信息传输体系。这里把wg-cms提交到消息队列控制器处理的数据定义为消息,比如:系统中传输的各类数据信息,某个子站向其它子站发出的处理请求等都可以作为消息。所有接收到的消息通过消息队列控制器存储于消息队列中,并通过消息重发机制防止数据丢失,保证消息传输的稳定可靠。消息处理程序根据消息的具体信息,通知系统调用对应的消息处理子程序对消息进行分析、处理。使用消息队列控制技术能够支持wg-cms随时监控系统的工作情况(监控等待队列消息、错误队列消息等),准确了解信息的处理情况。
每一个消息都由下面两部分组成:
(1)消息描述符(message discription或message header)即消息头,用于描述消息的特征,表明消息的身份。如:消息的优先级、消息id、安全认证信息等。通过消息头,消息队列控制器的处理程序就能方便区分各消息类型,从而通知网站群内容管理系统(wg-cms)调用对应的消息处理程序;
(2)消息体(message body),即用户数据部分,消息体可以是用户数据、信息内容、安全认证信息的数据集合,作为输入参数供消息处理程序调用。在消息处理程序中通过对消息体数据校验,凡是不符合校验要求的数据都作为脏数据立即丢弃,不再向下一级处理程序提交,达到保证传输数据安全可靠的目的,从而确保网站群数据共享与呈送的安全。
在消息队列中,消息分为两种类型,临时性消息和永久性消息,临时性消息是存储在内存中的,为了提高系统性能而设计,当系统掉电或消息队列控制器重新启动时就会丢失。当用户对消息的可靠性要求不高,而侧重系统的性能表现时,可以采用这种类型的消息。如在发布生成网站静态页面时,可使用临时性消息,因为页面信息可能会随时更新,新的消息会随时覆盖旧的消息,这样只需要提取最近的消息处理即可。永久性消息是存储在硬盘上,并且纪录操作日志,它具有高可靠性,在网络和系统发生故障等情况下都能确保消息不丢、不重。系统重新启动后消息队列控制器可立即读取保存在硬盘上的永久性消息,由消息处理程序进行处理。
4 组件及数据访问权限控制
网站群内容管理系统(wg-cms)作为一个多用户系统,用户角色的差别导致其在系统内享有可用资源的不同。要使各用户的操作在系统内严格隔离,从而保证用户的数据完整性,保障数据安全。因此,系统必然存在授权管理问题,即如何建立授权机制的问题。授权机制问题的解决直接影响整个信息资源系统的可控性和安全性。这也是当前各网站群建设单位在其信息化过程中面临的一个关键问题。wg-cms作为多用户系统,必须具有完善的组件及数据访问权限控制功能,对系统中各功能组件、各数据项访问作精确授权控制,保证wg-cms系统的严谨性,杜绝系统操作中可能带来的安全隐患。wg-cms系统要实现授权机制的精确管理,应当视系统实际运行情况在不同的信息处理环节中使用不同的授权模式或多种授权模式结合使用。
1) 统一权限验证
统一权限验证即用户登录后,在允许访问的资源内可以任意切换,权限验证是统一验证的,各功能应用中不再做验证。系统管理员在用户初始化时把相应的功能模块授权给指定的用户使用,该用户登录后的可见资源即是已经授权的可访问资源。
(1) 针对信息资源授权:对于信息资源目录中某一具体的信息资源而言,确定哪些用户组/角色或级别的用户可以对该信息资源拥有权限;
(2) 基于用户组/角色授权:明确用户身份,对于属于某一用户组/角色或级别的用户,确定可被授权的信息资源列表;
(3) 基于具体功能组件授权:对如“查看”、“编辑”、“审核”、“发布”、“删除”等操作分别授权,实现细粒度的权限管理。
2) 分级分类授权
通常网站群的建设由其上级机构发起,上级建设单位通过wg-cms管理下级网站并指导下级网站的信息填报及发布。因此,对于网站群内容管理系统(wg-cms)的功能组件及数据项要实现分级分类的授权管理,把网站群内不同级别的网站按其从属关系隔离。使各子网站可以独立维护其网站内容。
(1) 上级系统管理员对下级系统管理员授权;
(2) 本级系统管理员只能对本级的非管理员帐户授权;
(3) 下级管理员只能在其本身的可访问资源范围内授权;
(4) 针对信息资源授权:对于信息资源目录中某一具体的信息资源而言,确定哪些用户组/角色或级别的用户可以对该信息资源拥有权限;
(5) 基于用户组/角色授权:明确用户身份,对于属于某一用户组/角色或级别的用户,确定可被授权的信息资源列表;
(6) 基于具体功能组件授权:对如“查看”、“编辑”、“审核”、“发布”、“删除”等操作分别授权,实现细粒度的权限管理。
5 信息流转安全
网站群内容管理系统(wg-cms)一般通过工作流的方式管理信息的流转。工作流是一类能够完全或部分自动执行的过程,它根据一系列过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行。wg-cms使用工作流管理网站群信息的审核-校对-发布流程。工作流依据事先定义的参数执行,其流转环节的参数是可见、可配置的,因此,要保证信息流转过程中的数据不丢失或被篡改,保证内容安全,必须对工作流的执行进行监控,在必要的环节中加入相应的权限验证、数据合法性检查,保证信息在处理环节中的变更可追溯。
图 3 信息流转需有安全措施
1) 动态权限检查
信息在流转过程中不可避免要修改某些属性,在修改这些属性之前应该加上权限验证以保证数据是合法修改的。在工作流的执行环节中,在环节结束及进入下一个处理环节时必须针对该流程的业务逻辑要求,作数据合法性及完整性检查,保证传递给信息流转过程中下一环节的数据是符合业务逻辑要求的;对流转环节的进入进行身份验证,必要时加入即时告警功能,通知wg-cms系统管理员介入到信息流转行程。
2) 信息追溯管理
wg-cms的信息流转中,凡基于信息发布、浏览、修改、删除等功能的操作,应该实现对信息的追溯管理功能,把流程执行中相关处理信息详情进行日志记录。对某一信息,记录在某一时间段内或某一流转环节中,有哪些用户对其进行了操作(包括修改、发布、删除等),有哪些用户对该信息进行了浏览;对于信息流转中涉及到的用户,应该记录某一用户,在某一时间段内或某一流转环节中,对哪些信息作了什么操作。通过日志记录,wg-cms就能实现信息处理流程的追溯,保证信息在流转中的数据变化可查、可还原。
6 部署防篡改工具
目前,网站安全主要是由防火墙、入侵检测系统与防病毒软件构成网络安全防护体系。来自互联网的安全威胁形势严峻,网站群的安全防护尤其重要,除了上述三层防护外,可以部署第三方安全防护工具:网页防篡改系统。网页防篡改系统部署于网站服务器中,可以对指定网站的各类资源文件包括各类静态网页、动态脚本、图片、视频、文档等实体文件进行实时监控和防护。
图 4 防篡改部署图