Уведомления

Группа в Telegram: @pythonsu

#1 Март 29, 2011 09:29:56

vak
От:
Зарегистрирован: 2007-05-04
Сообщения: 262
Репутация: +  0  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

Задача : проверить логин и пароль пользователя в Active Directory
Вроде как задача должна быть выполнимой для python-ldap, но не получается:

import ldap

server = 'ldap://192.168.0.3:389'
username = 'User'
password = 'Passwd'

l = ldap.initialize(server)
l.protocol_version = 3
s = l.simple_bind_s(username,password)
print s
Возможно есть уже готовые решения, подскажите плиз?



Офлайн

#2 Март 29, 2011 11:00:58

Vader
От:
Зарегистрирован: 2010-01-30
Сообщения: 152
Репутация: +  0  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

Если машина с которой вы собираетесь проверять логин находится в домене, то можно сделать при помощи PyWin32:

import win32security
try:
win32security.LogonUser('username','domain', 'password',win32security.LOGON32_LOGON_NETWORK, win32security.LOGON32_PROVIDER_DEFAULT)
except:
print 'Invalid credentials'
else:
print 'Ok'
Если разберетесь как сделать это при помощи python-ldap, напишите результат. Я сколько не колдовал, у меня так и не получилось :(



Отредактировано (Март 29, 2011 11:02:45)

Офлайн

#3 Март 29, 2011 11:41:23

vak
От:
Зарегистрирован: 2007-05-04
Сообщения: 262
Репутация: +  0  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

Vader
Если машина с которой вы собираетесь проверять логин находится в домене, то можно сделать при помощи PyWin32:
В том и дело, что даже не MSWindows. Обращения в AD с Linux.



Офлайн

#4 Март 29, 2011 18:06:00

asilyator
От:
Зарегистрирован: 2010-10-24
Сообщения: 276
Репутация: +  -2  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

Уточним терминологию.
AD - в Windows или Unix (samba) - видновый домен
LDAP - Unix.

Тебе нужна AD или таки LDAP?



Офлайн

#5 Март 29, 2011 18:09:05

Vader
От:
Зарегистрирован: 2010-01-30
Сообщения: 152
Репутация: +  0  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

asilyator
Уточним терминологию.
AD - в Windows или Unix (samba) - видновый домен
LDAP - Unix.

Тебе нужна AD или таки LDAP?
Можно я уточню?
AD - это служба каталогов, а LDAP - это протокол доступа к службе каталогов, в том числе и к AD :)



Офлайн

#6 Март 29, 2011 18:34:02

Vader
От:
Зарегистрирован: 2010-01-30
Сообщения: 152
Репутация: +  0  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

Кстати, не знаю, что я делал до этого, но только что попробовал и у меня, как ни странно, получилось залогиниться. Причем как в свой домен, так и в 2 чужих (в одном односторонний траст, в другом траста нет вообще). Попробуйте указать домен перед именем:

username = r'domain\user'
без этого в чужие домены оно логиниться не хочет.



Офлайн

#7 Март 29, 2011 19:16:57

asilyator
От:
Зарегистрирован: 2010-10-24
Сообщения: 276
Репутация: +  -2  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

Vader
Можно я уточню?
AD - это служба каталогов, а LDAP - это протокол доступа к службе каталогов, в том числе и к AD
AD есть и не мелкомягкий? Или по LDAP можно получить доступ к виндовому AD?



Офлайн

#8 Март 29, 2011 20:21:47

Vader
От:
Зарегистрирован: 2010-01-30
Сообщения: 152
Репутация: +  0  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

asilyator
AD есть и не мелкомягкий? Или по LDAP можно получить доступ к виндовому AD?
Не совсем так. Смотрите, существуют такие штуки, как службы каталогов. Вот Active Directory - это просто название одной из реализаций таких служб, и помимо AD существует еще куча всяких реализаций, например, OpenLDAP, Apache Directory, Novell NDS и т.п. Основное предназначение всех этих служб - хранить данные о различных ресурсах (пользователи, сетевые ресурсы и тп) в структурированном виде.
LDAP же - это стандартизированный _протокол_ который позволяет получать информацию о ресурсах из служб каталогов по сети. Расшифровывается он как Lightweight Directory Access Protocol. Все вменяемые службы каталогов его поддерживают, и Active Directory не исключение.

уффф… все… поумничал :)



Офлайн

#9 Март 30, 2011 00:45:50

asilyator
От:
Зарегистрирован: 2010-10-24
Сообщения: 276
Репутация: +  -2  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

Видновый AD поддерживает LDAP? o_O



Офлайн

#10 Март 30, 2011 01:10:12

Vader
От:
Зарегистрирован: 2010-01-30
Сообщения: 152
Репутация: +  0  -
Профиль   Отправить e-mail  

python-ldap -> авторизация пользователя в AD

asilyator
Видновый AD поддерживает LDAP? o_O
Вас зациклило что ли?
http://msdn.microsoft.com/en-us/library/aa772152



Отредактировано (Март 30, 2011 01:10:42)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version