Node.js中的LDAP身份验证,OU中有空格
我正在尝试使用用于的策略连接到Node.js中的LDAP身份验证,OU中有空格,node.js,ldap,passport.js,Node.js,Ldap,Passport.js,我正在尝试使用用于的策略连接到OU中有空格的LDAP系统,但失败了 这失败了: let OPTS = { server: { url: 'ldap://ldap.company.com:PORT', bindDn: 'CN=some-group,OU=Utils,OU=Some Users,DC=thing,DC=com', bindCredentials: 'my$pass', searchBase: 'ou=some u
OU
中有空格的LDAP系统,但失败了
这失败了:
let OPTS = {
server: {
url: 'ldap://ldap.company.com:PORT',
bindDn: 'CN=some-group,OU=Utils,OU=Some Users,DC=thing,DC=com',
bindCredentials: 'my$pass',
searchBase: 'ou=some users,DC=thing,DC=com',
searchFilter: '(uid={{username}})'
}
};
但这在命令行上成功:
ldapsearch -H ldap://ldap.company.com:PORT -x -D 'CN=some-group,OU=Utils,OU=Some Users,DC=thing,DC=com' -w 'my$pass' -b 'ou=some users,DC=thing,DC=com' "(uid=username)"
我尝试了转义引号、空格和组合的
“
和”
的每一种组合,但都没有效果。在应用程序中,响应总是未经授权的,即使相同的凭据在命令行中成功。LDAP不需要“,OU=某些用户,“逃脱。必须是node.js实现中的某个内容。没错。事实证明,这是LDAP端凭据的一个问题。简单的401 Unauthorized
响应使跟踪这一点变得非常困难,因此我将在工具中寻找更详细的消息。谢谢你看!LDAP不需要转义“OU=Some Users”。必须是node.js实现中的某个内容。没错。事实证明,这是LDAP端凭据的一个问题。简单的401 Unauthorized
响应使跟踪这一点变得非常困难,因此我将在工具中寻找更详细的消息。谢谢你看!