Jak zarządzać uwierzytelnianiem za pomocą WorldDomination i Nancy?

Próbuję uzyskać uwierzytelnienie społeczne działające w hostowanym asp.netNancy aplikacja internetowa za pomocąWtyczka WorldDomination SimpleAuthentication dla Nancy. TL; DR przeskakują na pytanie pogrubione na dole pytania.

Obie są całkiem ładne, ale istnieje duża luka dokumentacyjna między procesem uwierzytelniania (dobrze zakryty) i identyfikacja uwierzytelnionego użytkownika podczas żądań innych niż początkowe żądanie uwierzytelnienia (nic).

Nancy zapewnia podstawowe i uwierzytelnianie formularzy za pomocą dodatkowych pakietów, a dostarczane przez nich haczyki są dość proste. WorldDomination nie dostarcza wielu informacji po rzeczywistym procesie uwierzytelniania. Wydaje się, że istnieje wyraźny brak Happy Path dla normalnego procesu „kto jest użytkownikiem, który żąda tego”, który musi się zdarzyć za każdym razem, gdy użytkownik trafi na serwer.

Spędziłem sporo czasu, aby rozwikłać tę część, ale moje badania nie doprowadziły mnie do żadnych oczywistych rozwiązań. Aplikacje demonstracyjne WD są pozbawione kodu żądania innego niż żądania uwierzytelnienia, a podstawa kodu nie wydaje się zawierać niczego, co dotyczy normalnego cyklu żądań.

Domyślam się, że muszę zintegrować się z autoryzacją formularzy, zaimplementować haki do formularzy Nancy i korzystać z tego, co otrzymałem od WD, aby wypełnić moje własne typy.

To nie wydaje się być najszczęśliwszym z szczęśliwych ścieżek. W rzeczywistości wydaje się, że jest to bardziej „ścieżka dużo leniwego drania”.

Co dokładnie jest zalecaną ścieżką do integracji dostawców uwierzytelniania społecznościowego OAuth WorldDomination i Nancy? Koncentruję się tutaj na standardowej części cyklu „Kim jest ta osoba, która żąda ode mnie”.

Dodatkowe punkty (z moich hordy kont sockpuppet, które stworzę w tym celu) na to, jak ta szczęśliwa ścieżka obsługuje również wylogowanych użytkowników!

questionAnswers(1)

yourAnswerToTheQuestion