【技术实现步骤摘要】
多租户权限控制方法及装置
本专利技术涉及计算机
,特别涉及多租户权限控制方法及装置。
技术介绍
随着技术的进步,为了加快推动数据资源共享开放和开发应用,大数据的发展是必要的,因此,如何采集、存储和计算数据成为了当前热点话题。Hive(分布式文件系统)和Spark(基于内存的分布式计算框架)分别作为当前大数据领域内存储和计算使用最多的技术,可以通过Spark访问Hive中的数据。但是Spark也要面临一个问题,即在多租户的应用场景下,Spark在访问Hive时存在着安全问题,无法做到不同用户的权限控制。
技术实现思路
本专利技术提供了多租户权限控制方法及装置,能够解决多租户场景下通过Spark访问Hive数据时Ranger无法控制其权限的问题。第一方面,本专利技术实施例提供了多租户权限控制方法,包括:接收外部一用户端发来的、用于请求查询Hive中数据的查询请求,所述查询请求包括第一用户标识和用于标识待查询数据的第一数据标识;利用Spark的LogicPlan,获取所述查询请求中包括的所述第一用户标识和所述第一数据标识;调用Ranger应用程序接口API,访问Ranger中已配置的Hive访问权限策略,所述Hive访问权限策略包括至少两个用户标识中每一个用户标识的查询权限,所述查询权限对应有的数据标识;根据所述Hive访问权限策略,判断所述第一用户标识是否具有所述第一数据标识的查询权限,若否,不允许所述用户端访问所述Hive中具有所述第一数据标识的 ...
【技术保护点】
1.多租户权限控制方法,其特征在于,包括:/n接收外部一用户端发来的、用于请求查询Hive中数据的查询请求,所述查询请求包括第一用户标识和用于标识待查询数据的第一数据标识;/n利用Spark的Logic Plan,获取所述查询请求中包括的所述第一用户标识和所述第一数据标识;/n调用Ranger应用程序接口API,访问Ranger中已配置的Hive访问权限策略,所述Hive访问权限策略包括至少两个用户标识中每一个用户标识的查询权限,所述查询权限对应有的数据标识;/n根据所述Hive访问权限策略,判断所述第一用户标识是否具有所述第一数据标识的查询权限,若否,不允许所述用户端访问所述Hive中具有所述第一数据标识的数据。/n
【技术特征摘要】
1.多租户权限控制方法,其特征在于,包括:
接收外部一用户端发来的、用于请求查询Hive中数据的查询请求,所述查询请求包括第一用户标识和用于标识待查询数据的第一数据标识;
利用Spark的LogicPlan,获取所述查询请求中包括的所述第一用户标识和所述第一数据标识;
调用Ranger应用程序接口API,访问Ranger中已配置的Hive访问权限策略,所述Hive访问权限策略包括至少两个用户标识中每一个用户标识的查询权限,所述查询权限对应有的数据标识;
根据所述Hive访问权限策略,判断所述第一用户标识是否具有所述第一数据标识的查询权限,若否,不允许所述用户端访问所述Hive中具有所述第一数据标识的数据。
2.根据权利要求1所述的方法,其特征在于,
所述第一数据标识包括:第一数据库标识和第一数据表标识;
其中,所述查询权限包括:至少一个数据库标识和每一个该数据库标识所对应的至少一个数据表标识;
所述根据所述Hive访问权限策略,判断所述第一用户标识是否具有所述第一数据标识的查询权限,若否,不允许所述用户端访问所述Hive中具有所述第一数据标识的数据,包括:
A1:判断所述Hive访问权限策略是否包括所述第一用户标识的第一查询权限,若是,执行A2,否则,执行A4;
A2:判断所述第一查询权限是否包括所述第一数据库标识,若是,执行A3,否则,执行A4;
A3:判断所述第一查询权限中的所述第一数据库标识是否对应有所述第一数据表标识,否则,执行A4;
A4:不允许所述用户端访问所述Hive中目的数据库中目的数据表中的数据,其中,所述目的数据库具有所述第一数据库标识,所述目的数据表具有所述第一数据表标识。
3.根据权利要求2所述的方法,其特征在于,
进一步包括:A3中判断结果为是时,允许所述用户端访问所述Hive中所述目的数据库中所述目的数据表中的数据。
4.根据权利要求1所述的方法,其特征在于,
所述利用Spark的LogicPlan,获取所述查询请求中包括的所述第一用户标识和所述第一数据标识,包括:
利用Spark中的${SPARK_HOME}/jars目录下的预先编译好的Authorization类代码,通过解析Spark的LogicPlan,获取所述查询请求中的所述第一用户标识和所述第一数据标识。
5.根据权利要求1所述的方法,其特征在于,
所述调用Ranger应用程序接口API,访问Ranger中已配置的Hive访问权限策略,包括:
利用Spark中的${SPARK_HOME}/jars目录下的预先编译好的RangerHelper类代码,通过调...
【专利技术属性】
技术研发人员:周永进,刘传涛,
申请(专利权)人:浪潮软件股份有限公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。