У меня есть каталог, который я защитил с помощью HTTP-аутентификации .htpasswd / .htaccess. В файле .htaccess для каталога у меня есть это:
SSLRequireSSL
<Files .htaccess>
order allow,deny
deny from all
</Files>
AuthUserFile /var/www/xyz/.htpasswd
AuthName "Restricted Area"
AuthType Basic
Require valid-user
Когда я перехожу на страницу в защищенном каталоге, я вынужден перейти на https из-за директивы SSLRequireSSL, как я и надеялся. Это означает, что в тот момент, когда мне нужно ввести учетные данные, адрес браузера (Firefox) всегда начинается с HTTPS: //. Это здорово, но символ висячего замка SSL отсутствует до тех пор, пока я не введу учетные данные и не перейду на страницу в защищенный каталог.
Меня беспокоит, что это может означать, что вводимый мной пароль каким-то образом отправляется до того, как будет сформировано соединение SSL, и поэтому передается в виде обычного текста, а не в кодировке SSL.
Это обоснованное беспокойство? Спасибо.
Нет, все должно быть зашифровано SSL. Если вы использовали ненадежный сертификат, вы могли бы заметить, что предупреждение о доверии сертификата появляется перед запросом на вход.
Начальный 401
ответ, который запрашивает ваши учетные данные, будет 403
если бы это было на незашифрованном канале. Поскольку SSLRequireSSL
на месте, вы определенно в безопасности.