问题标签 [apache-sentry]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3965 浏览

hadoop - 授予在 Sentry 中创建外部表

我有一个 4 节点 cloudera 集群,上面启用了 kerberos,并使用哨兵保护 Hive 服务。

当我使用 hive 用户创建表时,我可以这样做,因为它具有数据库默认值的所有权限。

但是,当我尝试在具有相同用户配置单元的相同环境上创建外部表时,我收到如下错误

如果我正在读取外部表的数据,我也提供了对 URI 的所有访问权限。

有什么方法可以为哨兵中的用户提供创建外部表,任何帮助都会很棒。

0 投票
1 回答
1245 浏览

apache-spark - Spark + Sentry + Kerberos:org.apache.hadoop.security.UserGroupInformation.doAs()

获取以下错误堆栈:

无法在集群中创建 Spark 会话:在 org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1671) 在 org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:160) ) 在 org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120) 在 org.apache.spark.deploy 的 org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205)。 SparkSubmit.main(SparkSubmit.scala) ) 在 org.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:466) 在 org.apache.hadoop.hive.metastore.HiveMetaStoreClient.(HiveMetaStoreClient.java:234)在 org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.(SessionHiveMetaStoreClient.java:74) ... 还有 35 个

我的理解应该启用 hive.server2.enable.impersonation 和 hive.server2.enable.doAs 以使 UserGroupInformation.doAs() 工作?

当我尝试启用这些参数时,Cloudera Manager 显示错误

为 Hive Server2 角色“HiveServer2(主机名)”启用了 Hive 模拟。应该禁用 Hive 模拟以使用 Sentry 启用 Hive 授权

所以 Spark-Hive 与 Sentry 发生冲突!?

环境:Hue 3.9 Spark Notebooks + Livy Server(由 master 构建)。CDH 5.5。

这是一个带有 Sentry 的 Kerberized 集群。

我使用hue的keytab,因为hue用户通常(默认情况下在CDH中)被允许模仿其他用户。Spark Notebooks 非常方便。

任何有助于解决此问题的信息将不胜感激。

0 投票
1 回答
1215 浏览

apache - 使用 LDAP 的 Cloudera Sentry - 无法将用户添加为 Sentry 管理员

背景:

默认情况下,哨兵服务有用户hivehue并且impala作为哨兵管理员。这适用于 Cloudera Manager (CM) 上的属性sentry.service.admin.group。我想添加一个拥有我的用户帐户的用户或组,这样我就可以成为 Sentry 管理员。

当前环境:

  1. Cloudera 5.4.7 与 CM
  2. 用于 CDH、Hive 和 Sentry 的 Postgres 数据库
  3. 哨兵1.4版

问题:

我已经集成了 OpenLDAP,以便可以通过 LDAP 用户和密码凭据完成直线身份验证。在将 LDAP 集成到 HiveServer2 之前,我使用 root 作为 Sentry 管理员(Beeline 在没有 LDAP 的情况下不会严格检查密码),因此我可以执行show roles;create roles;as之类的命令root

现在集成了LDAP root,我无法登录为做过。johndoeroot

这是我需要在 Postgres 级别设置的东西吗?我的意思是进入哨兵数据库并GRANT在那里获得一些特权?

到目前为止我尝试了什么:

  1. 我已经尝试了在属性中使用本地用户sentry.service.admin.group、将本地用户添加到hive组、使用 LDAP 用户、LDAP 组的所有组合 - 没有!

  2. 我不明白哪里出错了。还是 Sentry 只识别hive,hue并且impala作为管理员。

任何帮助将不胜感激。坚持了十天。

0 投票
1 回答
757 浏览

linux - 如何在Linux上创建ini文件作为HDFS

我是 linux 新手。Cloudera文档提到在 cloudera CHD 5.4 上创建 sentry-provider.ini 文件作为 HDFS 文件。我没有找到关于如何在 linux 上创建 ini 文件的好文章。

我正在尝试在 cloudera 设置上配置 Apache Sentry,以便在配置单元元数据上具有基于角色的安全性

如何在Linux上创建ini文件作为HDFS?

0 投票
1 回答
3184 浏览

hadoop - Apache Sentry:SemanticException 无有效权限 此查询所需的权限

我有不安全的集群(CDH 5.4),因为我想为更多用户提供对数据的访问,我想打开 Sentry,到目前为止没有 Kerberos(在 Sentry 成功启动之后)。由于其他人目前可能需要 Impala,因此我决定在第一阶段将其设置在 Hive 中。

我已采取的步骤:1)我设置了 2 个用户:hive 和 tuser

tuser - 组测试配置单元 - 组配置单元,动物园管理员

小组测试

组蜂巢

group hive 具有角色 admin(第一个具有解锁锁的角色):

小组测试有角色neco

此外,用户 hive 位于 sentry.service.admin.group 和 sentry.service.allow.connect 两个集合中。

2)我已经打开哨兵 - 在 Hive 中检查了哨兵服务从“无”到“哨兵” - 在 Hive 服务高级配置片段(安全阀)中插入 sentry-site.xml <property> <name>sentry.hive.testing.mode</name><value>true</value></property> + 重新启动哨兵

结果:用户 hive 可以访问 Hive 中的任何内容。这就是我所期待的。

用户 tuser 无法访问 Hive 中的任何内容:Error while compiling statement: FAILED: SemanticException No valid privileges Required privileges for this query: Server=server1->Db=*->Table=+->action=insert;Server=server1->Db=*->Table=+->action=select;

我错过了什么?

0 投票
0 回答
258 浏览

hive - 启用 Sentry 且未设置 kerberos 后 Hive Admin 无法正常工作

我需要您的帮助来解决与 Hive 权限相关的问题。我在 CDH 5.5 环境中启用了 Sentry,但未发送 Kerberos。我无法创建角色或授予配置单元对象的权限。对于每次访问都需要通过 root 和 sudo 登录以配置单元并访问对象。

当我尝试 su 从 hdfs 用户配置蜂巢并尝试给出以下命令时

设置角色管理员;

FAILED: SemanticException Hive 中的当前内置授权不完整且已禁用。

请建议我如何解决这个问题。

感谢和问候

0 投票
1 回答
1688 浏览

apache-spark - 带哨兵的 spark sql 的特权

我正在尝试使用哨兵获取访问 Spark-SQL 的权限,并且 spark sql 使用 hiveserver2(--hiveconf hive.server2.thrift.port)连接到节俭端口。但是,虽然我可以成功限制用户对 hive 的权限,但我无法通过 sentry 限制使用 spark SQL 的访问。

有谁遇到过同样的问题?

0 投票
2 回答
1464 浏览

apache-sentry - 用于策略管理的 Apache Sentry API

我正在寻找务实地定义角色策略的方法。Sentry 有可用的 API 吗?无论是 REST/JAVA 吗?

任何文档或链接都会有很大帮助吗?

0 投票
4 回答
15815 浏览

security - 如何在 apache ranger 和 sentry 之间进行选择

从这两个项目提供的 wiki 中,我发现他们似乎做了类似的工作。但必须有一些差异,否则不需要2。

那么有什么区别,有什么实用的建议可以相互选择。

多谢!

0 投票
2 回答
1268 浏览

apache-hive - 使用哨兵配置配置单元:NullPointerException privilegeObj 为空

我一步一步地按照指南进行操作。但是当我尝试向角色授予权限时发生错误:

我用hive登录beeline,密码正确,创建角色没问题,可以看到角色了:</p>

但我无法获得当前角色: