使用knox的HiveSever2安全性

使用knox的HiveSever2安全性,hive,openldap,hortonworks-data-platform,beeline,knox-gateway,Hive,Openldap,Hortonworks Data Platform,Beeline,Knox Gateway,案例1:我想使用knox保护配置单元。所以我做了配置单元ldap和knox之间的集成。 我能够使用excel访问HiveServer2,使用knox和jdbc访问odbc驱动程序 但在同一时间,当我在beeline/ODBC上测试默认登录时,我能够使用下面的任何用户和密码来完成这项工作,这在理想情况下是不应该发生的 连接到jdbc:hive2://:10001/默认值;transportMode=http;httpPath=cliservice 案例2:我已经在hive-server2上启用了L

案例1:我想使用knox保护配置单元。所以我做了配置单元ldap和knox之间的集成。 我能够使用excel访问HiveServer2,使用knox和jdbc访问odbc驱动程序 但在同一时间,当我在beeline/ODBC上测试默认登录时,我能够使用下面的任何用户和密码来完成这项工作,这在理想情况下是不应该发生的

连接到
jdbc:hive2://:10001/默认值;transportMode=http;httpPath=cliservice

案例2:我已经在hive-server2上启用了LDAP身份验证,现在beeline的默认登录名是disable 仅允许使用端口10001使用LDAP。但是当我通过knox测试它时,我会 无效凭据错误

如何在案例1中禁用默认登录。
或者,如果必须使用案例2,如何解决此问题。

您描述的是,您的Hadoop部署没有通过网络安全、防火墙等阻止对后端服务的直接访问,并且您没有使用kerberos保护集群

这实际上不是Knox问题,而是集群的部署问题。如果您不使用防火墙隔离集群,也不使用kerberize,那么用户可以直接访问服务本身,绕过网关中的身份验证机制

理想情况下,您应该保护您的集群(包括HiveServer2),这将要求用户通过kerberos/SPNEGO进行身份验证。然后,Knox将被设置为可信代理,这将允许它代表特定组中的最终用户。Knox将以自身身份向HS2进行身份验证,并为要作为/针对运行的配置单元作业断言最终用户的身份


希望这会有所帮助。

您所描述的是,您的Hadoop部署不会阻止使用网络安全、防火墙等直接访问后端服务,并且您还没有使用kerberos保护集群

这实际上不是Knox问题,而是集群的部署问题。如果您不使用防火墙隔离集群,也不使用kerberize,那么用户可以直接访问服务本身,绕过网关中的身份验证机制

理想情况下,您应该保护您的集群(包括HiveServer2),这将要求用户通过kerberos/SPNEGO进行身份验证。然后,Knox将被设置为可信代理,这将允许它代表特定组中的最终用户。Knox将以自身身份向HS2进行身份验证,并为要作为/针对运行的配置单元作业断言最终用户的身份


希望这会有帮助。

@Imccay..根据您的解释和我的谷歌搜索,我相信我不能使用第二种情况。我的意思是不能使用LDAP保护hive,然后使用KNOX(也使用LDAP)访问它由于通过10001访问HS2是直接访问,我需要使用kerberos阻止它,保护我的集群,并使用knox proxy gateway使用JDBC访问它,我的外部用户也应该使用这个代理来访问HS2…非常感谢您的解释。@Imccay..根据您的解释和我的谷歌搜索,我相信我不能使用第二种情况。我的意思是不能使用LDAP保护hive,然后使用KNOX(也使用LDAP)访问它由于通过10001访问HS2是直接访问,我需要使用kerberos阻止它并保护我的集群,使用knox proxy gateway使用JDBC访问它,我的外部用户也应该使用此代理访问HS2…非常感谢您的解释。