云数据库HBase企业级安全解析

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云解析 DNS,旗舰版 1个月
云解析DNS,个人版 1个月
简介: 在2018年1月25日的数据库直播中,Apsara DB-HBase产品技术团队的天斯分享了“云数据库HBase企业级安全解析”的重要课题,通过与开源HBase相比,拥有由Intel和Alibaba合作开发的HAS系统的云HBase系统无论在安全性还是在运维成本上亦或是友好性上都有了较大的提高。

摘要:在2018年1月25日的数据库直播中,Apsara DB-HBase产品技术团队的天斯分享了“云数据库HBase企业级安全解析”的重要课题,通过与开源HBase相比,拥有由Intel和Alibaba合作开发的HAS系统的云HBase系统无论在安全性还是在运维成本上亦或是友好性上都有了较大的提高。
直播视频:https://yq.aliyun.com/video/play/1333
PDF下载:https://yq.aliyun.com/download/2459
以下为精彩视频内容整理:
开源HBase安全解绍

1

开源HBase的安全功能主要包含3个部分:
1.Access Controller coprocessor实现的ACL权限控制;
2.RPC层的安全认证,主要实现有kerberos认证;
3.HBase的WebUI支持https访问。

开源HBase ACL权限控制介绍
HBsae ACL是基于coprocessor实现的一套权限控制机制,可以有效控制用户对HBase的数据访问权限,最小维度控制到列级。支持按用户、用户组来进行权限分配。HBsae ACL的作用范围大小:global > namespace > table > famliy > quelifier。而认证通过优先级顺序:global > namespace > table > family > quelifier。看以看出用户权限是由大到小进行认证,因此在规定用户权限时要注意用户的受限的权限上层的大权限有无被限制。此外可以按单个用户user分配进行权限管理,也可以按 用户group进行权限管理,认证顺序user>group。

开源HBase ACL使用案例

2

在对某公司HBase数据库管理小组各成员进行权限分配后,可以实现各相关人员的权限但是并不能保证访问权限的安全,假若有来自外界的冒充人员,在获取相应API后,在不开启身份认证时系统会误认为其是小组内的成员,这样就存在了安全风险。此时需要系统开启身份认证来拒绝冒充人员的访问,从而达到安全要求。

开源HBase 身份认证

3

身份认证(Authentication)是用于识别用户身份的过程,只有通过身份认证的用户才有可能访问某些服务。与身份认证不同的是,ACL授权仅仅控制的是指定的用户访问某些制定服务,但并不进行相应的身份识别。因此,只有身份认证(Authentication)和授权(Authorization)一同使用才能达到更更好的安全作用。

HBase目前支持的身份认证方式是kerberos认证,在RPC级实现的认证功能,并且kerberos也是hadoop内置的唯一认证方式。HBase/HDFS/Zookeeper一般同时开启kerberos认证功能使用。

当前开源HBase的安全常用搭建方案主要有3方面:
1.HBase启用kerberos认证,启用https WebUI 访问,启用ACL权限授权控制,开启日志审计,流量限制;
2.HDFS启用kerberos认证,启用权限控制,启用数据加密;
3.zookeeper启用kerberos认证,启用zk的ACL权限控制。

kerberos介绍

Kerberos是一种网络认证协议,目前Kerberos协议有很多实现版本,其本质使用对称加密的技术实现网络中的身份认证。通常使用第三方服务的方式提供身份认证,即独立于相关的服务组件。目前很多大数据服务组件都默认集成了Kerberos,均可以开启Kerberos身份启动服务。

4

当一个用户需要访问某个被Kerberos保护的服务时,Kerberos认证过程可以分为两个阶段:
1.Kerberos服务端程序(Authentication Server,AS)对用户的身份认证;
2.服务对用户的身份认证。

目前开源HBase在开启相应身份认证后,虽然安全性得到了有效提高,但是其存在成本方面投入巨大,访问集群准备 步骤多且繁锁,使用并不友好,配置复杂繁琐,需要将账户与系统进行绑定等缺点。

云数据库HBase安全介绍

5

云数据库HBase在安全的方面主要支持功能有:网络层安全隔离、身份认证、权限控制,日志审计、流量控制,数据加密。公网用户、经典网用户若想用户VPC需要先加入白名单,否则是无法进行访问的。

6

云数据库HBase的网络安全隔离方面,用户可以设置防火墙白名单、安全组端口限制,选择HBase安装在VPC专有网络上;在身份认证上,采用Intel和Alibaba合作开发的HAS服务做身份认证,使用更友好;在权限控制上兼容HBase Access Controller coprocessor,支持细粒度权限控制,用户账户不依赖本地linux系统用户,提高了使用的效率;在审计上可以记录用户对资源访问操作,监控/跟踪资源访问的安全风险。因此,与开源HBase相比云数据库HBase在安全性、成本、用户友好方面都有较大的提高。

