ldap3: получить адрес электронной почты пользователя - PullRequest
0 голосов
/ 15 января 2020

Я использую модуль python ldap3. Я могу подключиться к службе LDAP моей компании. Я хотел бы сделать запрос с именем пользователя и получить имя / фамилию + адрес электронной почты этого пользователя.

Я говорю:

results = conn.search('DC=corp,DC=XXXXXX,DC=com',
                      "(&(objectClass=person)(sAMAccountName=" + user_id + "))")

Когда я запускаю это, я получаю совпадение:

[DN: CN=YYYY\, ZZZZ,OU=Workers,DC=amr,DC=corp,DC=XXXXXX,DC=com - STATUS: Read - READ TIME: 2020-01-14T20:43:16.146874]

Итак, YYYY - это фамилия, ZZZZ - это первое имя Но электронной почты нет. Как я могу получить это? Спасибо.

1 Ответ

0 голосов
/ 15 января 2020

Необходимо указать атрибуты для возврата. Например:

results = conn.search('DC=corp,DC=XXXX,DC=com',
                      "(&(objectClass=person)(sAMAccountName=" + user_id + "))",
                      ldap3.SUBTREE,
                      attributes=['mail', 'sn', 'givenName'])
...