私がしようとしているのは、ユーザーを検索してPerlスクリプトでユーザーのDNを返すことだけです。しかし、私のスクリプトは、実際のDNの代わりにハッシュへの参照を出力しています。ユーザーDNのLDAP検索でハッシュ - Perlを返す
DNは後で別の変数に入れてDNを必要とする必要があります。ここで
は私のコードです:ここでは
use strict;
use warnings;
use Net::LDAPS;
use Net::LDAP;
use Config::Simple;
use Try::Tiny;
#LDAP connection.
my $ldap;
my $hostname = "Hostname";
my $port = 2389;
my $rootDN = "username";
my $password = "password";
#Connect to LDAP
$ldap = Net::LDAP->new($hostname, port => $port) or die [email protected];
#Send username and password
my $mesg = $ldap->bind(dn => $rootDN, password => $password) or die [email protected];
my $result = $ldap->search(
base => "ou=AllProfiles",
filter => "(cn=Alice Lee)",
attrs => ['*','entrydn'],
);
my $href = $result;
print "$href\n";
は私の出力である:私はこれを取得していますなぜ
誰でも知っていますか?またはそれを修正する方法を知っていますか?
ありがとうございます!
'利用データを追加します。 :Dumper'、次に 'print Dumper $ href;'を実行します。出力で、あなたが望むフィールドに関連付けられているキーを見つけたら、 'print" $ href - > {field_name} \ n ";'を実行できます。基本的には、ハッシュリファレンスを逆参照し、必要なデータにマップするキーを使用して、必要なデータを取り出す必要があります。 – stevieb
なぜConfig :: SimpleとTry :: Tinyがそのコードに含まれていますか?あなたはそれを使用していません。 – simbabque
'search'メソッドは' Net :: LDAP :: Search'のオブジェクトを返さなければなりません... –