Как определить, какой SSL-сертификат клиента используется подключением в mod_perl?

Я пишу веб-сервис на Perl, который будет работать по протоколу SSL (HTTPS) с клиентскими сертификатами. Как я могу определить, какой сертификат используется клиентом в текущем соединении, чтобы я мог отфильтровать нежелательные?

Примечание: веб-сервис запускается как скрипт mod_perl.

1 ответ

Решение

Нашел ответ на PerlMonks:

Используйте модуль Apache::SSLLookup

  sub handler {
    my $r = Apache::SSLLookup->new(shift);
    my $request_is_over_ssl = $r->is_https;
    my $certificate = $r->lookup_var('SSL_CLIENT_CERT');

    ...
  }

Ссылка на среду mod_ssl здесь.

Другие вопросы по тегам