LDAPサーバーのActive Directoryから特定のグループのすべてのユーザーを取得しようとしています。認証は成功しますが、私は結果がnullになっています。 以下は私のコードです。Active DirectoryユーザーがMVCでインポートする
ドメイン172.11.12.123
[email protected]
パスワード-123456
using (var context = new DirectoryEntry(user.Domain, user.Email, user.Password, AuthenticationTypes.Secure))
{
try
{
string FirstName;
string LastName;
string ADUserName;
string Email;
using (var searcher = new DirectorySearcher(context))
{
searcher.Filter = "(&((&(objectCategory=Person)(objectClass=User)))(samaccountname='user3'))";
List<string> Adusers = new List<string>();
System.DirectoryServices.SearchResult result = searcher.FindOne();
}
}
catch (Exception ex)
{
TempData["message"] = "error";
return RedirectToAction("Index", "ADuserList");
}
}
で何が起こっているのか間違っています。 ありがとうございます
と'dsa.msc'を起動し、検索を行ってください。構文は幾分奇妙に見えます(2つのorsと1つのors、afaicちょうど1つしかありませんでした) – zaitsman
DirectoryEntry ctorの最初の引数がLDAPであることを確認してください://172.11.12.123 filter samaccountname = 'user3'を使用して検索を実行しますActive Directoryのユーザー "user3"に対してこのユーザーが存在することを確認します。また、一重引用符は必要ありません。単にsamaccountname = user3と入力してください。 – oldovets
ありがとうございます。私は正しい形式を教えてください。 –