航标现场巡检APP的信息安全机制研究

马甲林
摘要:传统航标业务管理信息系统已经难以满足航标管理现场信息采集及核查要求,同时,由于航标灯器品牌不一,信息化程度参差不齐,都极大影响一线员工现场记录的工作效率。随着“互联网+”等信息技术的发展,以及智能手机的广泛应用,航标现场巡检的方式也在悄然改变。借助现有航标业务管理平台,开发设计移动终端的航标现场巡检APP,将现场工作情况及时记录到终端中,保存最真实的现场资料,真正的将航标工作延伸到一线。本文系统介绍了该APP的功能、系统架构、通信协议,并重点研究了该APP的信息安全机制,防止受限信息的非授权获取、泄露和篡改,保障系统的可靠运行。
关键词:现场巡检 安全机制 可靠性
0 引 言
传统的航标现场巡检维护情况都需要手动记录,存在诸多不便,规范性、准确性也难以保证,开发一套基于安卓系统的航标现场巡检作业APP,该系统以航标基础数据库、业务运行管理系统、器材维护管理系统为依据,综合海e行(电子海图APP)系统,为航标一线现场工作提供客户端接口,完成现场航标巡检维护信息核查、任务通知查看、器材周转录入、图片采集及其他业务管理。数据同步到东海海区航标综合管理信息系统中,从而避免现有手动书写错误,缩短了现场工作报告上传延时,极大地提高了工作效率,实现航标管理维护的信息化。本文重点研究了此APP系统的信息安全机制,通过软件、硬件等的冗余备份和业务系统访问控制和隔离来确保数据安全,保障数据的保密性、完整性、可用性、可控性等。
1 系统介绍
1.1系统功能
系统针对不同用户的角色、权限进行管理,在此基础上对日常航标的维护巡检实现了航标基础信息查看、现场核查、业务运行管理、器材维护管理和扫码功能。获取航标基础数据、航标履历数据、AIS基站信息,在界面直观显示经纬度、编号等信息;实时查看航标遥测遥控信息,包括当前经纬度、电流电压、位移、历史轨迹等,支持现场巡检信息上报;服务器端按权限推送计划任务、通知给客户端用户账号,客户端完成相应任务后可提交任务,同时上传相关照片,查询已完成任务及未完成任务;用户按权限访问服务器端数据库,获取相关数据列表,包括器材入库、器材跟踪使用、器材报废、安装维护保养时间记录等;可扫描二维码,读取、上传相关信息。
航标现场巡检APP依赖于电子海图,而航保中心相关部门之前已经开发了海e行APP,并取得了较好的应用效果。用户可通过海e行软件在线或离线下载电子海图,设计航线,接收航行警告,也可以进行海上导航、定位、测距。航标现场巡检APP融合海e行相关功能,为用户提供统一的接口和服务。通过APP应用,用户可对航标信息进行图层选择使用,设计位置与实际位置比对,接收航标动态,查看航标、船舶轨迹回放情况等。
1.2系统架构
本系统采用三层 C/S架构,即客户端(Client)、中间层(middleware)、服务器端(Server)。如图1-1所示,安卓手机 APP 为客户端,航标处中心服务器程序为服务器端,中间层数据库及服务程序提供数据缓存、转发、安全审查、备份等功能。服务器端使用 Visual Studio 2012开发软件,开发语言为C++;手机 APP 端使用 Eclipse开发软件,开发语言为java;采用 Scoket(TCP/IP)协议结合 Webservic 方式进行数据通信。
1.3通信协议
航标遥测遥控终端主要包括:AIS 航标、北斗航标、GPRS航标等。由于不同航标遥测遥控终端采用的数据格式、传输协议不同,所以给航标遥测遥控终端的现场巡检核查带来诸多不便。AIS 航标采用广播方式,工作在甚高频频段,会有极小概率的数据传输错误发生,而AIS虚拟航标受基站覆盖范围影响较大。北斗航标采用北斗导航卫星系统进行通信,信号覆盖范围广,适用于公共网络覆盖不到的区域。目前,由于北斗遥测终端应用还未全面普及,现在使用北斗遥测遥控终端的成本较高,但是随着技术的进步,北斗航标的优势将越来越明显,今后两三年内会得到极大地发展。GPRS遥测遥控终端使用应用灵活方便,但是在公共网络覆盖不到或者信号较弱的区域带来监控盲区和较大的维护成本。
遥测数据服务器已将上述几种类型的数据解析,并在值班管理系统和动态监管系统中得到应用。因此,该APP系统可直接读取中心数据库解析好的遥测数据,而且不用自己写入遥测数据,保证了数据读写一致性。
2信息安全机制
每个应用系统都需要采取强有力的安全策略,而认清系统的脆弱性和潜在威胁,采取一定的安全机制对于保障网络信息传输的安全性十分重要。本系统从安全认证机制、访问控制策略、加密机制、数据备份、数据一致性以及Android本身的安全机制等几个方面做了论述。
2.1安全认证机制
通过一种机制来验证活动中各方的真实身份,如使用数字摘要、数字信封、数字签名、数字时间戳、数字证书等。本系统客户端APP使用了应用签名机制,保障了应用发布、安装和运行过程中的安全。Android应用打包成.apk文件,它在发布时使用开发者定义的数字签名,这不同于通常在信息安全领域中使用权威的认证机构认证的数字证书。Android主要确保开发者和应用间是可信的,用以鉴定应用来源[1]。基于对实际工作的便捷性需求,本系统对用户真实身份做了一定程度的验证。
2.2访问控制策略
(1)系统访问控制
系统访问控制是保障系统安全的第一道防线,它控制哪些用户能够登录到系统服务器并获取系统资源,以及记录用户登录时间和登陆地点。用户的访问控制可分为三个步骤:用户名的识别与验证、用户口令的识别与验证、用户账号的缺省限制检查,只有通过上述几个步骤,该用户才能顺利访问系统。用户口令必须经过加密,加密的方法很多,其中最常见的方法有:基于單向函数的口令加密,基于测试模式的口令加密,基于公钥加密方案的口令加密,基于平方剩余的口令加密,基于多项式共享的口令加密,基于数字签名方案的口令加密等。用户还可采用一次性用户口令或动态密码。
(2)系统的权限控制
系统的权限控制是针对非法操作所提出的一种安全保护措施。用户和用户组被赋予一定的权限。系统控制用户和用户组可以访问哪些目录、子目录、文件和其他资源。可以指定用户对这些文件、目录、设备能够执行哪些操作。根据访问权限将用户分为以下几类:
① 系统管理员,负责日常的运维和管理,可以进行配置、业务管理、日志管理;
② 安全保密管理员,负责账户相关的管理,可以执行权限管理、用户审批、密码策略等,但不能进行业务操作;
③ 安全审计员,负责监督审计前两类管理员的操作,仅能进行日志查看,安全保密管理员与安全审计员不能由一个人同时承担;
④ 一般用户,系统管理员根据他们的实际需要为他们分配操作权限。用户对网络资源的访问权限可以用一个访问控制表来描述。对目录和文件的访问权限一般有八种:系统管理员权限(Supervisor)、读权限(Read)、写权限(Write)、创建权限(Create)、删除权限(Erase)、修改权限(MOdify)、文件查找权限(FileScan)、存取控制权限(AccessControl)。
本系统实现了用户管理,分角色、权限读取和上传相关信息,避免不良人员不登录系统而随意获取或上传数据。
2.3加密机制
数据加密目前仍是计算机系统对信息进行保护的一种最可靠的办法。它利用密码技术对信息进行加密,實现信息隐蔽,从而起到保护信息的安全的作用。本系统的用户账号和密码都是采用加密方式传输。
2.4数据备份
本系统的中间层数据库服务器容易出现单点故障,有必要采取一定的软硬件来实现数据的冗余备份。本系统采用双机热备模式,当有一台数据库服务器出现问题时,可以及时切换到另一台服务器,保证数据的安全性和准确性。双机热备模式即通常所说的active/standby 方式,active服务器处于工作状态;而standby 服务器处于监控准备状态,服务器数据包括数据库数据同时往两台或多台服务器写入(通常各服务器采用RAID磁盘阵列卡),保证数据的及时同步。当active服务器出现故障的时候,通过软件诊测或手工方式将standby机器激活,保证应用在短时间内完全恢复正常使用。这是目前采用较多的一种模式,但由于另外一台服务器长期处于后备的状态,从计算资源方面考量,就存在一定的浪费。
客户端数据存储在手机中,无特别的备份机制,只有在手机丢失的极端情况下会造成现场工作记录丢失,总体都能正常运行。
2.5数据一致性
本系统中间层数据库数据的读写不影响数据中心的数据安全,接收的航标信息、任务通知为只读模式,而任务填写、器材流转上报只有通过系统管理员审核才会写入中心数据库。用户的操作记录都会保存,便于日后查找相关信息。如图1所示,本系统并不影响原有业务系统的正常运行。
2.6 Android的APP运行保护
Android设置了应用签名、权限审核和沙盒运行等安全机制。从Android4.3以来,引入了基于MAC的SELinux安全机制,称为SEAndroid,用来强化操作系统对应用的访问控制,起到类似沙箱的执行隔离效果。Android的APP运行保护是Android安全的一个重要组成部分,文献[2]论述的Aurasium系统是一种Android APP策略实现的实际解决方案之一。它自动重新封装APP,并增加用户级沙箱和策略实现代码,拦截APP与操作系统之间的所有交互,实现对应用程序恶意行为的监控,如秘密发送短信给高收费账户、提取用户敏感信息、访问恶意IP 地址、实施提权攻击等。一个APP与操作系统和其他APP的交互都是可见的,另一个显著特点是无需修改Android操作系统且无需root手机就可以增强安全性与用户的隐私保护,并且具有良好的性能。
3 总结和展望
系统的可靠运行离不开安全机制的保障,通过权限控制、加密、备份等措施提高了系统的安全等级,保证了数据安全和服务质量,有力地推动了航标管理的信息化进程,具有较高的实用价值。下一阶段,将重点开展手机端、服务器端的安全漏洞风险预控,并从物理因素、人为因素以及技术层面等进一步完善该系统的信息安全机制。
参考文献:
[1] 张玉清,王凯等.Android安全综述[J].计算机研究与发展,2014,51(7):1385-1396.
[2] 卿斯汉. Android安全研究进展[J]. 软件学报, 2016,27(1):45-71.