Я пытаюсь получить все адреса электронной почты, связанные с данным пользователем AD.C# - Найти все адреса электронной почты для пользователя Active Directory
Для пользователя У меня есть домен и имя Логина (например, ДОМЕН \ имя_пользователь.) А я AD храним адреса электронной почты в:
- атрибута почты.
- В
proxyAddresses
атрибутов.
До сих пор я не знаю, какой C# API использовать для подключения к AD и как правильно фильтровать пользователь для получения всех адресов электронной почты. Я использую .NET 3.5.
спасибо.
Ссылка на «System.DirectoryServices.AccountManagement» также необходима, чтобы этот пример работал. – Fueled
+1 Это лучше, чем принятый ответ, потому что: а) вам не нужно покидать этот сайт, чтобы получить справку, и б) в нем нет всего загадочного материала запроса LDAP. –
Я бы с уважением не согласился - хотя это добавляет некоторую ясность, оно не указывает на важное различие, которое в этой документации не указывается: «это свойство [proxyAddress] перечисляет все типы адресов электронной почты, такие как SMTP, x.400 и т. Д. Поэтому нам нужно будет изменить наш код, чтобы проверить тип SMTP ». Кроме того, и, возможно, Microsoft виноват здесь в недопустимой документации, @Donut - мне все еще остается интересно, почему вы сделали следующее: emailAddresses.Add (user.EmailAddress) , когда документы Microsoft определяют этот атрибут как «список адресов электронной почты для контакта »(несколько адресов?) – Jordan