Токен JWT в заголовке почтальона



Я тестирую реализацию безопасности на основе токенов JWT на основе следующего статьи. Я успешно получил маркер от тестового сервера. Я не могу понять, как заставить клиентскую программу Chrome POSTMAN REST отправить токен в заголовке.



postman screenshot



мои вопросы следующие:



1) я использую правильное имя заголовка и/или интерфейс почтальона?



2) Нужно ли мне на базе 64 кодировать токен? Я думал Я могу просто отправить жетон обратно.

1183   8  

8 ответов:

для имени заголовка запроса просто используйте авторизацию. Поместите носителя перед жетоном. Я просто попробовал его и он работает для меня.

авторизация: носитель TOKEN_STRING

каждая часть JWT является значением в кодировке base64url.

вот изображение, если это помогает :)

Postman

обновление:

команда почтальона добавила "токен на предъявителя" на вкладку " авторизация": Updated postman

я добавляю к этому вопросу немного интересный совет, который может помочь вам, ребята, тестирование JWT API.

Это очень просто на самом деле.

когда вы войдете в свой Api (конечная точка входа), вы сразу же получите свой токен, и, как сказал @mick-cullen, вам придется использовать JWT в своем заголовке Как:

Authorization: Bearer TOKEN_STRING

Теперь, если вы хотите автоматизировать или просто сделать вашу жизнь проще, ваши тесты вы можете сохранить токен как глобальный, который вы можете вызвать на всех других конечные точки как:

Authorization: Bearer {{jwt_token}}

На Почтальона: Затем сделайте глобальную переменную в postman как jwt_token = TOKEN_STRING.

на конечной точке входа : Чтобы сделать его полезным, добавьте в начале вкладки тесты добавить:

var data = JSON.parse(responseBody);
postman.clearGlobalVariable("jwt_token");
postman.setGlobalVariable("jwt_token", data.jwt_token);

Я предполагаю, что ваш api возвращает токен в виде json на ответ как: {"jwt_token": "TOKEN_STRING"}, может быть какая-то вариация.

в первой строке вы добавляете ответ на данные varibale. Очистите свой глобальный И присвоить значение.

Итак, теперь у вас есть свой токен в глобальной переменной, что упрощает использование Authorization: Bearer {{jwt_token}} на всех ваших конечных точках.

надеюсь, что этот совет поможет.


EDIT
Что-то читать

о тестах на почтальона:тестовые примеры

Командная Строка: Ньюман

CI:интеграция с Дженкинс

Ницца сообщение в блоге: master api Test automation

у меня была такая же проблема в Flask и после попытки первые 2 решения, которые являются одинаковыми (Authorization: Bearer <token>), и получаю это:

{
    "description": "Unsupported authorization type",
    "error": "Invalid JWT header",
    "status_code": 401
}

мне удалось, наконец, решить ее можно с помощью:

Authorization: jwt <token>

думал, что это может сэкономить время для людей, которые испытывают то же самое.

вот как установить токен это автоматически

на Ваш логин / auth запрос

enter image description here

тогда для аутентифицированной страницы

enter image description here

Почему-то почтальон у меня не работал. Мне пришлось использовать расширение chrome под названием RESTED, которое действительно работало.

Я сделал так, как упоминал моплин .Но в моем случае сервис отправляет JWT в заголовках ответа, как значение под ключом "авторизация".

Authorization →Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJpbWFsIiwiZXhwIjoxNDk4OTIwOTEyfQ.dYEbf4x5TGr_kTtwywKPI2S-xYhsp5RIIBdOa_wl9soqaFkUUKfy73kaMAv_c-6cxTAqBwtskOfr-Gm3QI0gpQ

то ,что я сделал, это сделать глобальную переменную в postman as

ключ - >jwt
значение->бла-бла

в запросе на вход->вкладка тесты, добавить

postman.clearGlobalVariable("jwt");
postman.setGlobalVariable("jwt", postman.getResponseHeader("Authorization"));

в других запросах выберите вкладку заголовки и дайте

ключ->авторизация

value - > {{jwt}}

для людей, которые используют плагин WordPress Advanced Access Manager открыть проверки подлинности проверки подлинности.

поле заголовка должно поставить проверка подлинности вместо авторизация

enter image description here

ААМ упомянул об этом внутри их документация,

внимание! ААМ не использует стандартный заголовок авторизации как он пропущен большинство сервер Apache. ...


надеюсь, что это поможет кому-то! Спасибо за другие ответы помогли мне тоже много!!

Comments

    Ничего не найдено.