如何从Node JS上的Kerboros keytab文件中读取主体和加密密钥?

时间:2015-04-27 21:49:38

标签: node.js encryption kerberos spring-security-kerberos keytab

我需要拦截来自我的Node Server的特定请求,并在那里引入Kerberos身份验证。

假设一个请求来自/ names /,我需要首先对Kerberos进行身份验证,并且只有在验证成功后,我才会继续完成请求。

我有一个.keytab文件,据我所知,它有我需要的主体和加密密钥。

问题:如何在Node JS上读取.keytab加密文件? 我查看了node-krb5和node-passport之类的Node包,但是找不到一种方法来读取我的keytab文件

如果您做了类似的事情,请提供帮助。 感谢。

2 个答案:

答案 0 :(得分:0)

我查看了node-krb5的源代码,但是相当没用。一切都做到了 或多或少是kinit所做的。

我的猜测是你需要SPNEGO的节点实现,这是一个使用kerberos的Web身份验证协议。列表中没有任何内容 这样做,写起来并不是一件小事。

我建议您考虑将支持SPNEGO的服务器放在前面 您的节点应用程序。

答案 1 :(得分:0)

您应该查看实现服务器端kerberos票证身份验证检查的节点passport-negotiate模块。模块中有一个示例“登录”应用程序,用于演示如何使用该模块,如果您查看strategy.js,您应该看到如何使用底层的kerberos支持,是否要绕过护照并直接进行身份验证

实际的服务器端kerberos功能是npm kerberos模块的一部分。

相关问题