Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Dem Endanwender macht oAuth2 das Leben deutlich einfacher, da man sich nicht mehr diverse Anmeldenamen und -passwörter für alle möglichen Dienste merken muss.
Einem potenziellen Angreifer wird es durch das Hin- und Herschicken von kryptischen Zeichen und das ständige Rückversichern (ähnlich Asterix und Obelix beim römischen Amt) sehr schwer bis quasi unmöglich gemacht die Anmeldedaten des Benutzers/Mitgliedes abzufangen und böswillig zu nutzen.

Technische Erklärung

Note

Für externe Dienste schalten wir nur den "Authorization Grant" als Berechtigungsmethode frei. Daher beschränkt sich die Anleitung auf diesen "Grant-Type"

Erste Anfrage:

GET Die Anbindung erfolgt gemäß oauth2 Standard gegen https://iam.dlrg.net/auth/oauth2realms/authorize
mit den Parametern:

  • response_type=code
  • client_id={vom AK IT erhaltene Client-ID}
  • redirect_uri={URL des eigenen Dienstes}
  • scope={eine Liste der Berechtigungen, die für den Dienst vom Nutzer erbeten werden}properties
  • state={ein CSRF-Token} (optional)

...

  • code={der Autorisierungscode}
  • state={das CSRF-Token der vorherigen Anfrage}

...

  • grant_type=authorization_code
  • client_id={vom AK IT erhaltene Client-ID}
  • client_secret={vom AK IT erhaltenes Client-Passwort}
  • redirect_uri={URL des eigenen Dienstes}
  • code={der Autorisierungscode}

...

  • token_type: Bearer
  • expires_in: 3600
  • access_token: {das Token, welches u.a. die Benutzer-ID und die erhaltenen Rechte [Scopes] beinhaltet)
  • refresh_token: {ein "Auffrischungstoken", mit dem ein neues Token generiert werden kann, sollte dieses ungültig geworden sein}

...

  • profile : das Recht, den Benutzername, Vorname und Nachname des Nutzers abfragen zu dürfen
  • email : das Recht, die Email-Adresse des Nutzers abfragen zu dürfen

...

Folgende Werte sind in der Antwort (JSON) bei vorhandener Berechtigung abrufbar:

...

languagejs

...

master 

Die Einrichtung muss du die Gliederung selbst erfolgen - es erfolgt keinen Support durch den AK IT bei der Einrichtung in anderen Diensten.