Autentizace (KS webAPI): Porovnání verzí

Z Prirucky
Řádek 4: Řádek 4:
== Příklad ==
== Příklad ==


'''SOAP'''
<h3>SOAP</h3>
<pre>
<pre>
<security>
<security>
Řádek 11: Řádek 11:
</pre>
</pre>


'''REST'''
<h3>REST</h3>
<ol>
<ol>
     <li>
     <li>

Verze z 10. 3. 2025, 11:35

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

  1. Zabezpečení protokolu

    Všechny dotazy na API musí být zasílány prostřednictvím zabezpečeného protokolu HTTPS.

  2. 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.

  3. 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.

  4. 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.


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)/"
}

Odkazy