信息安全.md 6.6 KB

信息安全

前言

信息安全主要包括以下五方面的内容,即需保证信息的保密性真实性完整性禁止未授权拷贝所寄生系统的安全性

站在企业角度分看信息安全,将其分成三大类:信息层面的信息安全用户层面的信息安全架构层面的信息安全

分类

信息层面的信息安全

此层面主要是包括基础性、传统性的安全领域,比如通信安全、密码加固等。

用户层面的信息安全

也就是说用户把信息存储到了你的服务器上,你要怎么样保证用户的隐私不受侵犯。

架构层面的信息安全

此层面的架构包含服务器架构、应用层架构,简而言之,就是如何保证服务器安全运行、数据不丢失。

行为规范

为了打造一个信息安全的环境体系,从上面提到的三个信息层面分析并建立解决方案,制定以下行为规范。

应用层功能实现层面的信息安全

此安全包括安全的需求分析与设计功能编码安稳实现两大内容

安全的需求分析与设计

在产品开发实现之前,产品的设计是否合理安全更为重要。产品在研发需求的同时,在注重功能是否可以实现、功能实现的业务流程时,往往更要考虑业务在某一个业务流程是不是会造成一定的问题,特别是涉及到企业的资金,影响会非常严重,比如利用脚本、机器批量刷新用户优惠等。

开发环节信息安全意识

  • 开发过程中,要充分考虑用户数据安全和数据隔离,关键信息不允许未经鉴权直接获取;

  • 账号密码等敏感信息,不能明文传输和存储;

  • 日志不能记录敏感信息;

  • 如果必须要到正式环境测试数据,注意不能随意使用线上用户的信息,尽量使用自己的信息。如果必须使用他人信息,需要向部门负责人申请。并且在测试过程中,注意不要泄露用户信息,不要随意发生业务(如挂号、缴费等),以免给用户造成信息泄露的困扰而引起用户投诉。

用户层面的信息安全

管理端数据权限处理

医院管理后台、企业管理后台等管理后台管理端,登录用户在拥有某项菜单查看权限时,即有权限查看该项菜单的所有信息,比如用户的信息、用户的订单信息。

为防止用户相关的隐私数据泄露,需要把握数据分析和用户隐私之间的平衡,管理后台的权限粒度划分要细化,精准分配必要权限。

正式环境的管理员账号分配和账号权限设置,都由运营负责人负责管理。

信息传输层面的信息安全

  • 使用https取代http。

目前,全站服务实现了从http转向https,因为HTTP无论对于网络传输的内容,还是对于协议本身信息都没有做过任何的加密,从而使得用户的任何信息在网络中都可能被捕获,甚至会发生数据注入等行为,也就是我们经常说的流量劫持。在生产环境上,我们已经全部使用了https协议。

  • 接口数据加密签名

对外的通讯接口采用加密的方式传输,比如合作方获取订单信息,我们将其回调数据信息进行签名加密后再通讯传输,确保信息不被显性截取。

架构层面的信息安全

  • 服务器端口开放策略管理

目前,阿里云服务主机已配置防火墙和进出站规则来管理端口开放。必要的端口才开放对外的端口,不需要公网访问的端口都对外关闭。

  • 服务器服务配置安全策略

对于 Redis 等服务,为了数据、程序安全稳健运行,将默认的端口进行更换,同时将加上密码的服务添加复杂的密码。

默认的服务配置,对于专业的非法分子是很容易进行扫描端口、撞库等方式渗透服务器,防止非法人员进行数据盗取、非法进入服务器,我们务必需要配置此项安全策略。

  • 服务器管理策略

采用一台服务器作为堡垒机,生产服务器仅对堡垒机白名单。登录生产服务器必须经过堡垒机作跳板。

  • 部署方式采用“容器”化

所有实例均跑在“容器”内,某种程度上算是一层隔离,同时可限制IO权限,也方便后面提到的CI。

  • 服务器用户权限及管理

此项工作属于运维的重点工作,关乎生产环境的文件、数据的权限,分配哪些用户、用户权限对应哪些可读、可写、可执行的操作。对于开发者而言,尽可能只提供对应的只读权限。

  • CI/持续集成 | CD/持续部署,敏捷开发

持续集成(Continuous integration)是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

持续部署(continuous deployment)是通过自动化的构建、测试和部署循环来快速交付高质量的产品。某种程度上代表了一个开发团队工程化的程度,毕竟快速运转的互联网公司人力成本会高于机器,投资机器优化开发流程化相对也提高了人的效率,让 engineering productivity 最大化。

敏捷开发,减少软件开发的成本与时间,减少风险。

  • 数据容灾备份

数据可谓一个企业的血液,数据信息万万不可丢失。但是服务器灾害具有随机性、不确定性,即使像全球最大云计算服商亚马逊AWS多次机房故障导致的云服务中断再次警示合作商,即使最优秀的云计算平台也难以避免地发生突发故障。因此我们做好数据容灾是极其重要的工作。

目前采用的是 RDS 定时备份(频率:1 天 1 次) + DTS 数据同步(秒级同步)方案。

目前数据同步流程架构图:

数据同步架构图

其他存在的安全性问题

以下的安全性问题是在互联网环境也常见的,只要是在互联网提供服务,都可能会遇到,只能做好防御。

  • DDOS

接口出现异常性的高发请求、恶意流量攻击等。

解决方法:目前已接入云防火墙,可以识别机器流量、拉黑非法攻击 IP 等。

  • 挖矿程序

遭遇挖矿程序恶意运行等,引起服务器故障或数据泄露。

解决方法:定期扫描服务器,定期打安全补丁。