簡単な電話帳プログラムを作成できるように、会社のサーバーのActiveDirectoryにアクセスしたいと思います。レコードセットを取得するには、LDAPを使用して接続する必要があるようです。 Outlook(またはその他)の設定とプロパティに基づいてLDAP URLが何であるかを理解する方法はありますか?
誰かがこれらのLdapフィールドを理解し、値を入力するのを手伝ってくれませんか!
ありがとう
あなたがVBAを書いていると思います。 Outlookでは、 [〜#〜] ado [〜#〜] を使用してLDAPプロバイダーに対してクエリを実行できます。クエリは4つの部分で構成されています
意図したLDAPURLは、実際にはLDAPクエリのベースパスです。 ADSIeditを使用して、ローカルドメインのベースパスを取得できます。通常、ドメインの名前がabc.comの場合、ベースパスはLDAP://abc.com/DC=abc,DC=comのようになります。ただし、常にそうであるとは限りません。 Active Directoryを使用すると、DNSドメインとは異なるActive Directoryドメインに名前を付けることができますが、ほとんどの場合、それらは同じです。この構成は disjoint namespace と呼ばれます。
名前空間がばらばらの場合、正しいベースパスを見つけるために、 Windows 2003サポートツール からADSIeditをインストールできます。コマンドラインにadsiedit.mscと入力して、ADSIEditを起動します。 ADSIEditノードを右クリックし、「接続」をクリックします。次に、名前付けコンテキスト「RootDSE」を選択し、他のすべての設定をデフォルトのままにして、ローカルドメインに接続します。マシンがすでにドメインに参加している場合は、そのドメインに自動的に接続されているはずです。最上位のRootDSEノードには、現在接続しているドメインコントローラーも表示されます。接続されているドメインコントローラーのFQDNをマークダウンします。 dc1.yourdomain.comのようなものにする必要があります。次に、上部の「RootDSE」ノードを展開すると、その下に別の「RootDSE」フォルダーノードが表示されます。右クリックしてプロパティをクリックします。 defaultNamingContextを見つけます。 DC = yourdomain、DC = comのようになります。
ドメインコントローラー名とデフォルトの命名コンテキストを使用して、ベースパスを作成できます。ベースパスはLDAP://ドメインコントローラー/デフォルトの命名コンテキスト
LDAPベースパスにドメインコントローラー名の代わりにFQDNドメイン名を入力している人を目にすることがあります。これは、ドメインのAレコードがDNSサーバーに存在する場合にのみ正当です。ドメイン名の使用はお勧めしません。ただし、特定のドメインコントローラーを本当に指定したくない場合は、サーバーレスバインディングの使用を検討できます。 LDAP://デフォルトの命名コンテキスト。これはActiveDirectoryの機能です。他のLDAPサーバーでは機能しません。サーバーレスバインディングは、ドメインユーザーとして実行している場合にのみ使用できます。 サーバーレスバインディング を使用すると、LDAPクエリは、サイトで次に使用可能なドメインコントローラーを選択するだけです。このようにして、そのサーバーがリクエストで過負荷になる可能性を減らします。ただし、これにより、データが1つのドメインコントローラーから別のドメインコントローラーにまだ複製されていない場合があるため、結果の予測が難しくなります。
ちなみに、ドメイン内のすべてのユーザーを検索することを想定しているため、検索ベースパスとしてドメイン命名コンテキストを使用することをお勧めします。ベースパスとして他のコンテナをいつでも選択できます。たとえば、LDAP://yourdomain.com/CN=Users,DC=yourdomain,DC=comです。その後、検索はドメインのユーザーコンテナの下でのみ実行されます。
別のクイックルックアップは、Windowsからnslookupを実行することです-実行
これにより、デフォルトサーバーが提供されます。詳細については、こちらをご覧ください。
https://serverfault.com/questions/78089/find-name-of-active-directory-domain-controller
次に、AD Explorer( http://technet.Microsoft.com/en-ca/sysinternals/bb963907.aspx )に接続して、それが正しいことを確認できます。
Harveyの回答に基づいて、Windows 7コンピューターでこれを行う必要がある場合は、 Service Pack 1(SP1)を使用したWindows 7用のリモートサーバー管理ツール が必要になります。
スタートメニューを開くと、右側に「管理ツール」というメニューがある場合があります。その場合は、「ADSIEdit」が含まれている必要があります。
メニューが使用できない場合、またはADSI Editがメニューにない場合は、Windowsヘルプの次の(注釈付き)指示に従ってください。
[スタート]、[コントロールパネル]、[プログラム]の順にクリックします。
[プログラムと機能]領域で、[Windowsの機能をオンまたはオフにする]をクリックします。
ユーザーアカウント制御によって[Windowsの機能]ダイアログボックスを開くように求められた場合は、[続行]をクリックします。
[Windowsの機能]ダイアログボックスで、[リモートサーバー管理ツール]を展開します。
インストールするリモート管理ツールを選択します(役割管理ツール> AD DSおよびADLDSツール> AD DSツール> Active Directory管理センター))、次に、[OK]をクリックします。
管理ツールのショートカットがまだ表示されていない場合は、表示するように[スタート]メニューを構成します。
[スタート]を右クリックし、[プロパティ]をクリックします。
[スタートメニュー]タブで、[カスタマイズ]をクリックします。
[スタートメニューのカスタマイズ]ダイアログボックスで、[システム管理ツール]まで下にスクロールし、[すべてのプログラム]メニューと[スタート]メニューで[表示]を選択します。 [OK]をクリックします。
Windows 7のリモートサーバー管理ツール(ADSI Editを含む)によってインストールされたスナップインのショートカットが、[スタート]メニューの[管理ツール]リストに追加されます。