事情源自一个客户的提问。他们公司有海量的数据保存在Laxcus集群操作系统的内置数据库里。最近新闻连续报道了几起管理员删库跑路的恶性事件,让他公司老总很是担心,询问同类事件有没有可能在Laxcus集群操作系统上发生。为了这件事,我特意求证了系统架构和数据库团队,最后汇总他们的反馈,得出结果是:不会!下面我就对这个结论做些解释。
首先从最基本的说起:使用者的角色。在Laxcus集群操作系统里面,存在两个角色的使用者:注册用户和管理员。注册用户可以有任意多个,管理员只能有一个。注册用户和管理员都有自己的工作范围,其中注册用户的工作范围是:(1)处理数据 (2)运行应用软件。管理员的工作范围是:(1)管理计算机集群 (2)管理用户操作权限(不是操作数据)。 这两种角色泾渭分明,固化在系统设计里。Laxcus集群运行过程中,Laxcus安全体系会根据使用者角色,严格检查每一项操作行为,绝对禁止任何越权行为发生。造成删库跑路的SQL DELETE命令属于用户操作数据的范畴,管理员如果发出这样的命令,Laxcus安全体系将严禁它执行。所以实际结果是,仅从Laxcus安全体系监管来说,管理员即无法查看用户数据,更不具备删除数据的能力。
再说系统架构。Laxcus集群操作系统为了支持海量用户共享使用计算机集群,采用虚拟化技术分配计算机集群的物理资源。经过虚拟化处理后的虚拟集群在运行过程中是逻辑隔离的,彼此独立互不影响。不论是管理员还是注册用户,他们做为使用者,被操作系统限制在自己的虚拟集群空间中工作。这一点是Laxcus和数据库完全不同的地方,数据库没有虚拟集群的概念。所以从系统架构上来说,管理员不可能跨越虚拟集群操作其他用户数据。
综上分析,在Laxcus集群操作系统里,如果希望利用管理员漏洞,删除用户数据是不可能的,删库跑路现象可以完全避免!
不过,我们数据库团队研发人员也非常诚实的说了,虽然Laxcus集群操作系统禁止管理员做任何危害数据的操作,但是仍然不能避免盗用用户账号的现象存在。如果账号被盗用,并且用户操作权限又是集中保存的,那么将危及用户数据。对于这个问题,首先注册用户要保护好自己的账号,不要轻易泄漏给他人,还有要定期更改密码。数据操作权限,利用系统提供的共享机制尽可能分散开,形成相互限约机制,防止敏感的数据操作集中保存。另外,用户也可以尝试使用LAXCUS专业版,这个版本在登录中更加了更多校验再确认机制,比如绑定手机、邮箱的功能,限制黑客盗用用户账号登录LAXCUS集群的可能性。