Можно ли создать запись на сервер LDAP без RDN только с атрибутами? - PullRequest
0 голосов
/ 09 апреля 2020

Мы используем модуль узла ldap js для связи с серверами LDAP, такими как Microsoft Active Directory, Apache DS и Open LDAP. Согласно нашему пониманию из здесь :

DN могут состоять из нуля или более компонентов, что означает, что законно иметь DN без каких-либо компонентов вообще.

Можно ли создать запись на сервере LDAP только с атрибутами без RDN в моем базовом DN?

Например, если я хотел создать запись inetOrgPerson на сервере LDAP без RDN , создавая запись, как показано ниже:

var ldap = require('ldapjs');
var client = ldap.createClient({  
  url: 'ldap://xxxxxxxx:389'
});
client.bind('xxxxxxxx', 'xxxxxxxxx', function(err) {
  if(err){
      console.log('error',err);
  }else{
      console.log('bind is success');
  }
});

var newDN = "ou=testou,dc=xxxx,dc=com";
var newUser = {    
    objectClass: 'inetOrgPerson',
    sn: 'test'
  }

client.add(newDN, newUser, function(err) {  
  if(err){
      console.log('error',err);
  }else{     
      client.unbind(function(err) {
          if(err){
              console.log('error unbind : ',err);
          }else{
              console.log('unbind is success');
          }
        });
  }
})

После выполнения кода выше должна быть запись в OU testou с sn как test. Любые входы помогут. Спасибо вам всем.

1 Ответ

0 голосов
/ 09 апреля 2020

Хотя допустимо иметь DN с нулевым компонентом, оно зарезервировано для rootDSE. Любая запись должна иметь непустое DN и, следовательно, иметь непустое RDN.

...