我正在尝试使用其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,
);
答案 0 :(得分:2)
这是LDAP到A / D的标准FAQ项。
您必须创建一个特殊用户才能绑定到A / D,并在客户端中对凭据进行硬编码。 AFAIK没有办法解决这个问题,但是如果有更新的信息(几年前我解决了这个问题),我很想知道。
答案 1 :(得分:2)
您可以将凭据存储在一个单独的文件中,该文件以编程方式读取,并具有严格的权限,因此至少您不必将凭据直接嵌入源代码中。
答案 2 :(得分:1)
您应该在活动目录中创建一个用户(比如'aduser'),该用户可以拥有一个简单的密码。然后,您可以简单地授予该用户无权执行或访问任何内容的权限。 AD允许任何用户(甚至没有访问权限的用户)绑定到目录,但他们必须在域上拥有一个帐户。