Wie verwalte ich meine Authentifizierung mit WorldDomination und Nancy?

Ich versuche, die soziale Authentifizierung in einem von asp.net gehosteten System zum Laufen zu bringenNancy Web App mit derWorldDomination SimpleAuthentication Plugin für Nancy. TL; DRs springen zu der Frage, die am Ende der Frage fett gedruckt ist.

Beide sind ziemlich nett, aber es gibt eine große Dokumentationslücke zwischen dem Authentifizierungsprozess (gut abgedeckt) und der Identifizierung des authentifizierten Benutzers bei anderen Anforderungen als der anfänglichen Authentifizierungsanforderung (nichts).

Nancy bietet eine Basis- und Formularauthentifizierung über zusätzliche Pakete, und die darin enthaltenen Hooks sind ziemlich einfach. WorldDomination liefert nach dem eigentlichen Authentifizierungsprozess nicht viele Informationen. Es scheint ein deutlicher Mangel an Happy Path für den normalen Prozess "Wer ist der Benutzer, der diese Anforderung ausführt" zu bestehen, der jedes Mal auftreten muss, wenn ein Benutzer auf den Server zugreift.

Ich habe eine Menge Zeit aufgewendet, um diesen Teil herauszufinden, aber meine Forschung hat mich zu keinen offensichtlichen Lösungen geführt. Die WD-Demo-Apps haben keinen Anforderungscode außer Authentifizierungsanforderungen, und die Codebasis scheint nichts zu enthalten, was mit dem normalen Anforderungszyklus zu tun hat.

Ich gehe davon aus, dass ich mich in Forms Auth integrieren, Nancys Forms Auth Hooks implementieren und das, was ich von WD zurück bekomme, verwenden muss, um meine eigenen Typen zu füllen.

Dies scheint nicht gerade der glücklichste Weg zu sein. Tatsächlich scheint es eher ein Weg zu sein, "mach viel Arbeit, du fauler Bastard".

Was genau ist der empfohlene glückliche Weg für die Integration der sozialen OAuth-Authentifizierungsanbieter von WorldDomination und Nancy? Ich konzentriere mich hier auf den Standardteil des Lebenszyklus der Seite "Wer ist diese Person, die mich anfordert".

Bonuspunkte (von meinen Horden von Sockenpuppenkonten, die ich zu diesem Zweck erstelle) für die Art und Weise, wie dieser glückliche Pfad auch mit dem Abmelden von Benutzern umgeht!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage