多租户环境中保护客户数据的方法

文档序号:7550176阅读:233来源:国知局
专利名称:多租户环境中保护客户数据的方法
技术领域
本发明涉及一种多租户环境中保护客户数据的方法。
背景技术
近年来兴起的云计算模式已经成为工业界和学术界关注的热点。对于存储资源,云计算把资源进行集中化管理,一个或更多的客户可以共享存储系统硬件和软件。这种共享硬件和软件的途径,能以远低于用户独立购买软硬件的成倍,提供存储服务。多租户就是说多个租户共用一个实例,租户的数据既有隔离又有共享,从而解决数据存储的问题。从架构层面来分析,SaaS (Software as a Service,和软件即服务)区别于传统技术的重要差别就是Mult1-Tenant t旲式。传统的多租户架构(如图3所示)中,每个租户使用不同的虚拟映像或者应用程序,访问通过物理或者逻辑方式隔离的数据库,数据在传输的过程中,通过HTTPS的方式进行加密。传统的多租户架构中,多租户在通过APP (Application,应用程序)访问的流程如图4所示。传统的多租户架构中,多租户在数据存储上存在以下三种主要的方案。I)独立数据库。这是第一种方案,即一个租户一个数据库,这种方案的用户数据隔离级别最高,安全性最好,但成本也高。其优点是:为不同的租户提供独立的数据库,有助于简化数据模型的扩展设计,满足不同租户的独特需求;如果出现故障,恢复数据比较简单。其缺点是:增大了数据库的安装数量,随之带来维护成本和购置成本的增加。这种方案与传统的一个客户、一套数据、一套部署类似,差别只在于软件统一部署在运营商那里。如果面对的是银行、医院等需要非常高数据隔离级别的租户,可以选择这种模式,提高租用的定价。如果定价较低,产品走低价路线,这种方案一般对运营商来说是无法承受的。2)共享数据库,隔离数据架构。这是第二种方案,即多个或所有租户共享Database(数据库),但一个Tenant —个Schema。其优点是:为安全性要求较高的租户提供了一定程度的逻辑数据隔离,并不是完全隔离;每个数据库可以支持更多的租户数量。其缺点是:如果出现故障,数据恢复比较困难,因为恢复数据库将牵扯到其他租户的数据;如果需要跨租户统计数据,存在一定困难。3)共享数据库,共享数据架构。这是第三种方案,即租户共享同一个Database、同一个Schema,但在表中通过TenantID区分租户的数据。这是共享程度最高、隔离级别最低的模式。其优点是:维护和购置成本最低,允许每个数据库支持的租户数量最多。其缺点是:隔离级别最低,安全性最低,需要在设计开发时加大对安全的开发量;数据备份和恢复最困难,需要逐表逐条备份和还原。现有技术的方案在安全方面主要解决了传输安全的问题,对于DB数据存储则以适当的隔离来保证数据的完整性和私密性,但整个系统仍然存在如下缺点:1)为了 APP能够识别并处理,数据在DB中以明文存储;2)多APP在同一台服务器运行,存在被恶意渗透、窃取数据的可能;3)用户名/密码被破解的情况下,不但可以查看DB中的数据,也可以修改DB中的数据。
传统的多租户模式下,用户数据保存在数据中心DB中,为了方便APP处理,其保存的数据都是不加密的,同时多APP在同一台服务器运行,存在被恶意渗透、窃取数据的可能;用户名/密码被破解的情况下,DB中的数据不但会被越权使用,也可能被越权修改。

发明内容
本发明是为避免上述已有技术中存在的不足之处,提供了一种多租户环境中保护客户数据的方法,以提高多租户环境下客户数据的安全性。本发明提供了一种多租户环境中保护客户数据的方法。多租户环境中保护客户数据的方法,其采用云端加密存储+终端解密计算的方式;数据存储在服务器上,但是以加密的方式存储;密钥保存在用户手中;数据的处理在用户终端,加解密也不在服务器上进行以防止渗透攻击。用户手中的密钥以USB的方式保存,不可导出;也可以采用让用户手动输入密码的方法,来对密码进行保护。本发明的多租户环境中保护客户数据的方法的特点也在于:租户在通过APP访问的过程包括以下几个步骤:a.用户向APP提交访问请求;b.APP对用户进行认证,用户通过认证之后,APP根据用户信息定向DB数据库;c.APP不在服务端处理数据,服务器端仅处理数据无关的部分且该处理结果回传用户;APP把用于处理数据的程序发送给用户客户端,需要处理的用户数据也以加密的方式发给用户客户端;d.在用户的客户端,用户将接收到的用户数据进行解密,然后调用从服务器端得到的程序,对数据进行处理;e.用户的客户端将对数据的处理结果与服务器端发送的数据无关部分处理结果,共同呈现给用户;f.在用户的客户端,加密密码以usb的形式保存;APP在解密过程中,优先获取USB的密码;g.若用户对数据如果有修改,则在客户端进行加密,加密后数据发送服务器端,并保存在用户DB中。在所述步骤b中,若用户为新用户,则申请开辟一个新的DB数据库。与已有技术相比,本发明有益效果体现在:本发明的多租户环境中保护客户数据的方法,采用多租户环境下服务器端保存、客户端端加解密的方式,使用不对称算法同时满足安全和公开需求,提高了多租户环境下客户数据的安全性,也可满足部分数据保密,另一部分数据公开的使用需求。本发明的多租户环境中保护客户数据的方法,具有可提高了多租户环境下客户数据的安全性,也可满足部分数据保密同时另一部分数据公开的使用需求等优点。


