云端数据库,什么叫云端数据库
这篇文章给大家聊聊关于云端数据库,以及什么叫云端数据库对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
什么是云端数据库
云端数据库是指被优化或部署到一个虚拟计算环境中的数据库,可以实现按需付费、按需扩展、高可用性以及存储整合等优势。根据数据库类型一般分为关系型数据库和非关系型数据库(NoSQL数据库)。云端数据库的特性有:实例创建快速、支持只读实例、读写分离、故障自动切换、数据备份、Binlog备份、SQL审计、访问白名单、监控与消息通知等。\r\n更多关于什么是云端数据库,进入:https://m.abcgonglue.com/ask/ea05391615832493.html?zd查看更多内容
想问什么是云端数据库
云端数据库是指被优化或部署到一个虚拟计算环境中的数据库,可以实现按需付费、按需扩展、高可用性以及存储整合等优势。根据数据库类型一般分为关系型数据库和非关系型数据库(NoSQL数据库)。云端数据库的特性有:实例创建快速、支持只读实例、读写分离、故障自动切换、数据备份、Binlog备份、SQL审计、访问白名单、监控与消息通知等。
更多关于什么是云端数据库,进入:https://m.abcgonglue.com/ask/ea05391615832493.html?zd查看更多内容
什么是云端密钥共享
如果你不信任他们,你就把数据加密。”这是数据安全专家常常挂在嘴边的一句话。部署在企业内部的数据中心,由于单位组织完全控制全部的软/硬件设备,所以数据要不要加密由企业规章制度界定。
但是在云端,多个互不认识的租户共用计算资源,每个租户需要加密的数据自然就更多,需要加密的数据越多,业务流程越复杂,密钥管理也就越繁重。所以,在实际的操作过程中,我们要综合考虑各个因素,制定出一套既满足安全要求又不大幅度增加加/解密和密钥管理的工作难度的方案。
加密介绍
根据企业的规章制度,某些数据被列为机密并必须要加以保护,当前存储在企业内部的机密数据开始被陆续迁入云端,所以数据保护的力度必须要加大。把机密数据存储在企业的安全边界之外,这增加了数据保护的复杂度,同时也增加了风险系数。
关于云端的数据加密,以下因素必须慎重考虑。
1)不单单在传输过程中需要加密保护,在云端存储和使用数据的过程中也依然需要加密保护。
2)存储在云端并被共享的非结构化数据文件保护方法有以下两种:
采用授权服务器进行集中加密;
加密直接被嵌入到每个文件当中(分散加密)。
当使用经第一种方法加密的文件时,首先要联系授权服务器进行解密,比如微软的 Word文字处理软件会自动联系服务器并完成身份验证和解密工作。
3)加/解密的密钥的管理期限就是数据的整个生命周期,在数据被销毁之前如果密钥丢失,则会导致数据无法解密。另外,对于密钥的保护和正当使用,要尽可能避免依赖云服务提供商。
4)保护那些经常被忽视却又包含敏感信息的文件,比如日志文件和元数据如果不加以保护,那么很可能成为数据泄露的途径。
5)云端的加密密钥应具备足够的强度(如 AES-256),且与同一单位组织内部的加密密钥一致。提倡使用开放的且经过验证的加密格式,尽可能避免使用特有的加密格式。
云端数据库加密
首先考虑数据要不要加密,因为加密数据会提高成本并使得业务处理复杂化。目前几乎所有的数据库都具备权限管理机制,如果配置得当,数据库管理系统本身就能很好地保护敏感数据。如果遇到下面 3种情况,那么我们就不得不对数据库中的记录进行加密了:不想让有权限的人(如数据库管理员)看到记录信息。
法律规定一些记录必须要加密(如交易记录中的信用卡信息)。
数据存储在数据库的一个 Schema中,但是数据的主人无法控制访问这些数据的账号(比如多人使用的共享账号,每个人都不能随意修改账号密码)。
当人们使用云端数据库,尤其是 SaaS应用(该应用需要使用数据库)时,如果数据库不能操作加密的数据,那么数据库的功能会大打折扣。当然,前提是数据库管理系统或者应用能够访问密钥。
数据加密是以提高复杂度和降低性能为代价的,下面是一些替代的方法。
1)使用数据库本身的对象安全机制
数据库中的表、视图、存储过程、函数等统称为对象,对这些对象的访问,数据库管理系统本身提供了一套权限管理机制,诸如账号、分组、角色、授权、撤权等。要严格控制那些被授权的账号,确保这些账号只分配给正确的人。2)存储安全哈希值
只存储数据的哈希值,而不直接存储数据本身。这使得你的应用程序能证明持有正确哈希值的人就是持有正确数据的人,因为数据与哈希值是一一对应关系,即 hash(data)=x,把 x存储在数据库中,而 data存储在另外一个私密的地方,从 x是无法反算出 data的。密钥管理
无论是采用对称加密算法还是采用非对称加密算法,密钥的管理都是重中之重,尤其是对于多租户模式的公共云端来说,密钥管理是一个比较繁重的任务。最简单的案例是应用在云端运行,而只在企业内部使用密钥对迁移到云端的数据进行加密——在企业的网络安全边界部署一个加密引擎,只要通过这个加密引擎,那么离开企业的数据就会自动加密,而进入企业的数据则会自动解密。
而下面这种情况会把事情搞得很复杂:如果一个使用密钥的应用又包含其他需要使用密钥解密数据的进程(如一个批处理应用可能包含很多进程),且这些进程又驻留云端,那么此时的密钥需要离开企业内部的网络安全边界而进入云端。
企业一般为每个需要加密功能的实体(用户、设备、进程等)分配单独的密钥,这样就不用共享一个密钥,从而避免带来很多隐患。
为了管理众多的实体密钥,最简便的方法是部署一个基于身份的密钥管理中心,从而使得为一个具体实体加密的任何数据只对该实体本身有效。如果同一个组的成员确实需要共享数据,那么可以给该组分配组级的密钥,同组成员共享组级密钥。正如前面所提到的那样:密钥的管理必须局限在企业内部。
如果数据存储在公共云环境中,那么在退出这个环境时,需要确保所有的数据(特别是 PII、SPI数据或受到监管的数据)已经从公共云环境中删除,其中包括其他存储介质(如备份磁带)上的数据。本地管理密钥的做法很容易实现这个目标:只要从本地密钥管理中心删除相应的密钥即可,从而保证残留在公共云的任何数据再也不能被解密。
如果云服务提供商和消费者不严格执行各自的密钥管理流程,那么数据加密就没有什么实际意义。比如云服务提供商,如果职责混乱,大家可以随意访问密钥服务器和存储了加密数据的服务器,或者 DBA能随意访问数据库中的个人密钥,那么数据加密就形同虚设。
同样,比如云服务消费者,如果存储密钥的终端设备本身就不安全(如移动设备)或者没有达到与加密系统同等安全级别的终端设备,这就像用木板做保险柜,那么这时加密数据无疑也是形同虚设。
围绕如何保护密钥本身,方案设计师通常的做法是采用密钥来加密密钥,只在内存中产生有效密钥,并且只存储加密过的密钥。这理解起来有点绕,其实就是把密钥当作普通的数据再次进行加密。
什么叫云端数据库
所谓云端数据库,从用户的角度来看,就是你的数据库不在本地,而在“云库”供应商那里。而云库供应商具体如何实现云端数据库,方法不太一定,有好多种方式。
目前通用的方式,是使用大量较为廉价的PC Server,虚拟出一台台服务器,然后将服务器分配给用户,用户就可以在此虚拟出的服务器上建自己的数据库。数据的类型可以选择SQLServer、Oracle等等。这里面涉及分布式、虚拟化、资源控制与隔离,等诸多问题。其实目前各云库供应商还都在探索中。
云库的性能,足以满足中、小企业的需求。
云库的最大优势是减少成本。这里所说的成本,包括企业自建数据库的硬件投入、与运维成本。云库的基础设施由厂商统一提供,因此厂商的规模很容易达到很高的量级。只要前期架构合理,规模化是可以大幅度减少成本的。这比各个企业自建数据库成本更低。除了基础设施带来的成本优势,云库供应商会提供一些自动化运维的工具或功能,这会降低企业的运维成本。但这一点所带来的效果,目前看还不一定。云库供应商的自动运维,可以让小企业不再雇佣专职的DBA,但绝大多数小企业,本身就没有专职的DBA。因此运维成本这块,还要看以后的发展。
云库目前最大的缺点是,安全性因素目前还不好说,这是云库的软肋。
关于云端数据库的内容到此结束,希望对大家有所帮助。