Tôi đã cố xác thực ứng dụng CGI của mình thông qua 2 trình điều khiển, một trình điều khiển sử dụng tên người dùng/mật khẩu được lưu trữ trong cơ sở dữ liệu và thư mục hoạt động ldap khác.Xác thực ứng dụng CGI sử dụng nhiều trình điều khiển
Sau đây là mã
$self->authen->config(
DRIVER => [ 'DBI',
DBH => $self->dbh,
TABLE => 'user',
CONSTRAINTS => {
'user.username' => '__CREDENTIAL_1__',
'MD5:user.password' => '__CREDENTIAL_2__'
},
],
DRIVER => [ 'Authen::Simple::LDAP',
host => 'ldapad.company.com',
basedn => 'OU=XXX,OU=XX,DC=XXX,DC=XXX',
binddn => 'CN=usename,OU=Users,OU=XXX,OU=AD,DC=XXX,DC=xxx',
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,
);
Làm thế nào để làm cho các ứng dụng kiểm tra các tài xế khác không được chứng thực với một. Ngay bây giờ, như mong đợi, tài xế của nó được liệt kê ở phía dưới hoạt động và cả hai đều làm, tùy thuộc vào đó được giao cuối cùng.