3 Stimmen

Wie authentifiziert man Google Wave Gadget Viewer auf Appengine?

Stellen Sie sich vor, ich möchte das Spiel "Stein-Papier-Schere" für Google Waves erstellen. Ich denke daran, es als Wave Gadget zu implementieren.

Die Idee ist einfach: Alle Teilnehmer senden ihre Entscheidungen an meine Cloud App (es ist eine Appengine Java Applikation), mein Serverteil sammelt diese sammelt diese Daten und gibt sie nicht weiter, bis alle Teilnehmer ihre Auswahl abgeschlossen haben. Danach wird die Auswahl an alle Teilnehmer weitergegeben Teilnehmer geteilt und der Gewinner wird ermittelt.

Ich kann wave.getViewer().getId() um den Benutzer auf dem Server zu identifizieren während gadgets.io.makeRequest . I funktioniert perfekt. Aber wie kann ich auf der Serverseite sicherstellen, dass die eingehende Anfrage wirklich von diesem bestimmten Wave-Benutzer stammt? (Wie kann ich sicherstellen, dass die wave-Teilnehmerkennung Teilnehmer-ID nicht auf der Client-Seite gehackt wird? Jeder wave-Container Signatur, die es ermöglicht, die wave-Teilnehmer-ID zu ermitteln, ist verfügbar).

Was sind die besten Praktiken für die Authentifizierung von Google Wave-Teilnehmern? auf meiner App-Engine-Seite? Bitte geben Sie Beispiele, wenn möglich.

Mein aktuelles Gerät ist etwas komplizierter, aber das Problem ist wie beschrieben oben beschrieben.

1voto

pavel.vodenski Punkte 58

Ich würde gegen eine denkbare zukünftige Lösung programmieren, die direkt in das Wave-Protokoll oder die API integriert ist, und hoffen, dass niemand die Teilnehmer-IDs fälscht. Sie könnten sich auch an das Wave-Team wenden, um Ihren Bedarf an der Funktion bekannt zu machen und zu sehen, ob jemand anderes das Gleiche sucht.

Es sieht so aus, als wäre eine OpenAuth-Integration für Roboter bereits eingebaut: http://wave-robot-java-client.googlecode.com/svn/trunk/doc/index.html

Wäre es möglich, einen Roboter anstelle eines Gadgets einzusetzen? Oder vielleicht einen Roboter für die Authentifizierung verwenden und das Gadget mit Ihren eigenen Authentifizierungstokens serverseitig verbinden?

0voto

drxzcl Punkte 2962

Soweit ich das beurteilen kann, gibt es keine "einfache" Möglichkeit, dies zu tun, da die gesamte Kommunikation mit Gadgets direkt zwischen dem Client und dem Gadget stattfindet, ohne dass Google sich für irgendetwas anderes als die XML-Beschreibung des Gadgets interessiert.

Die einzige Möglichkeit, die mir spontan einfällt, ist, dass sich die Nutzer mit der Kontenfunktion von Google App Engine in den Iframe des Gadgets "einloggen". Dies würde sicherstellen, dass sie tatsächlich die Person sind, als die sie sich anmelden.

0voto

myfreeweb Punkte 1014

Wie kann ich sicherstellen, dass die Teilnehmer-ID von wave nicht auf der Client-Seite gehackt wird?

Wie kann ein Nutzer seine Wave-Patricipant-ID hacken? Ich denke, das ist kein Problem, wave.getViewer().getId() sollte richtig sein.

0voto

WedTM Punkte 2527

Ich denke, du solltest dir überlegen, ob du nicht lieber einen Wellen-ROBOTER statt eines GADGETs bauen willst. Es gibt einen Unterschied.

Roboter sind wellenempfindlich, Gadgets sind es nicht.

Wave Robot API: http://code.google.com/apis/wave/extensions/robots/

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X