云HBase安全模块还提供了:
1)支持多种认证方式实现,如账户密码、RAM、LDAP等;
2)扩展backend元数据高可用服务;
3)简化client配置;
4)快捷方便的命令行行管理工具;
5)可以向客服提供与现存账户认证体系对接的能力。

云HBase安全原理

1.什么是HAS?
HAS (Hadoop Authentication Service),由致力于解决开源大数据服务和生态系统的认证支持。目前开源大数据(Hadoop/Spark)在安全认证上只内置支持了Kerberos方式,HAS提出了一种新的认证方式(Kerberos-based token authentication),通过与现有的认证和授权体系进行对接,使得在Hadoop/Spark在上面支持Kerberos以外的认证方式变成可能,并对最终用户简化和隐藏Kerberos的复杂性。

7

2.HAS系统架构
HAS基于Apache Kerby 基础上,以较少的开发 成本实现的全新的针对开源⼤大数据认证的方案。Apache Kerby为HAS主要:提供了了全面的kerberos 客户端lib和工具;提供了Kerby KDC:高效、高可用服务;强大的ASN-1支持;TokenPreauth 全新的token认证机制。

8

HAS协议流程主要是对Kerberos进行扩展,其协议基础是TokenPreauth机制,该机制主要是在Apache Kerby中实现。该机制允许用户使用第三⽅方颁发的token来代替,并由password向KDC进行身份验证,目前已经被广泛的使用在互联网、云和移动互联网中,使得Kerberos系统能够和其他认证方案相结合,并推动了Kerberos在云和大数据平台上的发展。

云HBase安全应用场景

安全需求无处不在,例如,企业为了防止员工恶意报复,防止外部用户访问盗窃数据,甚至删除所有数据等。可以说只要是生产的环境,就有安全的需求,只是安全要求的防护级别有所不不同。例如对于公有云常见的用户,一般HBase数据库就是内网DB,只供自己访问使用,没有第三方人员公用,加上存储的数据可能都是用户日志数据,那么这个客户可能只需要外部网络层隔离就可以了。如果某公司HBase数据库与某业务第三方服务商供存储,可能就需要更更进一步的身份、权限、审计等安全需求了。

云HBase与开源HBase相比,实现了运维成本和使用成本的下降,简化了配置,并且不依赖系统账户来实现公网用户、经典网用户的访问,最为重要的的是在安全性上有了更大的提高。

本文由云栖志愿小组林一木整理,百见编辑。

相关实践学习
云数据库HBase版使用教程
  相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情: https://cn.aliyun.com/product/hbase   ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
25天前
|
分布式计算 Java Hadoop
杨校老师课堂之分布式数据库HBase的部署和基本操作
杨校老师课堂之分布式数据库HBase的部署和基本操作
26 0
|
1月前
|
Prometheus 监控 关系型数据库
数据库同步革命:MySQL GTID模式下主从配置的全面解析
数据库同步革命:MySQL GTID模式下主从配置的全面解析
122 0
|
24天前
|
Java 关系型数据库 数据库连接
【MyBatis】初步解析MyBatis:实现数据库交互与关系映射的全面指南
【MyBatis】初步解析MyBatis:实现数据库交互与关系映射的全面指南
23 1
|
1月前
|
SQL NoSQL 关系型数据库
数据库技术深度解析与未来趋势展望
一、引言 数据库技术是信息时代的基石,它支撑着无数应用的正常运行,并为企业和组织提供了强大的数据管理能力
|
1月前
|
存储 SQL NoSQL
数据库技术深度解析:从基础到前沿应用
一、引言 在当今信息化社会,数据已成为企业运营和决策的核心
|
1月前
|
存储 SQL 数据管理
数据库技术深度解析:原理、应用与未来展望
一、引言 数据库技术作为现代信息技术的基石,承载着数据存储、管理、检索和分析的重任
|
1月前
|
存储 Cloud Native NoSQL
深度解析数据库技术:核心原理、应用实践及未来展望
一、引言 在信息化高速发展的今天,数据库技术作为数据管理的基石,承载着企业运营、决策支持、大数据分析等核心功能
|
1月前
|
存储 大数据 分布式数据库
使用Apache HBase进行大数据存储:技术解析与实践
【6月更文挑战第7天】Apache HBase,一个基于HDFS的列式存储NoSQL数据库,提供高可靠、高性能的大数据存储。其特点是列式存储、可扩展至PB级数据、低延迟读写及多版本控制。适用场景包括大规模数据存储、实时分析、日志存储和推荐系统。实践包括集群环境搭建、数据模型设计、导入、查询及性能优化。HBase在大数据存储领域扮演关键角色,未来有望在更多领域发挥作用。
|
17天前
|
网络协议 安全 分布式数据库
技术分享:分布式数据库DNS服务器的架构思路
技术分享:分布式数据库DNS服务器的架构思路
19 0
|
1月前
|
JavaScript 数据库
关系数据库:关系数据结构基础与概念解析
关系数据库:关系数据结构基础与概念解析
21 1