.. _auth-label: Authentifizierung ----------------- Alle Anfragen müssen authentifiziert sein, durch eine der beiden folgenden Möglichkeiten: * Per API Key, der vom User in der `Kontoverwaltung `_ erzeugt und verwaltet werden kann. Dieser wird per `Basic Authentication `_ als Username mit beliebigem Passwort verwendet. Diese Methode ist **empfohlen** für die meisten Anwender. * Per Token, das unter ``/api/v1/token`` erzeugt werden kann (10 Minuten gültig). Dies wird ebenfalls per `Basic Authentication `_ als Username (mit beliebigem Passwort) verwendet. Diese Methode wird empfohlen, falls innerhalb kurzer Zeit viele Anfragen gestellt werden, da sie am einfachsten für unsere Server zu bewältigen ist. .. note:: Stellen Sie sicher, dass die Anfragen per ``https`` gestellt werden. Unverschlüsselte ``http`` Anfragen werden abgewiesen. **Beispiel Curl**: .. sourcecode:: bash curl --user $API_KEY:unused https://notar.direct/api/v1/token -X GET curl --user 12345678:secret https://notar.direct/api/v1/token -X GET **Beispielrückgabe**: .. sourcecode:: http HTTP/1.1 200 OK Vary: Accept Content-Type: text/json .. sourcecode:: json { "token": "eyJhbGciOiJIUzI1NiIsImV4cCI6MTM4NTY2OTY1NSwiaWF0IjoxMzg1NjY5MDU1fQ.eyJpZCI6MX0.XbOEFJkhjHJ5uRINh2JA1BPzXjSohKYDRT472wGOvjc" } **Beispiel Authentifzierung (curl)**: .. sourcecode:: http curl --user eyJhbGciOiJIUzI1NiIsImV4cCI6MTM4NTY2OTY1NSwiaWF0IjoxMzg1NjY5MDU1fQ.eyJpZCI6MX0.XbOEFJkhjHJ5uRINh2JA1BPzXjSohKYDRT472wGOvjc:unused http://notar.direct/api/v1/something -X GET Einträge werden für den Mandanten abgefragt/hinzugefügt/geändert, der im Header authentifiziert ist. Passwörter werden als `PBKDF2 `_ Hash gespeichert.