Ошибка аутентификации nodejs ldap

Я использую пакет activedirectory npm для аутентификации в ActiveDirectory на предприятии. Нахождение проблем с аутентификацией, в то время как я делал это несколько раз раньше в других программах.

var ActiveDirectory = require('activedirectory');
var config = { url: 'ldap://<ldap server>:389',

            baseDN:'DC=ads,DC=dwdwdw,DC=com',
            bindDN: 'CN=dddd,OU=ServiceAccounts,OU=Process,DC=ads,DC=dwdwdw,DC=com',
            bindCredentials: 'vBAX5y5@',
            includeMembership:['user'],
             referrals: {
                 enabled: false,
                 excluded: [ ]
               },
               attributes: {

                   user: [ 'sAMAccountName' ],
                   group: [ 'distinguishedName' ]
                 },
               //filter: '(&(objectcategory=person)(objectclass=user)(|(samaccountname={{username}})(mail={{mail}})))'
                 //filter: '(&(objectcategory=*)(|(samaccountname={{username}})))'

             }

var sAMAccountName = 'sss';
var password = 'password';
var username = sAMAccountName;
ad.authenticate(sAMAccountName, password, function(err, auth) {
  if (err) {
   console.log('ERROR: '+JSON.stringify(err));
   return;
 }

когда я запускаю этот скрипт nodejs, я получаю следующую ошибку:

ОШИБКА: {"lde_message":"80090308: LdapErr: DSID-0C09042F, комментарий: ошибка AcceptSecurityContext, данные 52e, v2580\u0000","lde_dn":null}

Можно сказать, я понятия не имею, что я делаю.

Но я знаю, что searchAttribute должен быть 'sAMAccountName' - как я могу поставить это в конфигурации?

Я также знаю, что когда я заменяю имя пользователя sss на его DN, т.е.

var username = 'CN=<full name of user>,OU=InfoWorker,OU=People,DC=ads,DC=dwdwdw,DC=com';

, это подтверждает подлинность отлично.

Я использовал usertodnmapping при успешном включении LDAP на MongoDB.

userToDNMapping: |-
  [
        {
         match: "(.+)",
         ldapQuery: "dc=ads,dc=dwdwdw,dc=com??sub?(samAccountName={0})"
        }
       ]

Но я просто не могу найти эквивалент этого для использования в пакете activedirectory. Не могли бы вы помочь мне с этим?

Я также не против использования ldapjs. Я просто не имел большого успеха с этим либо. Я просто хочу пройти аутентификацию с именем пользователя и получить членство в группе по имени пользователя.

0 ответов

Другие вопросы по тегам