发布于: Jan 8, 2021

Amazon EMR 现与 Apache Ranger 原生集成,可让您定义、实施和审核细粒度的数据访问控制。借助此功能,您可以在 Apache Spark 和 Apache Hive 用户通过 Hive Metastore 访问数据时为其定义和实施 1/ 数据库、数据表和数据列级别的授权策略,以及在用户通过 Amazon EMR 文件系统 (EMRFS) 访问 Amazon S3 中的数据和利用 Amazon CloudWatch 来捕获审核日志时为其定义和实施 2/ 前缀和对象级别的授权策略。

Apache Ranger 是一个开源工具,用于在 Hadoop 平台上启用、监视和管理全面的数据安全。以前,您可以参考本博客文章,使用 Apache Ranger 和 Apache Hive 对 HDFS 中的数据强制执行细粒度的授权。现在,原生集成给您带来一些附加功能。您可以在 Apache Ranger Policy Admin 服务器上定义三种授权策略。您可以为 Apache Hive 设置数据表、数据列和数据行级别的授权,为 Apache Spark 设置数据表和数据列级别的授权,以及为 Amazon S3 设置前缀和对象级别的授权。Amazon EMR 会在集群上自动安装和配置相应的 Apache Ranger 插件。这些 Ranger 插件与 Policy Admin 服务器同步,以定义授权策略,实施数据访问控制,并将审核事件发送到 Amazon CloudWatch Logs

在 Amazon EMR 上启用 Apache Ranger 集成之前,有一些注意事项和限制。1/ 当前仅 Apache Hive 支持数据行级别的授权和数据屏蔽策略。2/ 当使用带有 Java、Scala、R 和 Pyspark 的 Spark API 读取和写入数据时,EMR Ranger-Spark 插件会强制执行细粒度的授权。但是,当前不支持在启用 Ranger 的群集上使用 Spark SQL 写入数据。 仅支持使用 SparkSQL 读取数据。3/ 该原生集成支持选定的应用程序,诸如 Apache Zeppelin 和 Hue。有关受支持应用程序的完整列表,请参阅受支持应用程序。 

Amazon EMR 与 Apache Ranger 的原生集成在以下 AWS 区域提供:美国东部(弗吉尼亚北部和俄亥俄)、美国西部(加利福尼亚北部和俄勒冈)、欧洲(法兰克福、爱尔兰、伦敦、巴黎、米兰和斯德哥尔摩)、加拿大(中部)、亚太地区(孟买、首尔、新加坡、香港、东京和悉尼)、南美(圣保罗)、中东(巴林)和非洲(开普敦)。

开始使用之前,请参阅以下资源列表:

• Amazon EMR 管理指南:Amazon EMR 与 Apache Ranger 集成
• AWS 大数据博客文章:介绍 Amazon EMR 与 Apache Ranger 的集成