OAuth

Richten Sie die sichere OAuth 2.0-Authentifizierung in Ideanote ein.

OAuth ist ein branchenführendes Autorisierungsframework, das Nutzern sicheren Zugriff auf Ressourcen ermöglicht, ohne dass sie ihre Zugangsdaten weitergeben müssen.

OAuth wird von großen Technologieunternehmen und in zahlreichen Anwendungen eingesetzt und hat die Interaktion von Nutzern mit Web- und Mobilservices revolutioniert.

Die OAuth-Authentifizierung lässt sich nahtlos in Drittanbieterdienste integrieren und schützt dabei vertrauliche Informationen.

Nutzen Sie die Flexibilität und Nutzerorientierung von OAuth, mit dem Nutzer bequem Zugriff auf ihre Daten gewähren können, ohne ihre Anmeldedaten preiszugeben.

Authentifizierungseinstellungen mit Anmeldeoptionen; OAuth 2.0 ist in einem Menü zum Hinzufügen hervorgehoben.
Wählen Sie OAuth unter „Einstellungen“ und „Erste Schritte“ aus
  1. Navigieren Sie in Ihrem Workspace zu den Einstellungen und dann zuAuthentifizierung
  2. Klicken Sie auf Add und wählen Sie OAuth 2.0
  3. Gehen Sie den angezeigten Einrichtungsdialog durch.

‍

OAuth-Einstellungsseite mit
Starten Sie die OAuth-Konfiguration in Ihrem Ideanote-Workspace

‍

Authentifizierung mit OAuth

Implementierungsleitfaden

OAuth-Logo (schwarz-weißer Kreis mit „A“ und Raster) und Auth0-Logo (weißes abstraktes Symbol auf dunklem Hintergrund).

OAuth 2.0 ist das branchenübliche Protokoll für die Autorisierung. OAuth 2.0 stellt die einfache Implementierung für Client-Entwickler in den Vordergrund und bietet zugleich spezifische Autorisierungsabläufe für Anwendungen wie Ideanote.

Ideanote unterstützt einen auf OAuth 2.0 basierenden Authorization Code Flow. Dies ist der gebräuchlichste OAuth-2.0-Grant-Typ. In Verbindung mit Ideanote läuft der Ablauf ungefähr so ab:

  1. Ideanote leitet Ihren Nutzer zu einer Anmeldeseite weiter, die Sie kontrollieren (oder in Ihr System integrieren) und mit der der Nutzer bereits vertraut ist.
  2. Der Nutzer gibt seine Zugangsdaten ein und versucht, sich zu authentifizieren.
  3. Sind die Zugangsdaten gültig, wird der Nutzer mit einem Autorisierungscode als Abfrageparameter in der URL zurück zu Ideanote geleitet.
  4. Ideanote tauscht diesen Autorisierungscode anschließend über eine Kommunikation mit Ihrer API gegen ein Zugriffstoken aus.
  5. Ideanote verwendet dieses Zugriffstoken zur Autorisierung und ruft von Ihrer API einige Nutzerinformationen ab, etwa E-Mail-Adresse, ID (oder sub), Avatar, bevorzugte Spracheinstellung und Name.

Wenn Sie sich näher mit diesem Thema befassen möchten, ist dies eine hervorragende Informationsquelle.

‍

Vorteile

  • Eine einfache Möglichkeit, eine starke Authentifizierung sicherzustellen.
  • Ihre Nutzer melden sich über ein System an, dem sie bereits vertrauen, und geben ihre Zugangsdaten niemals direkt an Ideanote weiter.
  • Da sich Ihre Nutzer direkt über Ihr System (oder ein von Ihnen kontrolliertes System) authentifizieren, behalten Sie die volle Kontrolle darüber, wer Zugriff auf Ihren Ideanote-Workspace hat.
  • OAuth 2.0 ist ein Industriestandard, den Sie zur Authentifizierung nicht nur bei Ideanote, sondern auch bei Tausenden von Softwarelösungen verwenden können.

