NoSQL数据库安全性

来源:互联网 发布:淘宝订单体检不清洗 编辑:程序博客网 时间:2024/05/22 15:57

非关系型数据存储的安全

传统的关系型数据库扩展性限制,无法应对超大规模和高并发的非结构化数据

安全问题如下:

1.        薄弱的验证机制

        易遭受暴力破解,存储设备可能直接访问(如侵入在线支付系统,通过APP或下载病毒访问数据),从而导致数据呗篡改或窃取。

        支持NoSQL访问的RESTful的协议容易遭受XSS,跨站请求伪造等。

2.        低效的鉴权机制

        各种nosql大都没有基与角色的访问控制,且大多数应用都依赖上层业务部署机制,而没有数据库底层的鉴权机制。

        缺少日志分析,使得未授权的访问更加难以被发现

3.        NoSQL易受各类注入攻击

        JSON注入、array注入、view注入、REST注入、SQL注入、schema注入等。

        针对注入的解决方案还不成熟。

4.        事物处理的一致性较弱

        根据CAP(Consistency、Availability、Partition-tolerance)理论,一个分部署系统无法同时满足一致性,可用性和分区容错性,而且一致性和可用性是一对矛盾,所以nosql可能无法在任何时刻都提供一致的数据查询结果。



非关系型数据的安全测评

        NoSQL数据的安全性分为:保密性、完整性、可用性、一致性。

        CAP理论:
        1.Consistency(一致性), 数据一致更新,所有数据变动都是同步的;
        2.Availability(可用性), 好的响应性能;
        3.Partition tolerance(分区容错性) 可靠性;
        定理:任何分布式系统只可同时满足二点,没法三者兼顾。

a)        SimpleDB、Dynamo等数据库选择了可用性和分区容错性

b)        Hbase、Bigtable等数据库选择了一致性和分区容错性

 

NoSQL数据库安全性

编号

安全类别

安全内容

1

保密性

身份认证和鉴权

2

访问控制

3

数据加密存储和传输

4

完整性

数据本身的完整性及其验证

5

数据传输的准确性

6

可用性

数据库接口的可用性

7

数据库内部节点的可用性

8

数据库容灾与恢复

9

一致性

事物支持

10

强一致性

数据存储一致性

11

单键访问一致性

12

单节点并发访问的一致性

13

分布式并发访问的一致性

14

最终一致性

保证数据最终一致

15

数据不一致尽可能少

 

        为了上述安全性要求,NoSQL数据库引入多种机制来增强安全性:数据加密、身份验证和授权、日志机制等。

        业界多采用部署中间件层封装底层NoSQL,或者将NoSQL集成到一个框架中来加强NoSQL的安全。这样可以在中间层或框架中集成各种安全机制来保护NoSQL的安全,同时保留NoSQL的性能。

    一个典型的例子:Hadoop封装的HBase。
0 0
原创粉丝点击