Einführung in OAuth (ohne Fachchinesisch)

von Rob Sobers Neulich haben wir darüber gesprochen, dass Sie Passwörter niemals weitergeben sollten. Wenn eine Website die Dienste einer anderen verwenden möchte – also zum Beispiel Bitly in Ihrem...
Michael Buckbee
3 minute gelesen
Letzte aktualisierung 4. Januar 2022

von Rob Sobers

Neulich haben wir darüber gesprochen, dass Sie Passwörter niemals weitergeben sollten. Wenn eine Website die Dienste einer anderen verwenden möchte – also zum Beispiel Bitly in Ihrem Twitter-Stream postet –, sollte sie OAuth verwenden, anstatt Sie nach Ihrem Passwort zu fragen.

Bei OAuth handelt es sich um ein Authentifizierungsprotokoll, mit dessen Hilfe Sie die Interaktion zwischen zwei Anwendungen erlauben können, ohne Ihre Zugangsdaten preiszugeben.

Hier möchte ich die Funktionsweise von OAuth kurz und in einfachen Worten erklären.

Die Beteiligten

In einer OAuth-Transaktion gibt es drei Hauptbeteiligte: den Nutzer (User), die Anwendung (Consumer) und die Website, auf die der Zugriff erlaubt werden soll (Service Provider). Dieses Triumvirat wird auch liebevoll als „OAuth Love Triangle“ bezeichnet.

In unserem Beispiel ist Joe der User, Bitly der Consumer und Twitter der Service Provider, auf dem sich die sichere Ressource von Joe befindet (sein Twitter-Stream). Joe möchte Bitly erlauben, gekürzte Links in seinem Twitter-Stream zu posten. Und so funktioniert’s:

Schritt 1: Der User äußert seine Absicht

Joe (User): „Hey Bitly, ich möchte, dass du Links direkt in meinen Twitter-Stream posten kannst.“

Bitly (Consumer): „Großartig! Ich bitte gleich um die Genehmigung.“

Schritt 2: Der Consumer erhält die Genehmigung

Bitly: „Ein User möchte, dass ich direkt in seinen Stream poste. Kann ich einen Abfrage-Token haben?“

Twitter (Service Provider): „Natürlich. Hier sind ein Token und ein Geheimnis.“

Das Geheimnis wird benötigt, um gefälschte Abfragen zu verhindern. Der Consumer verwendet das Geheimnis, um jede Abfrage zu signieren. So kann der Service Provider überprüfen, ob die jeweilige Abfrage auch wirklich von der Consumer-Anwendung kommt.

Schritt 3: Der User wird zum Service Provider weitergeleitet

Bitly: „OK, Joe. Ich leite dich jetzt an Twitter weiter, damit du die Aktion bestätigen kannst. Nimm diesen Token mit.“

Joe: „OK!“

<Bitly leitet Joe zur Autorisierung an Twitter weiter.>

Anmerkung: Dieser Teil ist ein bisschen unheimlich. Wäre Bitly ein unseriöser Anbieter mit bösen Absichten, könnte er ein Popup-Fenster verwenden, das zwar genau wie Twitter aussieht, aber eigentlich eine Phishing-Seite ist, mit dem er Ihre Zugangsdaten in Erfahrung bringen kann. Stellen Sie stets sicher, dass es sich bei der URL, an die Sie weitergeleitet werden, wirklich um den Service Provider handelt (in diesem Fall Twitter).

Schritt 4: Der User gibt seine Erlaubnis

Joe: „Twitter, ich möchte diesen Abfrage-Token autorisieren, den Bitly mir gegeben hat.“

Twitter: „OK. Nur zur Sicherheit: Du möchtest Bitly die Erlaubnis dazu geben, X, Y und Z auf deinem Twitter-Konto auszuführen?“

Joe: „Ja!“

Twitter: „OK. Du kannst zu Bitly zurückkehren und ihm sagen, dass er seinen Abfrage-Token jetzt verwenden kann.“

Twitter kennzeichnet den Abfrage-Token als freigegeben. Wenn der Consumer nun um Zugriff bittet, wird ihm dieser gewährt (solange die Abfrage mit dem gemeinsamen Geheimnis signiert ist).

Schritt 5: Der Consumer erhält einen Zugangs-Token

Bitly: „Twitter, kann ich diesen Abfrage-Token gegen einen Zugangs-Token tauschen?“

Twitter: „Sicher. Hier sind der Zugangs-Token und das Geheimnis.“

Schritt 6: Der Consumer greift auf die geschützte Ressource zu

Bitly: „Ich möchte diesen Link in Joes Stream posten. Hier ist mein Zugangs-Token!“

Twitter: „Erledigt!“

Zusammenfassung

