auth_jwt_extract_var_claims
Директива `auth_jwt_extract_var_claims` извлекает указанные claims из JWT и делает их доступными в виде переменных NGINX.
Описание
Директива auth_jwt_extract_var_claims используется для извлечения конкретных claims из JWT (JSON Web Token) и сохранения их как переменные NGINX, которые можно использовать в конфигурации NGINX. Эта директива требует в качестве аргумента список имён claims, разделённых пробелами, и эти claims будут обрабатываться при валидации JWT. Например, если указать эту директиву для извлечения claims sub и exp, вы сможете затем получить к ним доступ в конфигурации как $jwt_claim_sub и $jwt_claim_exp соответственно.
Эта директива может применяться в контекстах http, server или location, что даёт гибкость при развертывании аутентификации на основе JWT и извлечения claims в архитектуре сервиса. При использовании совместно с другими директивами, такими как auth_jwt_enabled, она обеспечивает высоконастраиваемый механизм обработки JWT, позволяющий NGINX динамически оценивать и включать в обработку запроса пользовательские claims, связанные с безопасностью.
Пример конфига
location /secure {
auth_jwt_enabled on;
auth_jwt_key /path/to/your.key;
auth_jwt_extract_var_claims sub exp;
proxy_pass http://backend;
}Убедитесь, что имена полей (claims) написаны правильно и соответствуют ожидаемым в JWT.
Извлечённые поля (claims) становятся доступными только после успешной проверки JWT; недействительные токены не приведут к извлечению полей.
Будьте осторожны при извлечении конфиденциальных полей (claims) в переменные NGINX; убедитесь, что они надёжно защищены.