Вопрос аутентификации Active Directory LDAP - PullRequest
1 голос
/ 29 июня 2010

Я пытаюсь аутентифицировать пользователей на своем сайте по их учетным данным 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,

);

Ответы [ 3 ]

2 голосов
/ 29 июня 2010

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

2 голосов
/ 29 июня 2010

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

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

1 голос
/ 08 июля 2010

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

...