überprüft Androids authToken auf dem Server eines Drittanbieters

8

Ich schreibe eine Android-Anwendung, die AccountManager verwendet, um das Token zu erhalten. Von einer Android-App aus kann ich mit Google Picasa interagieren - es funktioniert einwandfrei.

Was ich gerne erreichen möchte, ist folgendes: sende etwas text + authToken an meinen Drittanbieter-Server, dann überprüfe, ob das Token korrekt ist, bevor du den Text speicherst. Nun stellt sich die Frage: Ist es möglich, festzustellen, ob das authToken eines bestimmten Token nur auf dem Token selbst (und vielleicht der E-Mail-Adresse) korrekt ist?

Ich habe bereits den Server-Teil programmiert, der das Token akzeptiert (send von Android-Anwendung) und dann eine Anfrage an eine URL-Adresse absetzt:

%Vor%

Was ich zurückbekomme, ist folgender JSON:

%Vor%

Aber der Link hier Ссылка besagt, dass wenn ein Token korrekt ist, ich eine andere JSON-Antwort erhalten sollte. Kannst du mir sagen, was ich falsch mache? Ich glaube, dass der Weg, Tokens Gültigkeit zu überprüfen, wirklich nicht so einfach ist, aber ich sollte lieber das ganze Openid oder so implementieren. Auch wenn das der Fall ist, wie kann ich überprüfen, ob das Token per Android App korrekt ist, so kann ich den 'Text' Teil der Nachricht speichern.

Danke.

    
eleanor 23.03.2012, 18:34
quelle

5 Antworten

2

Die Lösung ist wie folgt. Sie können das Token über diese URL überprüfen:

%Vor%

Aber in meinem Fall habe ich versucht, "Authorization Code" und nicht "Access Token" zu validieren, wie Sie hier sehen können: Ссылка

Wenn Sie Android und OAuth verwenden, verwenden Sie nicht

%Vor%

Verwenden Sie stattdessen Folgendes als Servicename:

%Vor%

Also sollten Sie getAuthToken wie folgt aufrufen

%Vor%

Dann können Sie das Token, das von diesem Aufruf empfangen wird, auf dem oben angegebenen URI validieren.

    
eleanor 05.04.2012, 10:35
quelle
7

Beenden Sie die Verwendung von AccountManager und starten Sie die GoogleAuthUtil-Klasse des Google Play-Dienstes. Dann wird es einfach. Siehe Ссылка

    
Tim Bray 25.01.2013 01:09
quelle
1

lies das Ссылка

  

Nachdem der Webserver den Autorisierungscode erhalten hat, kann er sich austauschen   der Autorisierungscode für ein Zugriffstoken und ein Aktualisierungstoken. Dies   Anforderung ist ein HTTPs-Post und enthält die folgenden Parameter:

    
user249654 19.07.2012 10:23
quelle
1

Ich bin auf die Passport-Google-Token Passport-Strategie gestoßen, die die Aufgabe perfekt erfüllt.

Ссылка

Weitere Details finden Sie im obigen Link.

    
Rakesh Yarlagadda 27.03.2015 07:33
quelle
0

Basierend auf Informationen in dieser Antwort: Wie können Google-OAuth-Tokens auf einem node.js-Server ordnungsgemäß validiert werden? >,

Sie könnten versuchen, id_token anstelle von access_token in der URL zu verwenden, um den Tokeninfo-Endpunkt von Google aufzurufen.

    
Anton I. Sipos 01.05.2013 23:15
quelle