2

我们正在尝试构建一个设置,其中我们有一个服务器,该服务器通过 REST API 将不同用户的作业提交到 Livy 服务器。我们建立了一个 kerberos 服务器来针对 livy 进行身份验证。但是我们要禁止用户访问不同用户的数据、文件系统和网络。

那么我的问题是,livy 的安全性如何?用户可以注入自定义代码以在 livy 上运行,但这使他们能够访问 livy 服务器所在主机上的文件系统。即使我们使用不同的 unix 用户运行 livy,该用户对文件系统的权限很小,从我的角度来看,可能存在潜在危险,他们也可能访问 livy 服务器上的密钥表。他们还可能注入恶意软件并运行它。

我知道创建的会话也创建了一个 JVM,所以一个会话存在于一个 JVM 中,如果没有 kerberos 票证,就不可能看到另一个会话的数据等,但是我可以将该 JVM 的安全设置更改为仅访问特定仅路径和特定 IP 地址?这是否意味着我要更改 livy 的源代码?

在使用带有活动目录的 HDFS 来保护数据系统的情况下,用户需要指定一个 kerberos 密钥来访问他们的文件,我如何在一台服务器中管理多个主体,以使其正常工作?

我的conf文件如下:

livy.environment production
livy.impersonation.enabled true
livy.server.csrf_protection.enabled true
livy.server.port 8999
livy.server.session.timeout 3600000

livy.server.auth.kerberos.keytab /home/harun/Documents/incubator-livy/keytabs/new.keytab
livy.server.auth.kerberos.principal HTTP/livyserver.local@EXAMPLE.COM
livy.server.auth.type kerberos
#livy.server.launch.kerberos.keytab /home/harun/Documents/incubator-livy/conf/livy.headless.keytab
#livy.server.launch.kerberos.principal livy@EXAMPLE.COM
livy.server.access_control.enabled = true
livy.server.access_control.users = livy
livy.superusers=livy

PS:启用launch.kerberos 是否提供额外的安全性来保护keytab?

对任何问题的任何帮助都非常感谢,

感谢正手

4

0 回答 0