‍

Voraussetzungen

Sie benötigen entweder:

  1. Sie verwenden bereits einen Anmeldeanbieter für Ihr eigenes System, der OAuth 2.0 unterstützt, beispielsweise Okta, Facebook, Google, Github und viele andere. Oder:
  2. Betreiben Sie selbst einen OAuth-2-Authentifizierungsserver, der der OAuth-2.0-Spezifikation entspricht

‍

Wichtiger Hinweis:

Um mit der OAuth-2.0-basierten Authentifizierung zu beginnen, konsultieren Sie zunächst die Dokumentation des Anmeldeanbieters, den Sie für Ihr System verwenden. Dort erfahren Sie, wie Sie über dessen Benutzeroberfläche eine OAuth-Integration oder -Anwendung erstellen.

Sie müssen einige Angaben von dort in die Konfiguration Ihres Ideanote-Workspaces kopieren und umgekehrt. Auf die Einzelheiten gehen wir gleich ein.

Damit Sie schneller starten können, haben wir unten eine kleine Liste mit direkten Links zur relevanten Dokumentation einiger beliebter Anmeldeanbieter zusammengestellt, die OAuth 2.0 unterstützen:

Google

Slack

Discord

Dropbox

Github

Facebook

Typischerweise funktionieren diese nach einem der folgenden Muster: Sie erstellen eine OAuth-Anwendung oder -Integration. Dort finden Sie eine Client-ID und ein Client-Secret sowie eine Liste der unterstützten OAuth-Bereiche. Außerdem können Sie eine oder mehrere Weiterleitungs-URLs eingeben. Schließlich sollte eine Liste relevanter API-Endpunkte angezeigt werden, etwa der Autorisierungsendpunkt und der Token-Endpunkt.

OAuth-Integrationseinstellungen mit Client-ID, Geheimnissen, Weiterleitungs-URIs, Anwendungsdetails und Meta for Developer
Github

Diese Abbildungen zeigen Beispiele für OAuth-2.0-Integrationen. Die erste stammt von Github, die zweite von Facebook/Meta.

Sobald Sie eine OAuth-Anwendung/-Integration erstellt haben oder Ihren eigenen OAuth-2.0-Autorisierungsserver hosten, können Sie mit der Einrichtung in Ihrem Ideanote-Workspace fortfahren.

Ihren Ideanote-Workspace konfigurieren

‍

Schritt 1

  1. Navigieren Sie in Ihrem Workspace zu Einstellungen und dann zu Authentifizierung
  2. Klicken Sie auf Add und wählen Sie OAuth 2.0
  3. Wählen Sie Ihren Anmeldeanbieter aus
OAuth-Einstellungsseite mit Anzeige von
Schritt 1 – Beginnen Sie mit der Konfiguration von OAuth in Ihrem Ideanote-Workspace

‍

Schritt 2

  1. Gehen Sie zu Grundlagen
  2. Konfigurieren und passen Sie die allgemeinen Einstellungen an
OAuth-Einstellungen, Bereich „Grundlagen“ mit einem Feld für benutzerdefinierten Text der Anmeldeschaltfläche und Optionen zur Symbolanpassung.
Schritt 2 – Allgemeine OAuth-2.0-Einstellungen anpassen

‍

Schritt 3

  1. Gehen Sie zu Weiterleitungs-URL kopieren
  2. Kopieren Sie die URL in Ihre Zwischenablage. Diese URL muss im nächsten Schritt (Schritt 4) in die OAuth-2.0-Konfiguration Ihrer Anwendung/Integration eingefügt werden.
Screenshot der OAuth-Einstellungen mit dem Schritt „Weiterleitungs-URL kopieren“ und der angezeigten Weiterleitungs-URL.
Schritt 3 – URL-Weiterleitung

