Autentizace (KS webAPI): Porovnání verzí
(Založena nová stránka: Pro ověření uživatele se používá ''UserName'' autentizace, kdy se předává jméno a heslo uživatele při volání metody webové služby v části ''ClientCredent…) |
|||
Řádek 3: | Řádek 3: | ||
== Příklad == | == Příklad == | ||
'''SOAP''' | |||
<pre> | <pre> | ||
<security> | <security> | ||
<message clientCredentialType="UserName" /> | <message clientCredentialType="UserName" /> | ||
</security> | </security> | ||
</pre> | |||
'''REST''' | |||
<ol> | |||
<li> | |||
<b>Zabezpečení protokolu</b> | |||
<p>Všechny dotazy na API musí být zasílány prostřednictvím zabezpečeného protokolu HTTPS.</p> | |||
</li> | |||
<li> | |||
<b>Přístupová oprávnění</b> | |||
<p>Uživatel musí mít povolení k užívání API, které mu uděluje administrátor. K tomu je nezbytné mít vygenerováno jméno a heslo k API.</p> | |||
</li> | |||
<li> | |||
<b>Autentizace</b> | |||
<p>Pro autentizaci je třeba odeslat na adresu <i>.../KSAsServer/WebService/WebAPI/rest/users/authenticate</i> JSON body s údaji <i>"Username"</i> a <i>"Password"</i>. Pokud jsou tyto údaje správné, obdržíte <strong>token</strong>, který je nutný pro používání API po určitou dobu. Token i jeho platnost jsou vráceny v těle odpovědi.</p> | |||
</li> | |||
<li> | |||
<b>Použití tokenu</b> | |||
<p>Při každém volání API ,mimo autentizaci, je třeba zaslat platný token jedním ze dvou způsobů:</p> | |||
<ul class="ulAktualizace"> | |||
<li> | |||
V HEADER | |||
<p> | |||
Plain: <pre>Authorization - eyJ0eXAwibmFtZSI6InBhdmVIuMDGtBE1GxcdkwUuTTLDL4&</pre> | |||
Bearer: <pre>Authorization - Bearer eyJ0eXAwibmFtZSI6InBhdmVIuMDGtBE1GxcdkwUuTTLDL4&</pre> | |||
</p> | |||
</li> | |||
<li> | |||
V URI<br /> | |||
<pre>GET /KSAsServer/WebService/WebAPI/rest/KmenoveUdaje/Jmeno/Karel?<strong>token=eyJ0eXAwibmFtZSI6InBhdmVIuMDGtBE1GxcdkwUuTTLDL4&</strong></pre> | |||
</li> | |||
</ul> | |||
<p>Způsob HEADER je preferován před URI.</p> | |||
</li> | |||
</ol><br /> | |||
Požadavek: | |||
<pre> | |||
POST /KSAsServer/WebService/WebAPI/rest/user/authenticate | |||
body: | |||
{ | |||
"Username": "jmeno", | |||
"Password": "heslo" | |||
} | |||
</pre> | |||
Odpověď: | |||
<pre> | |||
{ | |||
"ErrorCode": 0, | |||
"ErrorMessage": null, | |||
"ErrorText": null, | |||
"IsError": false, | |||
"Message": "Created", | |||
"ResponseDatetime": "/Date(1720705997339+0200)/", | |||
"StatusCode": 201, | |||
"Token": "jkdsjflsdfjsdfklsjdflskdfjs.6tQew", | |||
"ValidTo": "/Date(1720715997000+0200)/" | |||
} | |||
</pre> | </pre> | ||
== Odkazy == | == Odkazy == | ||
* [[Klient (KS webAPI)]] | * [[Klient (KS webAPI)]] |
Verze z 10. 3. 2025, 11:31
Pro ověření uživatele se používá UserName autentizace, kdy se předává jméno a heslo uživatele při volání metody webové služby v části ClientCredentials. Tato metoda musí být nastavena v konfiguračním souboru klienta.
Příklad
SOAP
<security> <message clientCredentialType="UserName" /> </security>
REST
-
Zabezpečení protokolu
Všechny dotazy na API musí být zasílány prostřednictvím zabezpečeného protokolu HTTPS.
-
Přístupová oprávnění
Uživatel musí mít povolení k užívání API, které mu uděluje administrátor. K tomu je nezbytné mít vygenerováno jméno a heslo k API.
-
Autentizace
Pro autentizaci je třeba odeslat na adresu .../KSAsServer/WebService/WebAPI/rest/users/authenticate JSON body s údaji "Username" a "Password". Pokud jsou tyto údaje správné, obdržíte token, který je nutný pro používání API po určitou dobu. Token i jeho platnost jsou vráceny v těle odpovědi.
-
Použití tokenu
Při každém volání API ,mimo autentizaci, je třeba zaslat platný token jedním ze dvou způsobů:
-
V HEADER
Plain:
Authorization - eyJ0eXAwibmFtZSI6InBhdmVIuMDGtBE1GxcdkwUuTTLDL4&
Bearer:Authorization - Bearer eyJ0eXAwibmFtZSI6InBhdmVIuMDGtBE1GxcdkwUuTTLDL4&
-
V URI
GET /KSAsServer/WebService/WebAPI/rest/KmenoveUdaje/Jmeno/Karel?<strong>token=eyJ0eXAwibmFtZSI6InBhdmVIuMDGtBE1GxcdkwUuTTLDL4&</strong>
Způsob HEADER je preferován před URI.
-
V HEADER
Požadavek:
POST /KSAsServer/WebService/WebAPI/rest/user/authenticate body: { "Username": "jmeno", "Password": "heslo" }
Odpověď:
{ "ErrorCode": 0, "ErrorMessage": null, "ErrorText": null, "IsError": false, "Message": "Created", "ResponseDatetime": "/Date(1720705997339+0200)/", "StatusCode": 201, "Token": "jkdsjflsdfjsdfklsjdflskdfjs.6tQew", "ValidTo": "/Date(1720715997000+0200)/" }