Автентифікація
У Restorm немає розкривного меню «тип автентифікації». Є щось загальніше — запит автентифікації, повноцінний запит, роль якого полягає у виробленні заголовків для інших.
Перевага: змоделювати можна будь-яку схему, зокрема й ті, яких не передбачає жоден розкривний список — обмін у два кроки, підписаний токен, власноруч зроблений API. Недолік: доведеться описати це один раз.
Створення маршруту автентифікації
Section titled “Створення маршруту автентифікації”Клацніть правою кнопкою на теці середовищ ▸ Додати ▸ Запит автентифікації HTTP.
Спочатку налаштуйте виклик, як будь-який запит HTTP: метод, URL, заголовки, тіло. Потім відкрийте його вкладку Конфігурація, де зібрано три налаштування, властиві автентифікації.

Вироблені заголовки
Section titled “Вироблені заголовки”Перелік заголовків, які цей маршрут додаватиме до кожного запиту, що на нього посилається. Кожне значення — це вираз, обчислений на тілі відповіді запиту автентифікації.
| Заголовок | Значення |
|---|---|
Authorization | {{token_type}} {{access_token}} |
Термін дії (секунди)
Section titled “Термін дії (секунди)”Вираз, який теж обчислюється на тілі відповіді й дає тривалість чинності в
секундах — зазвичай {{expires_in}}. Якщо його не заповнити, токен ніколи не
спливає самостійно.
Коди помилок автентифікації
Section titled “Коди помилок автентифікації”Статуси HTTP, які, отримані запитом, що використовує цей маршрут, спричиняють
поновлення токена й автоматичну повторну спробу. Типово: 401 і 403.
Два терміни, одна річ
Section titled “Два терміни, одна річ”Запит автентифікації — це елемент, який ви створюєте в дереві. Маршрут автентифікації — той самий елемент, побачений з іншого запиту, у перемикачі, що його приєднує. Обидва терміни позначають одну сутність у двох місцях інтерфейсу.
Приєднання маршруту до запиту
Section titled “Приєднання маршруту до запиту”На вкладці запиту, у smartbar, перемикач Маршрут автентифікації перелічує маршрути теки середовищ. Типовий підпис — Без автентифікації.
Після приєднання вироблені заголовки додаються під час кожного надсилання,
токен кешується до спливання терміну дії, а 401 спричиняє прозоре поновлення.
Поширені рецепти
Section titled “Поширені рецепти”Bearer / OAuth 2 client credentials
Section titled “Bearer / OAuth 2 client credentials”Запит: POST https://auth.exemple.test/oauth/token, тіло
x-www-form-urlencoded з grant_type=client_credentials,
client_id={{clientId}}, client_secret={{clientSecret}}
(де секрет є значенням типу «Секрет»).
Вироблений заголовок: Authorization = {{token_type}} {{access_token}}.
Термін дії: {{expires_in}}.
Жодного запиту не потрібно, якщо облікові дані у вас уже є: просто задайте заголовок на запиті (або на теці):
Authorization = Basic {{base64Encode (append (append user ":") password)}}
Ключ API
Section titled “Ключ API”Достатньо заголовка або параметра запиту: X-API-Key = {{apiKey}}, де ключ є
змінною типу «Секрет».
Токен, отриманий у два виклики
Section titled “Токен, отриманий у два виклики”Створіть сценарій: перший виклик, вилучення
проміжного коду, другий виклик, а потім Задати змінну, щоб покласти токен до
змінних запуску. Наступні запити сценарію читають його як {{jeton}}.
Що робить імпорт
Section titled “Що робить імпорт”Під час імпорту специфікації оголошені схеми безпеки перетворюються на заздалегідь під’єднані заголовки або параметри, для яких за вас створюється змінна середовища:
| Схема у специфікації | Що задає Restorm |
|---|---|
apiKey (заголовок або запит) | Пару, названу за схемою, зі значенням {{<schema>}} |
http / basic | Authorization: Basic {{<schema>_credentials}} |
http / bearer, oauth2, openIdConnect | Authorization: Bearer {{<schema>_token}} |
Вам залишається лише заповнити змінну або замінити її маршрутом автентифікації, якщо вам потрібне автоматичне поновлення.
Нативні облікові дані за протоколами
Section titled “Нативні облікові дані за протоколами”Деякі протоколи не використовують заголовки HTTP. Їхні облікові дані — це поля самого запиту:
| Протокол | Поля |
|---|---|
| MQTT | username, password, ідентифікатор клієнта |
| AMQP | username, password, vhost |
| Redis | password |
| Kafka | Механізм SASL (plain, scram-sha-256, scram-sha-512), ідентифікатор, пароль, TLS |
| STOMP | Заголовки login і passcode у CONNECT |
| gRPC | Метадані виклику |
Кожен із цих паролів приймає значення типу «Секрет».