我需要我的节点服务器对客户端( HTTPS请求中提供的用户名/密码)进行身份验证,并提供用户的授权角色。我正在试图了解如何在节点中检索Kerberos令牌(使用节点-krb5 5或passport模块),以防止成功的身份验证。
我的设置非常基本:
对于步骤3和步骤5,我正在寻找检索kerberos令牌和读取其内容以提取角色信息的帮助。
任何帮助都是非常感谢的。
我检查了之前的一个线程,但没有回答:Kerberos Authorization w/ Node.js
谢谢。
发布于 2014-08-29 02:00:45
Kerberos是一个身份验证协议。大多数实现只是在kerberos票证中没有任何角色数据。微软是我所知道的一个例外,他们在kerberos票证的扩展中编码了一些组数据。
但是,除非您在服务器上有一个键签(在MS中使用SPN ),否则您将永远无法读取票证的内容。我不知道有任何标准的kerberos提供对这些数据的访问。(它们可能存在,我只是不知道)。
获取用户角色数据的典型方法是使用kerberos标识作为搜索授权服务的键。最常用的一种是LDAP。典型的应用程序将进行LDAP查询以获取用户属性,然后使用这些属性进行角色决策。(或者查看用户是否是特定组中的成员)。
最后,很难从您的描述中看出这一点,但听起来您实际上并没有按照预期的方式使用kerberos。正在按设计使用kerberos的应用程序不应该需要用户名/密码组合。
https://stackoverflow.com/questions/25519117
复制相似问题