2016-07-11 13 views
1

ich den „active“ -Paket bin mit Nutzerinformationen aus dem Active Directory zu erhalten, aber ich muß auch mehr die Manager-Benutzerinformationen erhalten ...Wie die "Manager" -Eigenschaft von ActiveDirectory mit NodeJS bekommen?

Der Code die ich benutze, ist:

var ActiveDirectory = require('activedirectory'); 
var ad = new ActiveDirectory('ldap://mydomain.com', 'dc=mydomain, dc=com', '[email protected]', 'dragon'); 
var query = 'cn=JohnS'; 
ad.findUsers(query, true, function(err, users) { 
    if (err) { 
    console.log('ERROR: ' +JSON.stringify(err)); 
    return; 
    } 

    if ((! users) || (users.length == 0)) console.log('No users found.'); 
    else { 
    console.log('findUsers: '+JSON.stringify(users)); 
    } 
}); 

und was ich im Gegenzug ist:

[ 
    { 
     "dn": "CN=JohnS,OU=NorthWall,DC=mydomain,DC=com", 
     "userPrincipalName": "[email protected]", 
     "sAMAccountName": "JohnS", 
     "whenCreated": "20160315093421.0Z", 
     "pwdLastSet": "131123123123467132", 
     "userAccountControl": "66048", 
     "givenName": "JohnS", 
     "cn": "JohnS", 
     "displayName": "busterd", 
     "groups": [] 
    } 
] 

ich mag auch die spezifischen Manager der Benutzer Informationen erhalten.

Vielen Dank im Voraus, max.

Antwort

0

standardmäßig die Manager Attribut is not included in der Ausgabe und Sie müssen Ihre ActiveDirectory- Instanz als

var ad = new ActiveDirectory(..., 
      attributes: { 
       user: [ 'dn', 'userPrinicipalName', ..., 'manager' ] 
      }); 

Hinweis erstellen: Wenn das Überschreiben der ‚Benutzer‘ oder das Attribut ‚Gruppe‘, Sie müssen alle angeben von den Attributen, die Sie wünschen, dh wenn Sie alle Attribute behalten möchten, die zZ zurückgegeben werden - schließen Sie sie in user: [ ] ein.

Ein Managerattribut hat normalerweise einen DN-Wert, der sich auf einen anderen Benutzer bezieht und hängt von Ihren Anforderungen ab. Möglicherweise müssen Sie es analysieren (z. B. um sAMAccountName daraus zu extrahieren) oder die findUser() -Methode aufrufen Name und andere Attribute des Managers.

+0

Vielen Dank. Ich habe diese Lösung vorher versucht, aber aus irgendeinem Grund hat es nicht funktioniert, also dachte ich, dass das Problem war, dass "Manager" kein Attribut war. Nachdem ich Ihren Beitrag gesehen habe, habe ich es erneut versucht und schließlich hatte ich ein anderes Problem (mit den DN-Parametern) und Ihre Antwort hat mich überzeugt, dass diese Lösung funktioniert hat. – MaxBk

+0

Ich bin froh, dass es geholfen hat. Um sicherzustellen, welche Attribute/Daten Ihr AD hat, können Sie es mit Tools wie LDAP Browser www.ldapadministrator.com durchsuchen – Alex