图1为本发明的多租户环境中保护客户数据的方法的多租户数据示意图。图2为本发明的多租户环境中保护客户数据的方法的租户在通过APP访问流程图。
图3为现有技术中的多租户应用模型。图4为图3中的多租户应用模型的租户在通过APP访问流程图。以下通过具体实施方式
,并结合附图对本发明作进一步说明。
具体实施例方式参见图1,多租户环境中保护客户数据的方法,采用云端加密存储+终端解密计算的方式;数据存储在服务器上,但是以加密的方式存储;密钥保存在用户手中;数据的处理在用户终端,加解密也不在服务器上进行以防止渗透攻击。用户手中的密钥以USB的方式保存,不可导出;也可以采用让用户手动输入密码的方法,来对密码进行保护。如图2所示,租户在通过APP访问的过程包括以下几个步骤:a.用户向APP提交访问请求;b.APP对用户进行认证,用户通过认证之后,APP根据用户信息定向DB数据库;若用户为新用户,则申请开辟一个新的DB数据库;c.APP不在服务端处理数据,服务器端仅处理数据无关的部分(如框架部分)且该处理结果回传用户;APP把用于处理数据的程序发送给用户客户端,需要处理的用户数据(该数据是加密的)也以加密的方式发给用户客户端;发送通道采用传统的加密方式,例如SSL方式;d.在用户的客户端,用户将接收到的用户数据进行解密,然后调用从服务器端得到的程序,对数据进行处理;e.用户的客户端将对数据的处理结果与服务器端发送的数据无关部分(如框架部分)处理结果,共同呈现给用户;f.为了更好的保证安全性以及云客户端的普适性,在用户的客户端,加密密码建议以usb的形式保存;APP在解密过程中,优先获取USB的密码;也可以采用让用户手动输入密码的方法。密码的保存方法是本系统的一个组成部分,但不是本系统必选部分。g.若用户对数据如果有修改(包括增加、删除等修改操作),则在客户端进行加密,加密后数据发送服务器端,并保存在用户DB中。部分用户的数据需要一定程度公开,以网盘为例,用户的数据保存在服务器端,不允许其他人修改,但允许其他人察看,或者部分数据允许其他人察看,则需要在使用非对称加密算法加密。在用户第一次注册时,用户需要生成一对公开密钥(publickey)和私有密钥(privatekey),向服务器端提供公开密钥,并由服务器端保存,而用户保存私有密钥。用户可以随时提起对密钥对的修改。由于私钥隐密性高,推荐采用usb保存,并设置为不可导出。用户对需要公开的数据修改时,处理过程略有变化,解密时使用公开密钥,加密时使用私有密钥。对于不需要公开的数据,则采用公开密钥加密的方式,解密时使用私有秘钥。被授权察看的用户,其察看数据的流程如下:1)被授权察看的用户向APP提交访问请求;2)通过认证以及权限检查之后,APP根据请求访问的对象,获取DB数据库保存的数据;3) APP获取数据拥有者保存在服务器端的公开密钥,并使用公开密钥对数据进行解密。解密后的数据通过服务器端发送给被授权察看的用户客户端呈现给用户。
权利要求
1.多租户环境中保护客户数据的方法,其特征是,采用云端加密存储+终端解密计算的方式;数据存储在服务器上,但是以加密的方式存储;密钥保存在用户手中;数据的处理在用户终端,加解密也不在服务器上进行以防止渗透攻击。
2.根据权利要求1所述的多租户环境中保护客户数据的方法,其特征是,租户在通过APP访问的过程包括以下几个步骤: a.用户向应用程序APP提交访问请求; b.应用程序APP对用户进行认证,用户通过认证之后,应用程序APP根据用户信息定向DB数据库; c.应用程序APP不在服务端处理数据,服务器端仅处理数据无关的部分且该处理结果回传用户;应用程序APP把用于处理数据的程序发送给用户客户端,需要处理的用户数据也以加密的方式发给用户客户端。
d.在用户的客户端,用户将接收到的用户数据进行解密,然后调用从服务器端得到的程序,对数据进行处理; e.用户的客户端将对数据的处理结果与服务器端发送的数据无关部分处理结果,共同呈现给用户; f.在用户的客户端,加密密码以USB的形式保存;应用程序APP在解密过程中,优先获取USB的密码; g.若用户对数据如果有修改,则在客户端进行加密,加密后数据发送服务器端,并保存在用户DB数据库中。
3.根据权利要求1所述的多租户环境中保护客户数据的方法,其特征是,在所述步骤b中,若用户为新用户,则申请开辟一个新的DB数据库。
全文摘要
本发明公开了一种多租户环境中保护客户数据的方法,采用云端加密存储+终端解密计算的方式;数据存储在服务器上,但是以加密的方式存储;密钥保存在用户手中;数据的处理在用户终端,加解密也不在服务器上进行以防止渗透攻击。本发明的多租户环境中保护客户数据的方法,具有可提高了多租户环境下客户数据的安全性,也可满足部分数据保密同时另一部分数据公开的使用需求等优点。
文档编号H04L29/06GK103118011SQ201310011059
公开日2013年5月22日 申请日期2013年1月12日 优先权日2013年1月12日
发明者邱大坤, 李颖和, 唐舜 申请人:合肥华云通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1