2010-06-29 5 views
1

Я пытаюсь проверить подлинность пользователей на моем сайте с их учетными данными LDAP. Однако привязка к активному каталогу сначала требует моих учетных данных, прежде чем я смогу аутентифицировать любые другие имена пользователей/пароли.
Я не хочу жестко указывать свои учетные данные в приложении. Какие-либо предложения?Вопрос аутентификации Active Directory LDAP

$self->authen->config( 
DRIVER => [ 'Authen::Simple::LDAP', 
host => 'ldapad.company.com', 
basedn => 'OU=XXX,OU=AD,DC=YYY,DC=ZZZ', 
binddn => 'CN=myname,OU=Users,OU=company,OU=AD,DC=company,DC=ZZZ', 
bindpw => 'secret', 
filter => '(cn=%s)', 

], 

CREDENTIALS   => [ 'authen_username', 'authen_password' ], 
STORE    => 'Session', 
LOGOUT_RUNMODE  => 'logout', 
LOGIN_RUNMODE  => 'login', 
POST_LOGIN_RUNMODE => 'okay', 
RENDER_LOGIN   => \&my_login_form, 

);

ответ

2

Это стандартный пункт часто задаваемых вопросов для LDAP для A/D.

Вы должны создать специального пользователя с целью привязки к A/D и жестко кодировать учетные данные в своем клиенте. AFAIK нет никакого способа обойти это требование, хотя, если есть более новая информация (я решил это несколько лет назад), я хотел бы знать.

2

Вы можете сохранить учетные данные в отдельном файле, который вы читаете программно со строгими разрешениями на него, поэтому, по крайней мере, вам не нужно вставлять учетные данные прямо в исходный код.

1

Вы должны создать пользователя в активном каталоге (например, «aduser»), который может иметь тривиальный пароль. Затем вы можете просто предоставить этому пользователю никаких прав на выполнение или доступ к чему-либо. AD позволяет любому пользователю (даже одному без прав доступа) связываться с каталогом, но у них должна быть учетная запись в домене.

0

Если только аутентифицированные пользователи могут привязываться к базе данных, просто соберите имя пользователя и пароль от пользователя и попытайтесь связать их. Если вы успешно свяжетесь, то пользовательское имя пользователя и пароль верны.

Смежные вопросы