phantom_token_client_credential
Директива `phantom_token_client_credential` настраивает учетные данные клиента, закодированные в base64, для интроспекции OAuth-токена в Phantom Token NGINX Module.
Описание
Директива phantom_token_client_credential необходима для Phantom Token NGINX Module, который реализует стандарт OAuth 2.0 Token Introspection, отправляя учетные данные клиента в Curity Identity Server. Эта директива ожидает два параметра: пару client ID и client secret, закодированную в base64. Когда поступает запрос с bearer token в Authorization header, NGINX извлечет этот токен и вызовет указанный introspection endpoint, используя учетные данные клиента, заданные этой директивой. Если интроспекция подтвердит действительный токен, соответствующий JWT извлекается и пересылается в backend services. Если токен недействителен или отсутствует, модуль откажет в доступе, возвращая 401 Unauthorized response.
Аргумент для этой директивы должен быть предоставлен в форме base64-кодирования, что гарантирует безопасную передачу как client ID, так и client secret в процессе интроспекции. Правильное использование этой директивы критично, поскольку любая ошибка в учетных данных может привести к сбою аутентификации и авторизации запросов к backend APIs. Общая работа модуля гарантирует, что доступ к защищенным ресурсам получат только запросы с действительными токенами, в соответствии с лучшими практиками безопасности для микросервисной архитектуры.
Пример конфига
location /api {
phantom_token_client_credential base64_encoded_client_id:base64_encoded_client_secret;
phantom_token_introspection_endpoint http://introspection.endpoint.com;
}Убедитесь, что клиентские учетные данные в base64 корректно закодированы; некорректная кодировка приведет к ошибкам аутентификации.
Будьте осторожны с раскрытием конфиденциальной информации; не храните учетные данные в явном виде в общедоступных конфигурационных файлах.
Убедитесь, что конечная точка интроспекции правильно настроена и доступна, иначе запросы могут быть отклонены из-за невозможности проверить токен.