0

我正在尝试在我的 scala (%livy) 脚本中获取用于登录 Zeppelin 的用户 ID。我试过在线搜索并注意到有一个名为“proxyUser”的属性。但是,我无法弄清楚如何在我的 Scala 脚本中获取此属性。

我尝试在我的 SparkContext (spark) 和 ScalaContext (sc) 中转储所有属性,但没有发现任何看起来很有希望的东西。

我不知道在哪里看,任何指导将不胜感激......

最终目标是从我将构建的自定义库中访问登录用户。所以理想情况下,我想获得某种包含登录 ID 的只读属性,并将该结构传递给我的自定义库,该库又将提取用户 ID。换句话说,我不希望脚本作者将用户 ID 作为字符串变量传递(因为我不希望他们试图将自己伪装成另一个用户)。

4

2 回答 2

1

在拔掉我的大部分头发之后,一位同事首先说明了对我来说应该很明显的事情:

sc.sparkUser

返回 Zeppelin 中的模拟用户 ID。

于 2018-09-26T03:47:10.693 回答
0

Enable 'User Impersonate' option for Livy interpreter in settings page. This option will appear once you select 'per user' - 'isolated' mode in interpreter settings drop-down. Check this link for more info

于 2018-09-24T19:10:31.963 回答