‍

Schritt 4

Bevor wir mit Schritt 4 fortfahren können, überprüfen wir kurz die grundlegende Funktionsweise eines OAuth-2.0-Authorization-Code-Flows:

  1. Wenn sich ein Nutzer über den Anmeldebildschirm Ihrer Anmeldeanwendung anmeldet, wird er zu einer URL weitergeleitet, die einen Autorisierungscode als Abfrageparameter enthält. Diese URL muss die OAuth-Weiterleitungs-URL von Ideanote sein.
  2. Wenn sich ein Nutzer über den Anmeldebildschirm Ihrer Anmeldeanwendung anmeldet, wird er zu einer URL weitergeleitet, die einen Autorisierungscode als Abfrageparameter enthält. Diese URL muss die OAuth-Weiterleitungs-URL von Ideanote sein.
  3. Wie im Abschnitt zu Schritt 3 erwähnt, müssen Sie die Ideanote-Weiterleitungs-URL in die OAuth-2.0-Konfiguration Ihrer Anwendung/Integration kopieren.
  4. Wenn Sie sicher sind, dass unsere Redirect-URL korrekt hinzugefügt wurde, klicken Sie bitte auf „Konfiguration hinzufügen“, und fahren wir fort.

‍

Weiter geht es mit Schritt 4

OAuth-Einstellungsformular „Konfiguration hinzufügen“ mit Feldern für Client-ID und Client Secret sowie einer Schaltfläche „Speichern“.

‍

  1. Gehen Sie zu Konfiguration hinzufügen – Hier können Sie die relevanten Informationen aus Ihrer OAuth-2-Anwendung/Integration einfügen, wie in den vorherigen Schritten beschrieben.
  2. Hier muss die Client-ID eingegeben werden. Diese finden Sie in der Regel leicht an einer Stelle in Ihrer OAuth-2.0-Anwendung/Integration. Sie wird üblicherweise als Client ID oder App ID bezeichnet.
  3. Hier muss das Client-Geheimnis eingetragen werden. Dieses finden Sie in der Regel ganz einfach irgendwo in Ihrer OAuth-2.0-Anwendung bzw. -Integration. Es wird üblicherweise als „Client Secret“ oder „App Secret“ bezeichnet. Hinweis: Wenn Sie Ihren eigenen OAuth-2.0-Autorisierungsserver hosten, müssen Sie sicherstellen, dass das Geheimnis ausreichend zufällig und somit nicht erratbar ist. Eine Möglichkeit hierfür ist die Verwendung einer kryptografisch sicheren Bibliothek, um einen 256-Bit-Wert zu generieren und ihn anschließend in eine hexadezimale Darstellung umzuwandeln.
  4. Der Autorisierungsendpunkt ist die Adresse, an die Ideanote Ihre Nutzer weiterleitet, damit diese sich bei Ihnen authentifizieren können, bevor sie mit einem Autorisierungscode zu uns zurückgeleitet werden – vorausgesetzt, alles läuft wie geplant. Wenn Sie keinen eigenen OAuth 2.0-Autorisierungsserver hosten, finden Sie diese Angabe in der Dokumentation Ihrer OAuth 2.0-Anwendung/Integration.
  5. Der Token-Endpunkt ist der Endpunkt, an den Ideanote den Autorisierungscode sendet, den wir vom Autorisierungsendpunkt erhalten haben, um ihn gegen ein Zugriffstoken einzutauschen. Wenn wir ein Zugriffstoken zurückerhalten, haben wir uns erfolgreich im Namen des Nutzers bei Ihrer Anwendung/Integration authentifiziert. Wir verwenden dieses Zugriffstoken genau einmal, um relevante Nutzerinformationen abzurufen, z. B. die ID, E-Mail-Adresse, den Namen, den Avatar und möglicherweise weitere Informationen, die uns durch die OAuth 2.0-Bereiche gewährt werden, die Sie eingeben

