Tovább a tartalomhoz

Hitelesítés

A Restormban nincs „hitelesítés típusa” legördülő menü. Van helyette valami általánosabb: a hitelesítési kérés, egy teljes értékű kérés, amelynek az a feladata, hogy fejléceket állítson elő a többi kérés számára.

Az előny: így bármilyen séma modellezhető, olyanok is, amelyekkel egyetlen legördülő lista sem számol — kétlépéses csere, aláírt token, saját fejlesztésű API. A hátrány: egyszer meg kell írni.

Jobb kattintás egy változómappánHozzáadás ▸ Hitelesítési kérés.

A hívást először úgy kell beállítani, mint bármely más HTTP-kérést: metódus, URL, fejlécek, törzs. Ezután nyílik meg a Konfiguráció lap, amely a hitelesítésre jellemző három beállítást hordozza.

Egy hitelesítési kérés Konfiguráció lapja a három szakaszával: az előállított fejlécek, a lejárat másodpercben és a hitelesítési hibakódok

Azoknak a fejléceknek a listája, amelyeket ez az útvonal beszúr minden rá hivatkozó kérésbe. Minden érték egy a hitelesítési kérés válaszának törzsén kiértékelt kifejezés.

FejlécÉrték
Authorization{{token_type}} {{access_token}}

Szintén a válasz törzsén kiértékelt kifejezés, amely az érvényesség hosszát adja meg másodpercben — jellemzően {{expires_in}}. Üresen hagyva a token magától soha nem jár le.

Azok a HTTP-állapotkódok, amelyek — ha egy ezt az útvonalat használó kérés kapja őket — a token megújítását, majd automatikus újrapróbálkozást indítanak el. Alapértelmezés szerint: 401 és 403.

A hitelesítési kérés az az elem, amely a projektfában létrejön. A hitelesítési útvonal ugyanez az elem egy másik kérés szempontjából, abban a választóban, amely hozzácsatolja. A két kifejezés ugyanazt az entitást jelöli, a felület két különböző pontján.

A kérés lapján, a smartbarban egy Hitelesítési útvonal választó felsorolja a változómappa útvonalait. Az alapértelmezett felirat: Nincs hitelesítés.

Csatolás után az előállított fejlécek minden küldésnél beszúrásra kerülnek, a token a lejáratáig gyorsítótárban marad, egy 401 pedig észrevétlen megújítást vált ki.

Kérés: POST https://auth.exemple.test/oauth/token, a törzs x-www-form-urlencoded a grant_type=client_credentials, client_id={{clientId}}, client_secret={{clientSecret}} párokkal (a titok itt Titok típusú érték).

Előállított fejléc: Authorization = {{token_type}} {{access_token}}. Lejárat: {{expires_in}}.

Semmilyen kérés nem szükséges, ha az azonosítók már rendelkezésre állnak: elég a fejlécet magára a kérésre (vagy a mappára) beállítani:

Authorization = Basic {{base64Encode (append (append user ":") password)}}

Egy fejléc vagy egy kérésparaméter elegendő: X-API-Key = {{apiKey}}, ahol a kulcs Titok típusú változó.

Ehhez forgatókönyv készül: első hívás, a közbenső kód kinyerése, második hívás, majd Változó beállítása, hogy a token a futtatási változók közé kerüljön. A forgatókönyv további kérései a {{jeton}} kifejezéssel olvassák ki.

Egy specifikáció importálásakor a deklarált biztonsági sémák előre bekötött fejlécekké vagy paraméterekké fordulnak le, és a hozzájuk tartozó környezeti változó is elkészül:

Séma a specifikációbanAmit a Restorm beállít
apiKey (fejléc vagy kérés)A sémáról elnevezett pár, {{<schema>}} értékkel
http / basicAuthorization: Basic {{<schema>_credentials}}
http / bearer, oauth2, openIdConnectAuthorization: Bearer {{<schema>_token}}

Ezután már csak a változót kell kitölteni, vagy hitelesítési útvonallal kiváltani, ha automatikus megújításra van szükség.

Egyes protokollok nem HTTP-fejléceken keresztül működnek. Az azonosítóik magának a kérésnek a mezői:

ProtokollMezők
MQTTusername, password, kliensazonosító
AMQPusername, password, vhost
Redispassword
KafkaSASL-mechanizmus (plain, scram-sha-256, scram-sha-512), azonosító, jelszó, TLS
STOMPA CONNECT login és passcode fejléce
gRPCA hívás metaadatai

Ezek a jelszavak mindegyike elfogad Titok típusú értéket.