Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js passport ldapauth获取嵌套组_Node.js_Active Directory_Ldap_Passport.js - Fatal编程技术网

Node.js passport ldapauth获取嵌套组

Node.js passport ldapauth获取嵌套组,node.js,active-directory,ldap,passport.js,Node.js,Active Directory,Ldap,Passport.js,我将passport ldapauth与我的NODEJS+ExpressJS应用程序一起使用。 我正在尝试获取已验证用户的所有嵌套成员的列表,但不知道如何操作 我的用户“X”拥有“ROL-B”的成员资格,而ROL-B拥有其他10个组的成员资格。 现在,在身份验证之后,当它返回给我身份验证的用户对象时,我只看到ROL-B是组的成员。 是否有任何方法可以获取用户所属的嵌套组的完整列表 这是我的配置 “adAuthConfig”:{ “url”:”ldap://localhost:8076", “bi

我将passport ldapauth与我的NODEJS+ExpressJS应用程序一起使用。 我正在尝试获取已验证用户的所有嵌套成员的列表,但不知道如何操作

我的用户“X”拥有“ROL-B”的成员资格,而ROL-B拥有其他10个组的成员资格。 现在,在身份验证之后,当它返回给我身份验证的用户对象时,我只看到ROL-B是组的成员。 是否有任何方法可以获取用户所属的嵌套组的完整列表

这是我的配置
“adAuthConfig”:{
“url”:”ldap://localhost:8076",
“bindDn”:“CN=svccount,OU=Services,OU=Accounts,DC=misd,DC=net”,
“bindCredentials”:“XXXXXXXXXXXXX”,
“searchBase”:“OU=Accounts,DC=misd,DC=net”,
“searchFilter:”(userPrincipalName={{username}})

},

我没有尝试过使用
passport ldapauth
,但这对我直接使用
ldapauth fork
有效:

const LDAP_MATCHING_RULE_IN_CHAIN = '1.2.840.113556.1.4.1941'
const config = { ... your config here ... }
config.groupSearchBase = config.searchBase
config.groupSearchFilter = `(&(objectclass=group)(member:${LDAP_MATCHING_RULE_IN_CHAIN}:={{dn}}))`

new LdapAuth(config)
// etc
这将在
LdapAuth.authenticate
结果中添加
\u groups
属性。其中包括所有嵌套组