‍

Zusätzliche Optionen

Verfügbare Konfigurationsoptionen unter „Konfiguration hinzufügen“.

  1. Dies ist der API-Endpunkt, den Ideanote mit dem vom Token-Endpunkt abgerufenen Zugriffstoken als Autorisierung aufruft, um relevante Nutzerinformationen abzurufen. So können wir einige erforderliche sowie optionale Nutzerinformationen abrufen, darunter die ID (oder sub) und die E-Mail-Adresse des Nutzers (beides ist erforderlich) sowie optionale Daten wie den Namen, den Avatar, die bevorzugte Spracheinstellung und den bevorzugten Alias. Diesen Endpunkt finden Sie in der API-Dokumentation Ihrer OAuth 2.0-Anwendung oder -Integration.
  2. Hier können Sie die OAuth 2.0-Bereiche eingeben, die angefordert werden sollen. Sie müssen mindestens einen Bereich eingeben und sicherstellen, dass dieser Ideanote die beiden erforderlichen Dateneigenschaften bereitstellt: E-Mail-Adresse und ID (oder sub). Lesen Sie in der Dokumentation Ihrer OAuth 2.0-Anwendung/-Integration nach, welche Bereiche unterstützt werden, und stellen Sie sicher, dass Ideanote die richtigen Bereiche anfordert, um auf Nutzerinformationen zuzugreifen – idealerweise einschließlich Name und Avatar.
  3. Ideanote erwartet, dass die Antwort des von Ihnen konfigurierten User Info Endpoint ein JSON-Objekt ist. Standardmäßig versucht Ideanote, die Schlüssel-Wert-Paare anhand von Vermutungen und Heuristiken zu analysieren und den Benutzerinformationen zuzuordnen. Wenn Sie das Akkordeonmenü USER INFO ATTRIBUTES erweitern, können Sie uns helfen, indem Sie den genauen Pfad in der User Info-JSON-Antwort angeben, unter dem wir die einzelnen Benutzerinformationen finden sollen.
  4. Nachdem Sie alle erforderlichen Felder ausgefüllt haben und mit der Konfiguration zufrieden sind, können Sie auf die Schaltfläche „Speichern“ klicken, um den OAuth 2.0-Anmeldeanbieter in Ihrem Ideanote-Workspace zu speichern. Anschließend wird Ihren Nutzern auf der Anmeldeseite eine neue Anmeldeoption angezeigt. Bei korrekter Konfiguration werden sie durch einen Klick auf die Anmeldeseite weitergeleitet, die sie bereits für die Anmeldung bei Ihrem eigenen System verwenden. Nach erfolgreicher Authentifizierung werden sie zu Ihrem Ideanote-Workspace weitergeleitet. Je nach den angeforderten und akzeptierten Bereichen sowie den Datentypen, die Ihre OAuth-Anwendung/-Integration unterstützt, kennt Ideanote möglicherweise sofort einige Angaben zum Nutzer, etwa den Namen, den Avatar, die bevorzugte Spracheinstellung und Ähnliches.

‍

Nützliche Informationen

OAuth 2.0 ist ein gut dokumentiertes und weit verbreitetes Branchenstandardprotokoll für die Autorisierung.

Daher stehen online zahlreiche hilfreiche Ressourcen zur Verfügung, darunter ausführliche Anleitungen und Dienste, mit denen sich die OAuth-2.0-basierte Authentifizierung einfach in Ihre eigene API integrieren lässt.

Hier sind einige Ressourcen, die wir empfehlen:

Das OAuth-2.0-Autorisierungsframework

Was ist der OAuth-2.0-Autorisierungscode-Grant-Typ?

OAuth-2-Autorisierungscode-Flow-Playground

OAuth 2 einfach erklärt

Wenn Sie weitere Fragen haben, können Sie sich gerne unter support@ideanote.io an uns wenden.

‍