Привет всем!
В середине августа планирую провести мощнейший вебинар🤔 по токенам (авторизация, аутентификация) с уклоном на практику.
Чтобы подготовиться к нему и быть в курсе, ожидайте серию тестов по этой теме — они будут публиковаться на этом канале @protestinginfo до начала вебинара.
Анонс с деталями представлю в начале августа.
Вебинар приурочен к старту новых потоков по тестированию бэкенда и подготовке к собеседованиям.
💻 На практике мы разберём различные способы авторизации на разных сервисах — от базовой аутентификации до OAuth 2.0. 💻 Также, возможно, затрону тему применения сертификатов при отправке запросов, которые активно используются у меня на работе в финтехе.
В середине августа планирую провести мощнейший вебинар
Чтобы подготовиться к нему и быть в курсе, ожидайте серию тестов по этой теме — они будут публиковаться на этом канале @protestinginfo до начала вебинара.
Анонс с деталями представлю в начале августа.
Вебинар приурочен к старту новых потоков по тестированию бэкенда и подготовке к собеседованиям.
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥65❤14❤🔥6👍4 3🆒1
Изучаем и закрепляем знания перед тестами
источник
На вебинаре я планирую разобрать часто используемые в работе: API Key, Basic Auth, Bearer Token, JWT (JSON Web Token), OAuth 2.0 и еще авторизация через куки, используя заголовок Cookie c значением sessionId
Authorization в Postman▪️ Наследование авторизации (Inherit auth from parent), что пригодится при группировке запросов в коллекции и папки для комплексного тестирования нескольких конечных точек одного веб-сервиса с разными HTTP-запросами, чтобы повторно использовать одни учетные данные вместо ввода этих параметров каждый раз при отправке запроса. По умолчанию запросы внутри коллекции или папки наследуют аутентификацию от родителя...▪️ Отсутствие авторизации (No auth), что не предполагает добавления учетных данных к запросу;▪️ Ключ API (API key) – в заголовок или в параметры HTTP-запроса добавляется пара ключ-значение. Чтобы использовать это для тестирования, предварительно нужно получить ключ разработчика API на стороне тестируемого сервера.▪️ Tокен на предъявителя (Bearer token) – это веб-маркер JSON (JWT, JSON Web Token), который представляет собой текстовую строку, включенную в заголовок запроса, надо предварительно получить токен разработчика API от тестируемого сервера.▪️ JWT-носитель (JWT bearer), что предполагает генерацию носителя JWT прямо в Postman с использованием криптографических алгоритмов с SHA (HMAC, RSASSA-PKCS1-v1_5, ECDSA, RSASSA-PSS), секрета, закрытого ключа и полезной нагрузки для генерируемого JWT-токена в формате JSON.▪️ Базовая аутентификация (Basic auth) — отправка подтвержденного имени пользователя и пароля вместе с HTTP-запросом. Эти учетные данные добавляются в заголовок HTTP-запроса Authorization в кодировке Base 64. Это не самый безопасный способ, т.к. перехваченные данные легко раскодировать.▪️ Дайджест аутентификации (Digest auth), когда клиент отправляет первый запрос к API, а сервер отвечает несколькими деталями, включая одноразовый номер, значение области действия (realm) и HTTP-ответ со статусом 401. На это клиент снова отправляет серверу зашифрованный массив данных, включая имя пользователя и пароль, вместе с данными, полученными от сервера в первом запросе...(читать далее)▪️ Аутентификация Hawk (Hawk authentication) позволяет использовать частичную криптографическую проверку, задав Hawk Auth ID, Hawk Auth Key и алгоритм хеширования для создания кода аутентификации сообщения (MAC).▪️ Подпись AWS (AWS Signature) для запросов к веб-сервисам Amazon. AWS использует для аутентификации специальную схему HTTP, основанную на ключе HMAC (код аутентификации хэш-сообщения) с ключом доступа и секретом.▪️ NTLM-аутентификация (Windows Challenge/Response) — поток аутентификации для операционной системы Windows и автономных систем с указанием домена или хоста.▪️ Akamai EdgeGrid от провайдера веб-услуг Akamai, что включает учетные данные (токен доступа, токен клиента и секрет клиента), полученные при регистрации клиентского приложения в Akamai.▪️ OAuth 1.0 – аутентификация через стороннего провайдера (например, войти через VK, Google, Github и пр.), которая позволяет клиентским приложениям получать доступ к данным, предоставляемым внешним API, не раскрывая имя пользователя и пароль. Протокол OAuth 1.0 иногда называют двусторонним (аутентификация только между клиентом и сервером) . Чтобы запросить пользовательские данные с помощью стороннего сервиса, клиентское приложение запрашивает маркер доступа, используя учетные данные, такие как ключ и секрет...(читать далее)▪️ OAuth 2.0 является развитием предыдущего вида и предполагает получение токена доступа к API, а затем его использование для проверки подлинности запросов. Обычно доступ к данным с помощью OAuth 2.0 отличается у разных провайдеров API, но включает несколько прямых и обратных запросов между клиентским приложением, пользователем и API...(читать далее)▪️ ASAP (Atlassian) - Протокол аутентификации Atlassian S2S (ASAP ) — это токен-носитель JSON Web Token (JWT), который сервер API может использовать для аутентификации запросов от клиента
источник
На вебинаре я планирую разобрать часто используемые в работе: API Key, Basic Auth, Bearer Token, JWT (JSON Web Token), OAuth 2.0 и еще авторизация через куки, используя заголовок Cookie c значением sessionId
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥41❤11👍8
Как правильно должен выглядеть HTTP-заголовок для отправки Bearer-токена?
Anonymous Quiz
11%
Token: Bearer <значение_токена>
18%
Bearer-Token: <значение_токена>
65%
Authorization: Bearer <значение_токена>
6%
Authentication: <значение_токена>
👍12✍3❤🔥2
Из каких трех частей, разделенных точками, состоит JSON Web Token (JWT)?
Anonymous Quiz
22%
Заголовок (Header), Полезная нагрузка (Payload), Ключ (Key)
27%
Заголовок (Header), Полезная нагрузка (Payload), Подпись (Signature)
20%
Токен доступа (Access Token), Полезная нагрузка (Payload), Подпись (Signature)
32%
Токен доступа (Access Token), Ключ (Key), Подпись (Signature)
👍7👌3 3💯2
Что представляет собой метод авторизации "Basic Auth"?
Anonymous Quiz
16%
Передачу уникального ключа в параметрах запроса
3%
Сложный протокол с перенаправлением пользователя для получения согласия
70%
Отправку логина и пароля, закодированных в формат Base64, в заголовке запроса
11%
Использование краткосрочного токена, полученного в обмен на Refresh-токен
5👍11❤🔥4🆒2
📚 ProTestingInfo 🔷 Канал по тестированию 📚
Видео размещено на YouTube канале моем и @qaroad Смотреть видео Будут вопросы - пишите
Vebinar_na_temu_Kak_dekompozirovat_proverki_dlya_funkcionalnosti.pdf
4.8 MB
Всем привет, обновила презентацию "Как декомпозировать проверки для функциональности и составить тест-кейсы для них" для удобства
Видео на YouTube - https://youtu.be/U0n6Q2ui_u4
Видео на Rutube - https://rutube.ru/video/4a87a4c21666343549bba02c7d326bd3/?r=wd
Видео на YouTube - https://youtu.be/U0n6Q2ui_u4
Видео на Rutube - https://rutube.ru/video/4a87a4c21666343549bba02c7d326bd3/?r=wd
76❤23🆒4❤🔥3✍3😎1
Какую информацию содержит Payload (Полезная нагрузка) в JWT?
Anonymous Quiz
28%
Тип токена и алгоритм подписи.
23%
Секретный ключ для проверки подписи.
42%
"Утверждения" (claims) - информацию о пользователе, например, username.
6%
Путь к файлам сертификатов.
❤5👍1🌚1💯1🆒1
Приложение просит вас предоставить ему доступ к вашим контактам в Google. Вы соглашаетесь на странице Google, и приложение получает доступ, не зная вашего пароля от Google. Какой механизм здесь используется?
Anonymous Quiz
10%
Basic Auth
25%
API Key
6%
Digest Auth
59%
OAuth 2.0
👍7✍4👨💻2👌1
Вы получили JWT-токен. Вы вставили его на сайт jwt.io и смогли прочитать полезную нагрузку (payload), например, ваш user_id. Почему это возможно и безопасно?
Anonymous Quiz
8%
Это небезопасно, токен скомпрометирован
25%
Потому что токен зашифрован, а сайт jwt.io имеет секретные ключи
53%
Потому что Payload в JWT не шифруется, а кодируется в Base64
14%
Потому что Header токена содержит флаг public: true
👍7🤣2💅1💘1
GetAnalyst_Тестирование_API_ВТБ_Практическое_руководство_Postman.pdf
15.2 MB
Одним им из первых и важнейших шагов при интеграции с внешней
системой является исследовательское тестирование её API.
Я попробовала и мне понравилось. Рекомендую и вам!
26💘9❤7👍5
Следовать инструкциям файла "Исследование REST API через Postman для интеграции с платежной системой ВТБ"
Интеграция через редирект - https://sandbox.vtb.ru/sandbox/ru/integration/structure/redirect-integration.html
Тестирование
Тестовые карты
https://sandbox.vtb.ru/sandbox/ru/integration/structure/test-cards.html
Статус платежа - https://sandbox.vtb.ru/sandbox/ru/integration/api/rest.html#payment-status
Полезный опыт, можно и другие ручки протестировать, связанных с оплатой.
Интеграция через редирект - https://sandbox.vtb.ru/sandbox/ru/integration/structure/redirect-integration.html
Тестирование
Тестовые карты
https://sandbox.vtb.ru/sandbox/ru/integration/structure/test-cards.html
Статус платежа - https://sandbox.vtb.ru/sandbox/ru/integration/api/rest.html#payment-status
Полезный опыт, можно и другие ручки протестировать, связанных с оплатой.
6❤🔥15🔥8💘1
В данном примере авторизация происходит через тело запроса, а на вебинаре, который я хочу провести в августе, будут использованы на практике 5 разных способов авторизации (мной хорошо ознакомлены и изучены).
Вебинар для тех кто начинает знакомиться с Postman, кто хочет закрепить имеющиеся знания. Анонсы вебинара и курса по подготовке на собеседования, курса по тестированию бэкенда состоится в начале августа. А пока будут тесты и много других рекомендаций.
Вебинар для тех кто начинает знакомиться с Postman, кто хочет закрепить имеющиеся знания. Анонсы вебинара и курса по подготовке на собеседования, курса по тестированию бэкенда состоится в начале августа. А пока будут тесты и много других рекомендаций.
👍22❤5🫡3🆒1
Вы пытаетесь отправить запрос к защищенному API, но получаете ошибку 403 Forbidden. При этом вы уверены, что ваш токен валиден и не просрочен. Что является наиболее вероятной причиной?
Anonymous Quiz
6%
Вы отправили токен в неверном заголовке.
72%
Ваш токен не обладает необходимыми правами для доступа к этому конкретному ресурсу
3%
Сервер временно не работает
19%
Вы используете Basic Auth вместо Bearer Token
👍7🌚2🤝2👨💻1
Вы настраиваете Postman для работы с API финтех-сервиса. Вас попросили установить файлы client.crt и client.key. Какой тип авторизации вы будете настраивать?
Anonymous Quiz
43%
OAuth 2.0 с указанием Client ID и Client Secret
10%
Bearer Token, вставив содержимое файлов в заголовок
41%
Аутентификацию по сертификатам в настройках Postman
6%
Basic Auth, где логин - это имя файла сертификата
👍6✍4👌1🤣1🆒1
Какой тип авторизации подходит для работы с JWT токенами?
Anonymous Quiz
16%
Basic Auth
3%
Digest Auth
78%
Bearer Token
2%
NTLM Authentication
👍5✍3💯2
Что означает Grant Type "Authorization Code" в OAuth 2.0?
Anonymous Quiz
34%
Токен получается напрямую по логину и паролю
29%
Используется поток с перенаправлением через браузер
12%
Токен передается в URL
25%
Авторизация происходит через Basic Auth
✍5👍2👨💻2
Всем привет! Хочу рассказать о нашем партнёрстве с Валерой.
Мы познакомились в нельзяграме, когда я смотрела эфир у Раисы Липатовой (тоже ментор и препод по тестированию, спикер) с Валерой - это было четыре года назад. Эфир был про его путь и профессиональный рост. О боже, как летит время. Тогда я узнала, что Валера из Омска, и это меня зацепило, потому что я тоже из Омска.
Наше общение продолжилось: мы делились рекомендациями, обменивались опытом и инструментами.
Вскоре Валера начал разрабатывать свои курсы по автоматизации тестирования на Python. Как раз о них вы прочитаете ниже. Я прошла все его курсы, кроме Professional (пока в планах).
Позже Валера создал крутое приложение с несколькими микросервисами, на котором можно глубоко протестировать бэкенд. Он первым предложил мне идею сделать курс по ручному тестированию бэкенда, поделился схемой архитектуры, «ручками» и нужными инструментами. Я вдохновилась, и скоро у меня стартует практический курс по бэкенду.
А на курсах Валеры участники учатся разрабатывать скрипты для тестирования REST API, работать с базами данных и выполнять реальные практические задачи.
Для меня важно постоянно закреплять знания, соответствовать требованиям рынка и узнавать новые технологии. Стоит немного расслабиться, и уже сложно найти достойную работу с желаемой зарплатой.
Сегодня на рынке востребованы микросервисная архитектура, интеграции, кэширование, асинхронность, разные подходы к работе с API как в ручном тестировании, так и в автоматизации.
Я рада, что у нас с Валерой до сих пор остаются доверительные отношения.
Мы познакомились в нельзяграме, когда я смотрела эфир у Раисы Липатовой (тоже ментор и препод по тестированию, спикер) с Валерой - это было четыре года назад. Эфир был про его путь и профессиональный рост. О боже, как летит время. Тогда я узнала, что Валера из Омска, и это меня зацепило, потому что я тоже из Омска.
Наше общение продолжилось: мы делились рекомендациями, обменивались опытом и инструментами.
Вскоре Валера начал разрабатывать свои курсы по автоматизации тестирования на Python. Как раз о них вы прочитаете ниже. Я прошла все его курсы, кроме Professional (пока в планах).
Позже Валера создал крутое приложение с несколькими микросервисами, на котором можно глубоко протестировать бэкенд. Он первым предложил мне идею сделать курс по ручному тестированию бэкенда, поделился схемой архитектуры, «ручками» и нужными инструментами. Я вдохновилась, и скоро у меня стартует практический курс по бэкенду.
А на курсах Валеры участники учатся разрабатывать скрипты для тестирования REST API, работать с базами данных и выполнять реальные практические задачи.
Для меня важно постоянно закреплять знания, соответствовать требованиям рынка и узнавать новые технологии. Стоит немного расслабиться, и уже сложно найти достойную работу с желаемой зарплатой.
Сегодня на рынке востребованы микросервисная архитектура, интеграции, кэширование, асинхронность, разные подходы к работе с API как в ручном тестировании, так и в автоматизации.
Я рада, что у нас с Валерой до сих пор остаются доверительные отношения.
protestinginfo.ru
Закрепление знаний по тестированию ПО
22❤11🔥4👏2💘1 1