Из нашей ЛВС доступ к bugzilla осуществляется по http. Для доступа извне - по https.


В «Обязательные настройки» прописал:
Urlbase - http://bugzilla.X.ru/
Sslbase - https://bugzilla.X.ru/


Захожу из нашей ЛВС на http://bugzilla.X.ru/ . Прохожу авторизацию. Замечаний нет. Все работает.


Захожу извне на https://bugzilla.X.ru/ . Ввожу имя и пароль. И почему то идет запрос на http://bugzilla.X.ru/indes.cgi , а поскольку извне порт 80 закрыт, то получаем отказ в авторизации.

В чем причина? Что я сделал не так? :(

12-07-2010 11:43:38
Если устанавливаю
ssl (Требовать обязательного использования SSL для доступа к этому экземпляру Bugzilla (только через sslbase). ) - для зарегистрированных пользователей.
В этом случаи из ЛВС тоже работает через https.

Нашел ошибку http://bzr.mozilla.org/bugzilla/3.6/rev … ember=6864

Внес изменения в файл \bugzilla\www\Bugzilla\Util.pm

Выделить код

Код:

#sub correct_urlbase {
#    my $ssl = Bugzilla->params->{'ssl'};
#    return Bugzilla->params->{'urlbase'} if $ssl eq 'never';
#
#    my $sslbase = Bugzilla->params->{'sslbase'};
#    if ($sslbase) {
#        return $sslbase if $ssl eq 'always';
#        # Authenticated Sessions
#        return $sslbase if Bugzilla->user->id;
#    }
#
#    # Set to "authenticated sessions" but nobody's logged in, or
#    # sslbase isn't set.
#    return Bugzilla->params->{'urlbase'};
#}



sub correct_urlbase {
    my $ssl = Bugzilla->params->{'ssl_redirect'};
    my $urlbase = Bugzilla->params->{'urlbase'};
    my $sslbase = Bugzilla->params->{'sslbase'};

    if (!$sslbase) {
        return $urlbase;
    }
    elsif ($ssl) {
        return $sslbase;
    }
    else {
        # Return what the user currently uses.
        return (uc($ENV{HTTPS} || '') eq 'ON') ? $sslbase : $urlbase;
    }
}

Но ошибка осталась :( т.е. при авторизации в bugzillа при протоколе https  нас посылаю по http.

Связался с автором изменений. Данная ошибка исправлена на ветки 3.6. На ветку 3.4 заплатку никто не будет делать т.к. на ветку 3.4 применяются только заплатки по безопасности. Вот так вот. Может кто знает как на 3.4 исправить данную ошибку?

1. Что мешает изнутри работать по https? С аутентификацией это не связано никак, можно и анонимно, не иметь http вообще.

SnowyOwl пишет

1. Что мешает изнутри работать по https? С аутентификацией это не связано никак, можно и анонимно, не иметь http вообще.

Я хотел чтобы в ЛВС работа была по http, а извне по https.
По http простая авторизация в bugzilla, а по https по клиентским сертификатам + авторизация Basic + авторизация bugzilla.

Сейчас http я отключил и работаем по https, что не совсем удобно т.к. приходится проходить непростую авторизацию как в ЛВС так и вне ЛВС.

Вопрос пишет

т.к. приходится проходить непростую авторизацию как в ЛВС так и вне ЛВС.

имеется ввиду что внутри ЛВС не должно было быть столько проверок пользователя (предполагалось работа только по http), а из-за данной ошибки вынуждены сидеть всегда по https и меть кучу проверок.