华为云GaussDB(for Redis)揭秘第29期:聊聊账号安全那些事

举报
GeminiDB-Redis博客 发表于 2023/07/17 20:32:54 2023/07/17
【摘要】 GaussDB(for Redis)提供了DB级权限隔离的账号管理、命令禁用和重命名、安全IP/网段开启免密、实例回收站等企业级特性,为用户提供了稳定、可靠、便捷的使用体验,全力为用户的数据安全保驾护航。

       近日,一些用户反馈,使用的开源Redis中新增了几个未知来源的Key。通过分析发现,用户使用的开源Redis没有设置密码,很可能是遭到了Redis扩散病毒的攻击,表面上只是新增了几个未知的key,实际上可能面临数据库信息丢失和记录篡改的风险。

       作为一个重视技术的团队,我们始终将用户信息安全和使用体验放在第一位。对于这次用户使用开源Redis遇到的问题,我们盘点了GaussDB(for Redis)精心打造的数据安全保护特性:

       1. 账号管理、数据库权限隔离;

       2. 高危命令禁用、重命名;

       3. 安全IP/网段开启免密登录;

       4. 实例回收站。

       基于这些企业级安全特性,GaussDB(for Redis)为用户提供了稳定、可靠、便捷的使用体验,全力为用户的数据安全保驾护航。

特性一:账号管理+权限隔离,确保数据强一致

       单个GaussDB(for Redis)实例提供多达6w+独立的数据库供用户使用,用户可以根据业务和存储场景使用不同的DB存储,从而实现数据分离。多DB的隔离储存功能为业务带来了极大的方便,但是错误的使用也可能会导致问题。

       设想以下场景:

       某电商平台提供多种抢购功能,每个活动每个用户仅能参加一次。为了业务方便,直接使用一个新的DB进行新上线抢购业务的数据存储。由于使用同一个账号登录,粗心的同事复用了之前的代码,忘记或错误配置新业务使用的数据库ID信息,将数据写入其他抢购场景中,干扰其他抢购场景的正常使用。

       这里要隆重介绍GaussDB(for Redis)的账号管理功能,数据库实例的每个账号、数据库的权限彼此隔离,从根本上防止这种冲突场景的出现。       数据库管理控制台中,可以创建对特定数据库、具有读写/只读权限的账号:

     回到前面的场景,我们可以创建如下账号:

  • dbuser_1仅对DB1拥有读写权限

  • dbuser_2对DB2-DB5拥有读写权限

  • dbuser_3对所有数据库均有只读权限

       基于上述账号管理配置,通过GaussDB(for Redis)的账号管理+权限隔离功能的双重加持,即使dbuser_1使用方误操作DB2的数据,GaussDB(for Redis)将对错误操作进行拦截,从而实现账户和数据的隔离管理,保障用户的数据安全。

       探索账户管理的额外信息和功能,请访问华为云官网《账号管理》页面:https://support.huaweicloud.com/redisug-nosql/nosql_03_0237.html

特性二:高危命令重命名,命令安全又安心

       每个使用者在操作数据库时,都会战战兢兢,尤其害怕一个命令直接删库,或者执行时间过长,对正常业务执行造成影响。之前曾遇到客户在业务高峰期通过keys命令统计流量信息,此类高危命令执行时间过长,运维操作反而阻塞了正常业务的进行。

       那么,怎么从根本上规避这种问题呢?

       GaussDB(for Redis)提供命名重命名功能,可以将高危命令禁用或进行相应重命名。如,我们可以将高危flushall、flushdb以及keys命令禁用,修改hgetall、hkeys、hvals、smembers命令的名称,防止命令被错误调用执行,给业务和数据安全带来影响。

       命令禁用和重命名的具体使用方式,请访问华为云官网《命令重命名》页面:https://support.huaweicloud.com/redisug-nosql/nosql_10_0053.html

特性三:安全IP输密码太麻烦?免密登录帮忙解决

       通过完善的账户管理、精细粒度的权限隔离,GaussDB(for Redis)已经实现万无一失了。可能有人会产生一个疑问,如果我们的服务器可以保证足够安全,是否可以省略掉输入密码这个步骤呢?

       当然可以。GaussDB(for Redis)可以对用户信任的指定IP或网段设置免密访问功能。例如,我们可以设置IP为10.0.0.216以及网段为192.168.1.0/24的免密访问功能,在机器上对数据库实例的访问就不需要密码进行验证。       当然,互联网上对IP和网段的信任是相对的,因此GaussDB(for Redis)禁止对全局网段开始免密登录功能,在合理范围内提供用户操作便捷性的同时,对用户数据安全的保障是GaussDB(for Redis)的重中之重。

       关于免密IP登录的具体说明,请访问华为云官网《开启免密访问》一节:https://support.huaweicloud.com/redisug-nosql/nosql_03_0236.html

特性四:误删实例心慌慌?实例回收站来帮忙

       和实例中误操作flushall等命令齐名、最令使用者闻风丧胆的,便是将实例误删了。虽然实例删除功能藏在隐秘的角落里,也需要用户double check,但总还是有误删除的可能在时刻敲打着用户。而且,近年来恶意删库新闻屡见不鲜,如何保障被误删或者恶意删除的数据库的信息安全呢?

       信息安全当然、也必须要保证!GaussDB(for Redis)提供实例回收站的企业级特性,在实例回收站,可以看到最近7天内至多100个已删除的数据库实例,不幸误删,可以一键重建,数据还原,丝般顺滑,和数据丢失说拜拜。

总结

       GaussDB (for Redis)通过账号管理、权限隔离、高危命令禁删/重命名、安全IP免密登录、实例回收站等企业级特性,保障客户数据库数据和信息安全,为客户的业务保驾护航。

       如果你的业务需要一款稳定可靠的KV数据库,可以试试GaussDB(for Redis)

附录

  • 本文作者:

       华为云数据库GaussDB(for Redis)团队

  • 杭州/西安/深圳简历投递:

       yuwenlong4@huawei.com

  • 更多产品信息,欢迎访问官方博客:

       bbs.huaweicloud.com/blogs/248875

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。