2013-04-17 8 views
6

Ich muss socket.io Client-Verbindungen mit dem Benutzernamen des Benutzers, Passwort und zusätzlich mit Entwickler-Passwort authentifizieren (Entwickler-Passwort wird verwendet, um sicherzustellen, dass der Dienst nur von verwendet wird die von registrierten Entwicklern entwickelten Apps).wie authentifizieren socket.io websockets mit Benutzerpasswort und Entwickler-Passwort

Das Problem ist, Entwickler Passwort sollte nicht von der Anwendung Benutzer oder der Client gesehen werden. Gibt es eine Möglichkeit, den Benutzer mit dem Benutzernamen des Benutzers, dem Kennwort und zusätzlich dem Entwicklerkennwort zu authentifizieren, ohne dass der Client das Entwicklerkennwort kennt? Jede Hilfe wird sehr geschätzt.

Danke.

+0

Aus welchem ​​Grund kann der Client das Entwicklerkennwort nicht kennen? Ich nehme an, dass "Client" und "Entwickler" ein und dasselbe sind? Wenn ja, ist der Grund dafür kommerziell (wie: die Person, die das Passwort ausgestellt hat, und die tatsächliche Person, die den Client-Code schreibt, sind verschiedene Leute?). Kann der Klient * ein anderes Geheimnis kennen, wie ein Token, das er für sie generiert, ein Zertifikat usw.? –

+0

@NitzanShaked Entwickler-Passwort ist für den Entwickler, um den Dienst bei der Entwicklung einer App zu verwenden. Wenn die Benutzer/Clients der Anwendung, die vom Entwickler entwickelt wurde, das Entwicklerkennwort kennen lernen, werden sie auch den Service verwenden. Hier bezieht sich der Client auf die Person, die die vom Entwickler entwickelte Anwendung verwendet. –

+0

Nun, so wie ich es sehe, haben Sie 2 Möglichkeiten: Eine ist, was einige Apps tun (z. B. Urban Airship), und * haben * das Geheimnis des Entwicklers in der App, wo der Client es sehen kann. Dieses Geheimnis kann jedoch nur sehr spezifische Operationen ausführen, und um mehr privilegierte, App-weite Operationen auszuführen (im Gegensatz zu spezifischen Kundenoperationen), verwendet der Entwickler ein "Entwickler-Master-Geheimnis", das nur auf dem Rechner des Entwicklers gespeichert wird . Eine weitere Option - im nächsten Kommentar. –

Antwort