Каков правильный синтаксис добавления OU с помощью Net :: LDAP, я попробовал следующее:
#!/usr/bin/perl -w
use 5.10.1;
use strict;
use Net::LDAP;
use Data::Dumper;
my $ldap = Net::LDAP->new("192.168.183.2") or die "$@";
my $mesg = $ldap->bind( "cn=admin,dc=lab,dc=net", password => 'xxx' );
$mesg = $ldap->add(
"ou=Users,dc=lab,dc=net",
attrs => [
'ou' => 'dc=Users',
'objectClass' => [ 'top', 'organizationalUnit' ]
]
);
say $mesg->error;
say $mesg->code;
И получил следующую ошибку:
value of naming attribute 'ou' is not present in entry 64
Однако, используя командную строку ldapmodify и используя этот следующий ldif, работает:
dn: ou=Users,dc=lab,dc=net
changetype: add
objectclass: top
objectclass: organizationalUnit
ou: Users