auth_basic_user_file

Директива auth_basic_user_file указывает файл, содержащий имена пользователей и хэши паролей для базовой HTTP-аутентификации. — NGINX HTTP Core

auth_basic_user_file
httpserverlocationlimit_except
Синтаксисauth_basic_user_file file;
По умолчаниюnone
Контекстhttp, server, location, limit_except
МодульNGINX HTTP Core
Аргументы1

Описание

Директива `auth_basic_user_file` используется в NGINX для указания пути к файлу, содержащему пары имён пользователей и хэшей паролей, необходимых для аутентификации пользователей через базовую HTTP-аутентификацию. Эта директива обычно используется в сочетании с директивой `auth_basic`, которая включает базовую аутентификацию для заданного контекста. Когда клиент делает запрос на сервер NGINX, настроенный для базовой аутентификации, сервер проверяет наличие директивы `auth_basic_user_file`. Если она присутствует, сервер читает указанный файл и сверяет имя пользователя и пароль, отправленные клиентом, с хранящимися хэшами. Файл должен иметь определённый формат: в каждой строке указано имя пользователя, за которым следует хэш пароля, сгенерированный с помощью инструмента вроде `htpasswd` из набора Apache HTTP Server. Процесс аутентификации направлен на ограничение доступа к конкретным ресурсам, гарантируя, что доступ получают только действующие пользователи. Важно обеспечить безопасное хранение файла с пользователями и недопущение его публичного доступа, чтобы предотвратить несанкционированный доступ к содержащимся в нём учётным данным. Кроме того, NGINX повышает безопасность, поддерживая различные криптографические алгоритмы хеширования для паролей, что затрудняет злоумышленникам компрометацию учётных записей пользователей.

Пример конфига

location /secret {
    auth_basic "Restricted Access";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

Файл пользователей должен быть доступен для чтения процессом NGINX; убедитесь, что права доступа к файлу настроены правильно.

Формат файла пользователей должен строго соблюдаться (username:hashed_password).

Если путь к файлу пользователей указан неверно, аутентификация не сработает, что приведёт к открытому доступу.