В учебнике this он создает пользовательскую форму входа, чтобы показать, как это делается. Пожалуйста, найдитеКак удалить регистрационную форму из этого примера CGI :: Application?
Как удалить пользовательский логин и вернуться к умолчанию?
Для кода выглядит следующим образом
sub cgiapp_init {
my $self = shift;
my %CFG = $self->cfg;
# ...
$self->authen->config(
DRIVER => [ 'Authen::Simple::LDAP',
host => '',
basedn => '',
],
STORE => 'Session',
LOGOUT_RUNMODE => 'logout',
LOGIN_RUNMODE => 'login',
POST_LOGIN_RUNMODE => 'okay',
RENDER_LOGIN => \&my_login_form,
);
$self->authen->protected_runmodes(
'mustlogin',
);
}
sub login : Runmode {
my $self = shift;
my $url = $self->query->url;
my $user = $self->authen->username;
if ($user) {
my $message = "User $user is already logged in!";
my $template = $self->load_tmpl('default.html');
$template->param(MESSAGE => $message);
$template->param(MYURL => $url);
return $template->output;
} else {
my $url = $self->query->self_url;
unless ($url =~ /^https/) {
$url =~ s/^http/https/;
return $self->redirect($url);
}
return $self->my_login_form;
}
}
Update
Здесь говорится, что CGI :: Application есть логин по умолчанию, который выглядит лучше, чем его.
Линия 159 определяет подпрограмму для использования формы для создания формы входа. Обратите внимание: плагин аутентификации поставляется с форматом , который вы можете использовать. Я - , в том числе и для демонстрации , как создать один из ваших , если вы действительно этого хотите. по умолчанию один выглядит намного лучше , чем у меня, поэтому вы можете пожелать комментарий out line 159!
Err ... какой дефолт? Вы имеете в виду «Как я могу использовать HTTP-аутентификацию через CGI :: Application?» (HTTP Basic Auth is, IMNSHO, отвратительный и лучше всего избегаемый, есть причина, по которой вы почти никогда не видите его на WWW) – Quentin
Вы прочитали учебник? Какой вход по умолчанию? «Готовый пример демонстрирует простую страницу входа в CGI. Аутентификация выполняется в отношении базы данных MySQL. Идентификатор сеанса хранится как файл cookie на стороне клиента (браузер). Публичные страницы могут видеть каждый, а частные страницы - Форма входа в систему использует SSL для обеспечения большей безопасности ». – Raoul
Я обновил вопрос с цитатой здесь, он говорит, что CGI :: Приложение имеет форму входа по умолчанию, которая является той, которую я люблю использовать =) –