© best_vector/Shutterstock.com
Windows Developer
Teil 1: Eine einfache OAuth-2.0-Implementierung mit Katana

Moderne Sicherheitsszenarien für ASP.NET

OAuth 2.0 gibt Webnutzern die Möglichkeit, Rechte an Dritte zu delegieren, ohne das eigene Passwort preisgeben zu müssen. Somit können Anwendungen im Namen eines Benutzers z. B. Nachrichten veröffentlichen. Darüber hinaus wird OAuth 2.0 zunehmend für Single-Sign-On-Szenarien verwendet. Das Katana-Projekt von Microsoft bietet eine umfangreiche Unterstützung dafür.

Manfred Steyer


ArtikelserieTeil 1: Eine einfache OAuth-2.0-Implementierung mit KatanaTeil 2: Single Sign-OnTeil 3: Federated Security

In der heutigen Welt sieht sich ein Webbenutzer mit zahlreichen Benutzerkonten konfrontiert. Dies legt den Wunsch nahe, sich mit nur einem oder zumindest wenigen Konten bei den Webangeboten der Wahl anmelden zu können. Darüber hinaus mehren sich die Fälle, in denen ein Benutzer einen Teil seiner Zugriffsrechte an Dritte weitergeben möchte, ohne sein Passwort preiszugeben. Ein Beispiel hierfür stellen soziale Netzwerke dar, die anbieten, das Adressbuch des Benutzers nach potenziellen Kontakten zu durchsuchen, die ebenfalls am sozialen Netzwerk teilnehmen.

Eine Lösung für diese Anforderungen stellt der Einsatz von Sicherheitstokens dar. Ein Token gleicht einem Passierschein, mit dem der Aussteller dem Inhaber gewisse (Zutritts-)Rechte einräumt. Damit das Ausstellen sowie die Handhabung von Tokens zwischen allen beteiligten Parteien reibungslos funktioniert, sind diese gut beraten, sich auf ein gemeinsames Protokoll zu einigen. Ein solches Protokoll, das sich derzeit im Webbereich großer Beliebtheit erfreut, ist OAuth 2.0. Der darauf aufbauende Standard OpenID Connect regelt die Authentifizierung von Benutzern.

Der erste Teil dieser dreiteiligen Artikelserie behandelt OAuth 2.0 und zeigt, wie unter Verwendung von Katana eine einfache OAuth-2.0-Implementierung geschaffen werden kann. Daneben zeigt er, wie man Services bereitstellen kann, die den Aufrufer auf Basis eines OAuth-2.0-Tokens autorisieren.

Die zwei weiteren Teile werden zeigen, wie der Entwickler weitere OAuth-2.0-Spielarten mit Katana implementieren und wie er den Standard OpenIDConnect für Single-Sign-On-Szenarien nutzen kann. Darüber hinaus wird aufgezeigt, wie mit OAuth 2.0, OpenID Connect und Katana föderierte Securityszenarien implementiert werden können.

OAuth 2.0

Die erste Version von OAuth wurde 2006 von Twitter und Ma.gnolia entwickelt. Ziel war es, Benutzern die Möglichkeit zu geben, einen Teil ihrer Rechte an Dritte weiterzugeben, ohne das eigene Passwort zu teilen. Somit können z. B. Anwendungen das Recht erhalten, im Namen eines Twitter-Nutzers Nachrichten zu veröffentlichen oder abzurufen.

Mittlerweile wird OAuth bzw. dessen Nachfolger OAuth 2.0 von Größen wie Google, Facebook, Flickr, Microsoft, Salesforce.com oder Yahoo! eingesetzt. Dabei fällt auf, dass es zunehmend nicht nur zur Delegation von Rechten (Autorisierung), sondern auch für Single-Sign-On-Szenarien (Authen...

Windows Developer
Teil 1: Eine einfache OAuth-2.0-Implementierung mit Katana

Moderne Sicherheitsszenarien für ASP.NET

OAuth 2.0 gibt Webnutzern die Möglichkeit, Rechte an Dritte zu delegieren, ohne das eigene Passwort preisgeben zu müssen. Somit können Anwendungen im Namen eines Benutzers z. B. Nachrichten veröffentlichen. Darüber hinaus wird OAuth 2.0 zunehmend für Single-Sign-On-Szenarien verwendet. Das Katana-Projekt von Microsoft bietet eine umfangreiche Unterstützung dafür.

Manfred Steyer


ArtikelserieTeil 1: Eine einfache OAuth-2.0-Implementierung mit KatanaTeil 2: Single Sign-OnTeil 3: Federated Security

In der heutigen Welt sieht sich ein Webbenutzer mit zahlreichen Benutzerkonten konfrontiert. Dies legt den Wunsch nahe, sich mit nur einem oder zumindest wenigen Konten bei den Webangeboten der Wahl anmelden zu können. Darüber hinaus mehren sich die Fälle, in denen ein Benutzer einen Teil seiner Zugriffsrechte an Dritte weitergeben möchte, ohne sein Passwort preiszugeben. Ein Beispiel hierfür stellen soziale Netzwerke dar, die anbieten, das Adressbuch des Benutzers nach potenziellen Kontakten zu durchsuchen, die ebenfalls am sozialen Netzwerk teilnehmen.

Eine Lösung für diese Anforderungen stellt der Einsatz von Sicherheitstokens dar. Ein Token gleicht einem Passierschein, mit dem der Aussteller dem Inhaber gewisse (Zutritts-)Rechte einräumt. Damit das Ausstellen sowie die Handhabung von Tokens zwischen allen beteiligten Parteien reibungslos funktioniert, sind diese gut beraten, sich auf ein gemeinsames Protokoll zu einigen. Ein solches Protokoll, das sich derzeit im Webbereich großer Beliebtheit erfreut, ist OAuth 2.0. Der darauf aufbauende Standard OpenID Connect regelt die Authentifizierung von Benutzern.

Der erste Teil dieser dreiteiligen Artikelserie behandelt OAuth 2.0 und zeigt, wie unter Verwendung von Katana eine einfache OAuth-2.0-Implementierung geschaffen werden kann. Daneben zeigt er, wie man Services bereitstellen kann, die den Aufrufer auf Basis eines OAuth-2.0-Tokens autorisieren.

Die zwei weiteren Teile werden zeigen, wie der Entwickler weitere OAuth-2.0-Spielarten mit Katana implementieren und wie er den Standard OpenIDConnect für Single-Sign-On-Szenarien nutzen kann. Darüber hinaus wird aufgezeigt, wie mit OAuth 2.0, OpenID Connect und Katana föderierte Securityszenarien implementiert werden können.

OAuth 2.0

Die erste Version von OAuth wurde 2006 von Twitter und Ma.gnolia entwickelt. Ziel war es, Benutzern die Möglichkeit zu geben, einen Teil ihrer Rechte an Dritte weiterzugeben, ohne das eigene Passwort zu teilen. Somit können z. B. Anwendungen das Recht erhalten, im Namen eines Twitter-Nutzers Nachrichten zu veröffentlichen oder abzurufen.

Mittlerweile wird OAuth bzw. dessen Nachfolger OAuth 2.0 von Größen wie Google, Facebook, Flickr, Microsoft, Salesforce.com oder Yahoo! eingesetzt. Dabei fällt auf, dass es zunehmend nicht nur zur Delegation von Rechten (Autorisierung), sondern auch für Single-Sign-On-Szenarien (Authen...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang