2016-12-01 63 views
0

根据documentataion为WebHDFS REST APIWebHDFS REST API的Hadoop委派是否依赖于Kerberos SPNEGO?

https://hadoop.apache.org/docs/r2.7.3/hadoop-project-dist/hadoop-hdfs/WebHDFS.html#Delegation_Token_Operations

要提及的保时是上有使用Kerberos SPNEGO 2机构

认证时的安全性是在

安全开启时使用Hadoop授权令牌进行身份验证

如果我选择使用Hadoop委托令牌时,安全是

这是否意味着它可以在Hadoop的设置,但不Kerberos配置运行使用第二个选项即认证?

在这种情况下,我必须在我的hadoop配置中设置Kerberos吗?

回答

0

为了把事情方面:通常情况下,你使用SPNEGO当你启动HTTP会话,然后以某种方式缓存凭据,以避免客户端,服务器和Kerberos KDC 3之间的双向通信的复杂轮。 AFAIK,所有Hadoop用户界面和REST API在初始SPNEGO之后使用签名的cookie,并且它对您来说是完全透明的 - 除了WebHDFS之外。

现在,WebHDFS,你必须管理你的“凭证高速缓存”明确:

  1. 与启动会话一个GET ?op=GETDELEGATIONTOKEN - 你不出示任何证件,因此会引发SPNEGO认证,然后生成一个Hadoop委托令牌服务器端
  2. 从JSON结果检索委托令牌
  3. 使用该令牌下面的GET/POST/PUT出示您的会话证书明确,通过附加&delegation=XXXXXX到所有URL

底线:是的,您必须在客户端设置您的Kerberos配置。委托令牌只允许您最小化认证开销。