auth_jwt_enabled
Директива `auth_jwt_enabled` включает проверку аутентификации JWT для локаций NGINX.
Описание
Директива auth_jwt_enabled используется в контексте блоков http, server или location в конфигурациях NGINX для включения или отключения аутентификации JWT (JSON Web Token). Когда она установлена в 'on', эта директива активирует процесс валидации JWT для входящих запросов в указанном контексте. Эта проверка будет определять, присутствует ли в запросе действительный JWT, и, если настроено, она также извлечёт claims из JWT и поместит их в переменные окружения NGINX, что позволит дальнейшую обработку или контроль доступа на основе этих утверждений.
Директива принимает один аргумент, который может быть 'on' или 'off'. Установка в 'on' означает, что аутентификация JWT будет выполняться, тогда как 'off' отключает эту функцию, фактически позволяя доступ без проверки JWT. Ожидаемое поведение при неудачной валидации определяется директивой auth_jwt_redirect. Если валидация JWT не пройдена и auth_jwt_redirect установлена в 'on', пользователи будут перенаправлены на login URL, указанный в auth_jwt_loginurl. Эта функциональность особенно полезна для API и веб-приложений, которым требуется безопасный контроль доступа на основе аутентификации по токенам.
Пример конфига
location /protected {
auth_jwt_enabled on;
auth_jwt_loginurl /login;
auth_jwt_key /path/to/key;
}Убедитесь, что если auth_jwt_enabled установлено в 'on', соответствующие ключи и URL для входа также правильно настроены, чтобы избежать сбоев аутентификации.
Путаница с местоположением JWT может привести к неудачной аутентификации — убедитесь, что auth_jwt_location указывает на правильный заголовок или cookie, где хранится JWT.