2012-03-08 8 views
0

ldapを使用して、アクティブディレクトリ内の変更に対してdirSyncポーリングを実装しています。しかし、うまくいきましたが、検出される変更に加えて、SearchResultEntryオブジェクトに関連付けられたユーザー名属性( "samaccountname")を取得したいと考えています。SearchResultEntryのユーザー名を取得する方法

答えて

1

検索要求の一部として属性を要求する必要があります。あなたが望む属性が検索リクエストの過去としてサーバに送信され、サーバが接続の認証状態でそれらの属性を取得できるようにした場合、それらの属性は検索結果に含まれます。詳細については、LDAP: Programming PracticesおよびUsing ldapsearchを参照してください。後者はコマンドラインldapsearchツールを参照していますが、その概念はどの言語でも有効です。

1
SearchResult result; // this would've been defined elsewhere 
if(result != null) 
{ 
    DirectoryEntry entry = result.GetDirectoryEntry(); 
    string name = (string)entry["SAMAccountName"].Value; 
} 

これは、あなたが名前で、ユーザーと店舗、そこから名前を取得することができ、あなたがすでにディレクトリにいくつかの検索から移入のSearchResultという名前の結果を前提としています。

編集:これはあなたが求めているのではなく、DirectoryServices.SearchResultではなくSearchResultEntryを使用していることに気付きました。私はこれを助けるかもしれない場合に備えてここに残しておきますが、元の質問を正しく読まなかったことをお詫びします。

+0

thats ok @Jetti – chloe

関連する問題