Was ist OAuth-Authentifizierung? Eine kurze Geschichte.
Die OAuth 2.0-Authentifizierung ist, wie oauth.neterläutert, ein “Delegierungsprotokoll, das zum Übermitteln von Autorisierungsentscheidungen über ein Netzwerk von webfähigen Anwendungen und APIs verwendet wird”. OAuth wurde 2006 von Entwicklern von Twitter und Ma.gnolia, einer Social Bookmarking-Website, erstellt. Ma.gnolia suchte nach einer Möglichkeit, OpenID zusammen mit der Twitter-API zu verwenden, um die Authentifizierung zu delegieren. Die Teams recherchierten Ideen und stellten schließlich fest, dass es keinen offenen Standard für die API-Zugriffsdelegierung gab. Darüber hinaus recherchierte Google auch das gleiche Problem und hörte von dem Projekt zwischen Twitter und Ma.gnolia. Daraufhin traten Mitglieder von Google dem Team bei. Ende 2007 wurde der OAuth Core 1.0-Entwurf veröffentlicht. Der aktuelle Rahmen, OAuth 2.0, wurde im Oktober 2012 veröffentlicht.
OAuth 2.0-Authentifizierungsrollen
In OAuth 2.0 werden die folgenden vier Rollen definiert:
- Ressourcenbesitzer. Der Ressourcenbesitzer kann Zugriff auf eine geschützte Ressource oder einen geschützten Dienst gewähren. Es kann eine Person, eine Anwendung oder Sicherheitspolitik sein, aber in der Regel ein echter Mensch.
- Ressourcenserver. Der ist der Server, auf dem die Ressource oder der Dienst gehostet wird. Der Server akzeptiert und reagiert auf Anforderungen.
- Clientanwendung. Die Clientanwendung, die als OAuth-Client bezeichnet wird, ist die Anwendung, die um Zugriff auf Ressourcen auf dem Ressourcenserver bittet.
- Autorisierungsserver. Nach der Authentifizierung des Ressourcenbesitzers und dem Abrufen der Autorisierung stellt der Autorisierungsserver die Zugriffstoken für den Client bereit.
Es ist wichtig zu beachten, dass OAuth kein Authentifizierungsprotokoll ist, sondern ein Autorisierungsprotokoll. Die Art und Weise, wie die Komponenten zusammenarbeiten und interagieren, scheint eine Authentifizierung nahezulegen, ist jedoch nicht für die Verwendung als solche gedacht.
Warum OAuth 2.0-Authentifizierung verwenden?
Die Chancen stehen gut, dass Sie das OAuth-Konzept bereits in Aktion gesehen und nicht einmal realisiert haben. Viele der Anwendungen, die Sie täglich verwenden, verwenden OAuth. Angenommen, Sie kaufen nach einem Artikel und finden ihn auf Etsy. Du möchtest es kaufen, aber das einzige Problem ist, dass du kein Etsy-Konto hast. Auf der Etsy-Homepage sehen Sie eine Option, um sich mit Ihrem Facebook- oder Google-Konto anzumelden. In diesem Fall sind Sie Ressourcenbesitzer, Etsy ist die Client-Anwendung und Facebook oder Google ist die API oder der Autorisierungsserver. Jetzt müssen Sie Etsy einige zusätzliche Informationen zum Kauf von Artikeln zur Verfügung stellen, aber mit OAuth Authentication können Sie sich bei Etsy anmelden, ohne ein zusätzliches Passwort erstellen zu müssen. Heute ist die Anmeldung über Facebook oder Google im Internet allgegenwärtig geworden, also was ist wirklich der Vorteil von OAuth?
- Schutz Ihrer Privatsphäre. Mit OAuth können Sie private Ressourcen von einer Site an eine andere gewähren. OAuth soll Ihnen Zugriff auf bestimmte Dinge geben, ohne Ihre Identität zu teilen.
- Kundenerfahrung. Im obigen Beispiel könnte die Verwendung deiner Facebook-Daten es Etsy ermöglichen, deine Erfahrung in ihrer App zu verbessern.
- Stärkere Authentifizierung. Sich auf ein Authentifizierungssystem zu verlassen, das von größeren Unternehmen wie Facebook oder Google erstellt wurde, ist einfacher und weniger riskant als ein internes zu erstellen.
Darüber hinaus und speziell für Entwickler gibt es OAuth-Bibliotheken in einer Vielzahl von gängigen Sprachen, einschließlich PHP, Java, Ruby, Python, .NET, JavaScript und vielen anderen. Die vollständige Liste der unterstützten Sprachen finden Sie unter https://oauth.net/code/.
Überwachen von OAuth 2.0 APIs mit Dotcom-Monitor
Ihre API erfordert möglicherweise die OAuth 2.0-Authentifizierung, damit anderen Webdiensten, z. B. Clientanwendungen, Zugriffsrechte für bestimmte Ressourcen in Ihrem Dienst über HTTP/S gewährt werden können. Ein Dienst-API-Aufruf, der OAuth 2.0 verwendet, muss mindestens die folgenden Schritte ausführen:
- Abrufen eines API-Zugriffstokens.
- Anfordern benutzerdefinierter Daten vom Dienst mithilfe des der Anwendung zugesprochenen Zugriffstokens.
Mit der Dotcom-Monitor-Plattform können Sie ein Multi-Task-Überwachungsgerät mit einer HTTP/S-Aufgabe konfigurieren. Lesen Sie unseren Knowledge Base-Artikel zum Überwachen von OAuth 2.0-APIs, um Beispiele für OAuth Authentication-Skripts innerhalb der Dotcom-Monitor-Plattform zu sehen und mehr darüber zu erfahren, wie Sie ein Überwachungsgerät konfigurieren, um die Verfügbarkeit und Leistung von OAuth-basierten Web-APIs zu überwachen.