1
我有這個代碼工作。這可以通過LDAP功能完成嗎?
#!/usr/bin/perl
use warnings;
use strict;
use Net::LDAP;
use Data::Dumper;
my $dn="...";
my $password="...";
my $ldap = Net::LDAP->new('...') or die "[email protected]";
my $mesg = $ldap->bind($dn, password => $password);
if ($mesg->code) { die "uuuu $mesg"; }
$mesg = $ldap->search(
base => "...",
scope => 'one',
filter => '(groupType=-2147483646)',
attrs => ['sAMAccountName'],
);
my @ad = ();
foreach ($mesg->entries) {
push @ad, $_->asn->{attributes}[0]->{vals}[0];
}
foreach (@ad) {
print;
print "\n";
}
並輸出安全組的名稱。
所以我想,如果LDAP(Active Directory)中有函數提取從樹的值,而不是做使用數組和哈希就像我在
push @ad, $_->asn->{attributes}[0]->{vals}[0];
的樹看起來做硬編碼路徑像這樣
'entries' => [
bless({
'changes' => [],
'changetype' => 'modify',
'asn' => {
'objectName' => '...',
'attributes' => [
{
'type' => 'sAMAccountName',
'vals' => [
'test-group-1'
]
}
]
}
}, 'Net::LDAP::Entry'),
bless({
'changes' => [],
'changetype' => 'modify',
'asn' => {
'objectName' => '...',
'attributes' => [
{
'type' => 'sAMAccountName',
'vals' => [
'test-group-3'
]
}
]
}
}, 'Net::LDAP::Entry')
],