In unserem Beispiel musste Joe seine Twitter-Zugangsdaten gegenüber Bitly nie preisgeben. Er delegierte den Zugang einfach auf sichere Weise über OAuth. Joe kann sich jederzeit bei Twitter anmelden, die von ihm erteilten Zugangsrechte überprüfen und Tokens für bestimmte Anwendungen aufheben, ohne dadurch andere zu beeinträchtigen. OAuth ermöglicht zudem granulare Berechtigungsstufen. So können Sie beispielsweise Bitly die Berechtigung erteilen, auf Ihrem Twitter-Konto zu posten, den Zugriff auf LinkedIn jedoch auf „Nur lesen“ beschränken.

OAuth ist (noch) nicht perfekt

OAuth ist eine robuste Lösung für browserbasierte Anwendungen und eine enorme Verbesserung gegenüber der HTTP Basic Authentication. Insbesondere bei OAuth 1.0 gibt es jedoch gewisse Einschränkungen, die dazu führen, dass das Protokoll bei nativen und mobilen Anwendungen weitaus unsicherer und weniger benutzerfreundlich ist.

OAuth 2.0 ist eine neuere, sicherere Version, bei der unterschiedliche „Flows“ für Web-, Desktop- und mobile Anwendungen eingeführt werden. Tokens verfügen nur über eine bestimmte Gültigkeitsdauer (ähnlich wie beim Ablauf von Cookies), die Verwendung von SSL ist erforderlich und die Prozesse für Entwickler wurden vereinfacht, da keine Signaturen mehr nötig sind.

Weitere Ressourcen

Ich hoffe, dass Ihnen diese Einführung in OAuth weitergeholfen hat. Wenn Ihnen das nächste Mal die Aufforderung „Bei Twitter anmelden“ oder ähnliche delegierte Identitätsüberprüfungen begegnen, wissen Sie bereits, was hier passiert.

Wenn Sie sich noch genauer über die Funktionsweise von OAuth informieren möchten, empfehle ich Ihnen die folgenden Links:

The post Einführung in OAuth (ohne Fachchinesisch) appeared first on Varonis Deutsch.

What should I do now?

Below are three ways you can continue your journey to reduce data risk at your company:

1

Schedule a demo with us to see Varonis in action. We'll personalize the session to your org's data security needs and answer any questions.

2

See a sample of our Data Risk Assessment and learn the risks that could be lingering in your environment. Varonis' DRA is completely free and offers a clear path to automated remediation.

3

Follow us on LinkedIn, YouTube, and X (Twitter) for bite-sized insights on all things data security, including DSPM, threat detection, AI security, and more.

Testen Sie Varonis gratis.

Detaillierte Zusammenfassung Ihrer Datensicherheitsrisiken
Umsetzbare Empfehlungen, die auf Ihre Bedürfnisse zugeschnitten sind
Ohne Bedingungen und Auflagen

Weiter lesen

Varonis bewältigt Hunderte von Anwendungsfällen und ist damit die ultimative Plattform, um Datenschutzverletzungen zu stoppen und Compliance sicherzustellen.

was-ist-saml-und-wie-funktioniert-sie?
Was ist SAML und wie funktioniert sie?
Security Assertion Markup Language (SAML) ist ein offener Standard, mit dem Identitätsprovider (IdP) Autorisierungsdaten an Dienstanbieter (SP) übergeben können. Dieser Fachbegriff bedeutet, dass Sie einen Satz von Anmeldeinformationen verwenden können,...
datanywhere-ab-sofort-für-bis-zu-fünf-nutzer-kostenfrei-downloaden
DatAnywhere ab sofort für bis zu fünf Nutzer kostenfrei downloaden
Wir haben es bereits letzte Woche angekündigt… und inzwischen steht DatAnywhere zum kostenlosen Download für bis zu 5 Nutzer zur Verfügung. DatAnywhere verwandelt die Filesharing-Infrastruktur eines Unternehmens in eine private...
in-58-%-aller-unternehmen-sind-über-100.000-ordner-für-alle-mitarbeiter-zugänglich
In 58 % aller Unternehmen sind über 100.000 Ordner für alle Mitarbeiter zugänglich
Die überraschende und gleichzeitig traurige Wahrheit: Die meisten Unternehmen sind sich überhaupt nicht bewusst, dass einige ihrer sensibelsten Daten für viele Mitarbeiter zugänglich sind. Und mit „einige“ meinen wie eine...
rückgängigmachen-eines-commit-in-git-(powershell-git-tutorial)
Rückgängigmachen eines Commit in Git (PowerShell-Git-Tutorial)
Dieses PowerShell-Tutorial zeigt, wie man einen Git-Commit in einem lokalen Repository rückgängig macht – Git kann lokal ohne ein Remote-Repository verwendet werden.