大数据权限管理sentry与Kerberos概述

大数据权限管理sentry与Kerberos概述

常见的解决方案分为两部分

1. 管理用户身份*即用户身份认证
2. 用户身份和权限的映射关系管理 即授权

而Hadoop中常见的开源解决方案是Kerberos(认证)+LDAP(授权),LDAP则是授权的环节,常见的解决方案有Ranger,Sentry等,Ranger与Sentry是不同的厂商开发出的所以在不同的平台需要用不同的框架,去进行授权的管理,CDH使用Sentry,Apache使用Ranger。

解决了什么问题:

1. 大数据每个组件(Hive/Hbase等)都有自己定义的权限管理,可以做到权限管理统一和简化
2. 当我们多个作业需要操作数据时,可以去做到数据的共享,因为不同的用户作业具有不同的用户权限
3. 当我们的服务与集群交互,编程和接入方式变得多样时,可以减少了权限管控的难度使权限管控更加细粒度化
4. 由于不同的作业具有不同的操作权限,可以使我们的存储、计算、查询框架之间数据的互通串联能力更强

一、CDH sentry权限管理框架简介

1.1.可以做到什么?

  1. 采用RBAC模型设计出来的框架,用户身份和权限的映射关系管理,也就是授权
  2. 防止用户误操作,因为不同的用户只能根据他的权限去操作数据
  3. 系统管理员可以在任何时候任何情况下去干扰一个作业或者数据
  4. 在不同的场景下每个用户可以扮演不同的角色,多个框架
  5. 当团队大了之后可以更加明确团队成员责任

1.2.解决了什么问题?

  1. 数据的敏感程度不同,对安全等级的区分和管控粒度的要求
  2. 各个组件自身架构在权限管控这块的实现可能千差万别,如何统一和简化的问题
  3. 分布式的集群场景,海量的数据对象,对权限管控流程的性能,效率,可维护性的要求
  4. 各种服务和集群多样的交互,编程和接入方式,增加了权限管控的范围和难度
  5. 数据的流动性本质,对权限的动态变更能力的需求

1.3.存在的问题?

1.	用户认证问题,避免用户自己为自己赋权限

1.3.1 解决方法

  1. Kerberos框架去实现用户认证

二、CDH Kerberos身份验证架简介

2.1.干什么的?

  1. Kerberos是Hadoop生态系中应用最广的集中式统一用户认证管理框架。
  2. 提供一个集中式的身份验证服务器,所有用户认证都是在Kerberos服务框架中统一管理

2.2.解决了什么问题?

  1. 管理用户身份,也就是用户身份认证
  2. 避免恶意伪装的钓鱼服务骗取用户信息的可能性。

2.3 核心思想

​ Kerberos最核心的思想是基于秘钥的共识,有且只有中心服务器知道所有的用户和服务的秘钥信息,如果你信任中心服务器,那么你就可以信任中心服务器给出的认证结果。
​ 此外很重要的一点,从流程上来说,Kerberos不光验证的用户真实性,实际上也验证了后台服务的真实性, 所以他的身份认证是双向认证,后台服务同样是通过用户,密码的形式登记到系统中的,避免恶意伪装的钓鱼服务骗取用户信息的可能性。

2.3.存在问题?

  1. 实施起来比较繁琐,因为每个服务都需要去接入Kerberos来进行认证

版权声明:本博客为记录本人自学感悟,转载需注明出处!
https://me.csdn.net/qq_39657909

你可能感兴趣的:(大数据)