Flink Direct Reader访问Hive ACID表被ranger授权限制

如果你正在使用 Flink 的 Direct Reader 来访问 Hive ACID 表,并且受到 Ranger 授权限制,无法读取表的数据,可能是因为 Direct Reader 不经过 Hive 的 Thrift 接口,而是直接读取 Hive 表的数据文件,绕过了 Ranger 的授权验证。

在启用 Ranger 鉴权的情况下,Ranger 通常会拦截对 Hive 表的访问请求,根据预定义的策略进行权限验证。然而,Flink Direct Reader 绕过了 Hive Thrift 接口,直接读取数据文件,因此无法受到 Ranger 的授权限制。

如果你希望在受到 Ranger 鉴权的环境中使用 Flink 访问 Hive ACID 表,可以尝试以下方法:

  1. 使用 Hive Thrift 接口:不要使用 Flink 的 Direct Reader,而是通过 Hive JDBC 接口或 Hive Streaming API 连接到 Hive,这样数据访问将经过 Hive 的 Thrift 接口,受到 Ranger 的授权限制。

  2. 配置 Ranger 授权策略:在 Ranger 中配置适当的授权策略,允许 Flink 或相应的用户/角色通过 Thrift 接口访问所需的 Hive ACID 表数据。

请注意,确保在配置 Ranger 授权策略时考虑到安全性和合规性的要求,并遵循最佳实践。

需要指出的是,绕过 Ranger 的授权限制可能违反了数据安全性和合规性的要求,因此在进行任何访问控制更改之前,请与你的安全团队或合规团队进行充分讨论和评估。

总结来说,Flink Direct Reader 绕过了 Hive Thrift 接口,直接读取 Hive ACID 表的数据文件,因此无法受到 Ranger 的授权限制。要在受到 Ranger 鉴权的环境中访问 Hive ACID 表,可以考虑使用 Hive Thrift 接口或配置适当的 Ranger 授权策略。

你可能感兴趣的:(hadoop,flink,hive,大数据)