Если атрибут AD появляется в одном инструменте LDAP, а не в другом, в чем может быть причина?
Я использую тот же userID, строку подключения LDAP для привязки к серверу LDAP и получения информации.
Инструмент #1 предоставляет msExchMailboxGuid последовательно и надежно.
Инструмент #2 (.NET) не предоставляет msExchMailboxGuid. Есть случаи, когда он нулевой, и другие случаи, когда это не так.
(Примечание: я не ищу поддержку кода / разработчика)
DirectoryEntry de = new DirectoryEntry();
de.Path = "LDAP://ldap.exchange.serverdata.net:636/DC=exchange,DC=serverpod,DC=net";
de.Password = "PASSWORD";
de.Username = "LDAP@copmany.com";
de.AuthenticationType = AuthenticationTypes.Secure;
DirectorySearcher ds = new DirectorySearcher();
ds.PropertiesToLoad.Add("cn");
ds.PropertiesToLoad.Add("mail");
ds.PropertiesToLoad.Add("samAccountName");
ds.PropertiesToLoad.Add("msExchMailboxGuid");
ds.PropertiesToLoad.Add("proxyAddresses");
ds.PropertiesToLoad.Add("targetAddress");
ds.PageSize = 800;
ds.Filter = "(&(objectCategory=person)(mail=user1@company.com))";
SearchResultCollection results = ds.FindAll();
Этот код очень прост, но когда я заменяю user1@company.com на user2@company.com, атрибут исчезает. (но видно в других инструментах)
Есть ли какая-то логическая причина AD, по которой атрибут может отсутствовать при определенных обстоятельствах? Каковы эти обстоятельства?
Как я могу отладить этот вид запроса LDAP?