Ich habe Probleme damit, das OAuth Service Provider-Beispiel, das in DotNetOpenAuth enthalten ist, auseinander zu nehmen. Ich suchte SO und fand ein paar ähnliche / verwandte Beiträge, aber nichts wirklich nützliches. Gibt es ein Open-Source-Projekt oder ein wirklich einfaches / primitives Beispiel für einen ASP.NET MVC 2 OAuth Service Provider? Alles, was ich für OAuth verwenden möchte, ist die Authentifizierung des Dienstes. Ich wollte meine eigene API mit einem Schlüssel / Geheimnis veröffentlichen, dachte aber, dass ein erprobtes Protokoll wie OAuth wahrscheinlich eine bessere Lösung wäre.
Am Ende habe ich umfangreiche Recherchen durchgeführt, um festzustellen, dass ich das traditionelle 3-beinige OAuth nicht brauchte und nur zweibeinige brauchte. Das Problem ist, dass 2-beinige OAuth-Informationen ziemlich schwer zu finden sind. Ich habe endlich eine Google-Spezifikation für die Implementierung von 2-beinigen OAuth gefunden:
Ich habe auch eine Implementierung gefunden, da Justin.tv sie für ihre Dienste verwendet:
Ich bin auch auf ein hervorragendes OAuth-Test-Tool gestoßen, das mir bei der Implementierung des Service sehr geholfen hat:
Zweibeiniges OAuth ist ziemlich einfach, wenn Sie einmal verstanden haben, wonach Sie suchen und wie Sie es implementieren. Wenn Sie nach OAuth suchen, finden Sie höchstwahrscheinlich Artikel, in denen über das traditionelle dreibeinige OAuth gesprochen wird, bei dem 3 Parteien involviert sind, wie der Name schon sagt: Konsumenten, Service Provider, AND Benutzer . Two-Legged bezieht sich ausschließlich auf Verbraucher und Dienstleister. Wenn Ihr Service sich nicht speziell mit Benutzern befasst, ist 2-legged OAuth genau das, wonach Sie suchen.
Wie bei einem Framework verwende ich ASP.NET MVC, also habe ich mich letztendlich auf ein Github-Repository festgelegt, das sich hier befindet:
Es hat einen wirklich schönen, sauberen Code und verwendet Dependency Injection (Ninject). Es brauchte nicht viel, um es für 2-beiniges OAuth modifizieren zu können.
Tags und Links .net c# oauth dotnetopenauth api