配置oozie以使用hadoop-2.6.0并启用kerberos安全性。
我没有使用 kinit 命令获得票证,但是当我使用以下命令提交作业时,
oozie job -oozie http://hostname:11000/oozie -config job.properties -run
它抛出以下异常,
Error: E0501 : E0501: Could not perform authorization operation, User: oozie/hostname@EXAMPLE.COM is not allowed to impersonate Kumar
我知道如何解决上述错误,但我的问题是
Kumar 是我的本地帐户用户名。当我配置kerberos时,它应该检查我的用户票。但它没有向我显示任何错误,如“没有找到凭证”
如果我使用 kinit 为任何其他用户获取票证,那么oozie也会使用我的本地用户帐户名称显示相同的例外。
有什么要配置的吗?我不明白这个概念。我正在关注this以在安全集群上配置kerberos oozie。
答案 0 :(得分:1)
Once authentication is performed successfully the received authentication token is cached in the user home directory in the .oozie-auth-token file with owner-only permissions. Subsequent requests reuse the cached token while valid.
这就是使用无效用户甚至使用kinit命令为任何其他用户获取票证的原因。
我刚解决如下
The use of the cache file can be disabled by invoking the oozie CLI with the -Doozie.auth.token.cache false= option
。
试试这个。