Webservice - Technische Dokumentation

Autorisierung über einen Webservice

Einführung

Der Webservice für die Autorisierung von E-Mail-Adressen erlaubt einer festgelegten Nutzergruppe den Zugriff auf das Career Center, falls SSO nicht verfügbar oder unzureichend für Ihren Anwendungsfall ist.

Sollten Sie die folgenden drei Fragen mit “Ja” beantworten benötigen Sie einen Webservice:

  • Der Zugriff auf das Career Center soll beschränkt werden
  • Meine anvisierte Zielgruppe besitzt nicht dieselbe E-Mail-Domain
  • Die anvisierte Zielgruppe kann nicht zu SSO hinzugefügt werden

Falls Sie Fragen haben, so kontaktieren Sie uns gerne unter: support.careercenter@jobteaser.com

 

1. Autorisierung

Für die Autorisierung durch den Webservice muss die Server IP von JobTeaser auf die Whitelist gesetzt werden und durch HTTP Basic Auth geschützt sein.

1.1. Protokoll Fließdiagramm

  +--------+                                 +---------------+
  |        |                                 |               |
  | Career |--(A)- Authorisation Request --->| Authorisation |
  | Center |                                 |    Server     |
  |        |<-(B)- Authorisation Response ---|               |
  +--------+                                 +---------------+

1.2. Endpunkt der Autorisierung

Der Autorisierungs-Endpunkt führt die Authentifizierung des Endbenutzers durch. Dies erfolgt durch Senden der E-Mail des Endbenutzers an den Autorisierungs-Endpunkt des Autorisierungs-Servers zur Authentifizierung und Autorisierung unter Verwendung von Anforderungsparametern.

Der Endpunkt der Autorisierung muss /authorize. sein.

Dabei muss TLS/SSL aktiviert sein. Dies sichert Sie gegen Datenverlust oder Manipulation ab.

1.3. Autorisierungsanfrage

Autorisierungsserver müssen die Verwendung HTTP GET Methoden ([RFC2616] Standard) am Autorisierungs-Endpunkt unterstützen.

Dabei werden die folgenden Parameter benutzt:

  • email ERFORDERLICH. Autorisierungsanfragen müssen den email Key enthalten. Ohne den E-Mail-Wert ist die Verwendung des Webservices nicht möglich.

Beispiel:

  GET /authorise?email=student@school.com HTTP/1.1
  Host: jobteaser.school.com

1.4 Autorisierungsantwort

1.4.1 Erfolgreiche Autorisierungsanfrage

Der Autorisierungsserver muss ein JSON mit dem HTTP Success Code 200 zurückgeben. Dieser sollte darüber hinaus folgende Parameter enthalten:

  • email ERFORDERLICH. Die E-Mail-Adresse, die der Autorisierungsanfrage übergeben wurde.
  • authorised ERFORDERLICH. Boolean das anzeigt, ob der Endnutzer für das Karrierecenter autorisiert wurde.

Hier ein nicht normiertes Beispiel, welches eine erfolgreiche Antwort unter Nutzung dieser Abfolge anzeigt:

  HTTP/1.1 200 OK
  Content-Type: application/json
  Cache-Control: no-store
  Pragma: no-cache

  {
    "email": "student@school.com",
    "authorised": true
  }

Ein weiteres Beispiel mit einer nicht-autorisierten Antwort:

  HTTP/1.1 200 OK
  Content-Type: application/json
  Cache-Control: no-store
  Pragma: no-cache

  {
    "email": "student@school.com",
    "authorised": false
  }

1.4.2. Fehlermeldung bei der Autorisierung

Der Autorisierungsserver muss ein JSON mit einem HTTP error code (400, 401 etc.) zurückgeben. Dieser sollte darüber hinaus folgende Parameter enthalten:

  • error ERFORDERLICH. Die Fehlerursache.
  • error_message OPTIONAL. Eine Erklärung der Fehlerursache für die Logs.

Hier ein nicht normiertes Beispiel, welches eine erfolgreiche Antwort unter Nutzung dieser Abfolge anzeigt:

  HTTP/1.1 200 OK
  Content-Type: application/json
  Cache-Control: no-store
  Pragma: no-cache

  {
    "error": "not_registred",
    "error_message": "The student is not registered inside our school.",
  }
War dieser Beitrag hilfreich?
0 von 0 fanden dies hilfreich

Kommentare

0 Kommentare

Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.