Verwenden von OAuth im ServiceStack-Client

8

Ich bin verwirrt, wenn ich versuche, OAuth (facebook / twitter) auf einem Client zu verwenden und mich dann mit ServiceStack zu authentifizieren. Alle Beispiele, die ich für die Authentifizierung in einem Client sehe, verwenden grundlegende Auth wie folgt:

%Vor%

Was müsste ich tun, um meinen Stand-Alone-Client mit Facebook zu authentifizieren? Ich mache einen Anruf an die FB und bekomme eine UID, ein Token für den Zugang, eine E-Mail usw. Was ist dann der Aufruf an den Service-Stack, um sich zu authentifizieren?

derzeit denke ich, ist die Authentifizierung mit FB auf dem Client zu tun, Anruf Service zu überprüfen, ob der Benutzer existiert (Blick auf E-Mail-Adresse). wenn sie sich nicht registrieren und sie mit einem Hash ihrer Daten als Passwort anmelden. Wenn sie existieren, loggen Sie sie auf die gleiche Weise ein. ist das sinnvoll / Best Practice?

Danke im Voraus

    
pjacko 31.01.2013, 02:25
quelle

1 Antwort

2

Was müsste ich tun, um meinen Stand-Alone-Client mit Facebook zu authentifizieren? Was ist dann der Aufruf an den Service-Stack zur Authentifizierung?

Sie können die Authentifizierung bei ServiceStack und Facebook mit dem FacebookAuthProvider ( Ссылка ) durchführen. Wenn Sie die Anfrage ** an "/ auth / facebook" (ServiceStack-bereitgestelltes Endgerät) senden, erfolgt eine Authentifizierung bei ServiceStack und Facebook. Innerhalb von ServiceStack können Sie mit UserSession.GetOAuthTokens("facebook") auf die Facebook-Token zugreifen. Ich würde denken, dass Sie diese Token mit Ihrem Kunden teilen können oder dass Ihr Kunde Ihre ServiceStack-Endpunkte (die Sie erstellen) durchsucht, um auf Facebook zuzugreifen. Ähnlich wie das TwitterGateway ( Ссылка ) im SocialBootStrapApi-Beispiel funktioniert .

** {"UserName":"yourname", "Password":"yourpassword", "RememberMe":true/false}

    
paaschpa 18.02.2013 16:08
quelle

Tags und Links