Модуль http_auth_request
#
Предоставляет возможность авторизации клиента, основанной на результате подзапроса. Если подзапрос возвращает код ответа 2xx, доступ разрешается. Если 401 или 403 — доступ запрещается с соответствующим кодом ошибки. Любой другой код ответа, возвращаемый подзапросом, считается ошибкой.
При ошибке 401 клиенту также передаётся заголовок “WWW-Authenticate” из ответа подзапроса.
Модуль может быть скомбинирован с другими модулями доступа, такими как http_access и auth_basic с помощью директивы satisfy.
Пример конфигурации#
location /private/ {
auth_request /auth;
# ...
}
location = /auth {
proxy_pass ...
proxy_pass_request_body off;
proxy_set_header Content-Length "";
proxy_set_header X-Original-URI $request_uri;
}
Директивы#
auth_request#
- Синтаксис:
auth_request
uri | off;- Умолчание:
auth_request off;
- Контекст:
http, server, location
Включает авторизацию, основанную на результате выполнения подзапроса, и задаёт URI, на который будет отправлен подзапрос.
auth_request_set#
- Синтаксис:
auth_request_set
$переменная значение;- Умолчание:
—
- Контекст:
http, server, location
Устанавливает переменную в запросе в заданное значение после завершения запроса авторизации. Значение может содержать переменные из запроса авторизации, например, $upstream_http_*.