相关疑难解决方法(0)

使用 kerberos 身份验证卷曲

我有一个 Kerberos(Heimdal) 认证站点,我需要将网站内容卷入我的 Mac 终端。

浏览了许多站点,并在堆栈溢出中找到了解决方案,但这对 Heimdal 不起作用。(将 --negotiate 与 curl 一起使用时,是否需要密钥表文件?)因此希望对此有明确的解释。提前致谢。

shell macos-sierra

7
推荐指数
0
解决办法
3344
查看次数

无需 SPnego 即可访问 kerberos 保护的 WebHDFS

我有一个使用 WebHDFS 管理 HDFS 的工作应用程序。我需要能够在 Kerberos 安全集群上执行此操作。

问题是,没有库或扩展来协商我的应用程序的票证,我只有一个基本的 HTTP 客户端。

是否可以创建一个 Java 服务来处理票证交换,并且一旦获得服务票证就将其传递给应用程序以在 HTTP 请求中使用?换句话说,我的应用程序会要求 Java 服务协商票证,然后它将服务票证以字符串或原始字符串形式返回给我的应用程序,而应用程序只需将其附加到 HTTP 请求?

编辑:是否有像 @SamsonScharfrichter 为 HTTPfs 描述的类似的优雅解决方案?(据我所知,它不支持委托令牌)

EDIT2:大家好,我仍然完全迷失了。我试图找出 Hadoop-auth 客户端,但没有运气。你能再帮我一下吗?我已经花了几个小时阅读它,但运气不佳。这些例子说要这样做:

* // establishing an initial connection
*
* URL url = new URL("http://foo:8080/bar");
* AuthenticatedURL.Token token = new AuthenticatedURL.Token();
* AuthenticatedURL aUrl = new AuthenticatedURL();
* HttpURLConnection conn = new AuthenticatedURL(url, token).openConnection();
* ....
* // use the 'conn' instance
* ....
Run Code Online (Sandbox Code Playgroud)

我已经在这里迷路了。我需要什么初始连接?怎么能

new AuthenticatedURL(url, token).openConnection();
Run Code Online (Sandbox Code Playgroud)

取两个参数?对于这种情况没有构造函数。(我因此而出错)。主体不应该在某个地方指定吗?这可能不会那么容易。

    URL url = new URL("http://<host>:14000/webhdfs/v1/?op=liststatus");
    AuthenticatedURL.Token …
Run Code Online (Sandbox Code Playgroud)

java hadoop kerberos webhdfs

2
推荐指数
1
解决办法
2730
查看次数

标签 统计

hadoop ×1

java ×1

kerberos ×1

macos-sierra ×1

shell ×1

webhdfs ×1