【发布时间】:2016-03-31 19:20:36
【问题描述】:
我们被要求移动我们的 NodeJS 应用程序以在 IIS (Windows Server 2012R2) 下运行并与现有的 Active Directory 集成。我们被要求删除登录页面,而是使用 Windows 身份验证来获取(已通过身份验证的)用户的 ID,并使用他/她所属的组来控制他们在应用中的授权级别。
我已经安装了iisnode 以在 IIS 下运行我的应用程序,并认为我将使用passport-windowsauth 或node-activedirectory 来获得组成员资格。但是,两者都需要用户/密码来验证用户。我的用户已经通过身份验证,我无法访问他的密码(我也不应该)。
如何从 Active Directory 获取经过身份验证的用户组?
这是我目前所拥有的:
- 已安装并配置 iisnode
- 为 Web 应用启用 Windows 身份验证
- 将此添加到 web.config:
<iisnode promoteServerVars="AUTH_USER,AUTH_TYPE" /> - 然后在我的
index.js文件中,我可以console.log(req.headers['x-iisnode-auth_user']);并获取正确的用户名 - 但我不知道如何从这里着手获取他/她的组 - 在任何情况下,我都不想重新询问用户的密码
【问题讨论】:
-
嘿,如何在 nodejs 应用程序中获取已通过身份验证的用户信息的详细信息?案例1:node js 应用托管在windows server 案例2:nodejs 应用未托管在windows server\
标签: node.js iis active-directory windows-authentication