2009-05-15 5 views
1

Mein Dienst kommuniziert mit einem Server, der Konten verwaltet.Wie man eine kugelsichere Methode entwickelt, um einen String mit dem Basisstring in Beziehung zu setzen?

  • Jedes Konto hat eine Obergrenze für die Anzahl der Operationen pro Monat durchgeführt.
  • Ich möchte diese Obergrenze umgehen, indem Sie neue Konten erstellen, die über ein Schema verknüpft sind. Diese

ist, wie es funktionieren sollte:

  1. Benutzer ein Konto einrichtet "denzel" über MyService.
  2. MyService wiederum Proxies die Kontoerstellung zu 3rdPartyServer
  3. User "denzel" überprüft seine Kredit-und MyService Renditen $ 45 (Standard Kappe pro Benutzerkonto).
  4. Benutzer "denzel" kauft zusätzliche $ 45 über MyService. MyService surreptitiously (im Hintergrund) erzeugt Konto A in 3rdPartyServer sondern verwaltet die Beziehung zwischen "denzel" & "A".
  5. User „denzel“ überprüft seine Kredit-und MyService Erträge $ 90

dumbass Weg, um die Beziehung zu verwalten, ist eine Zählung auf den ursprünglichen Benutzer-ID anzuhängen. z.B. „denzel1“, „denzel2“ etc .. Das funktioniert nicht, wir wollen nicht, andere Benutzer verhindern, dass die Wahl denzel1 "oder andere in der Serie für diese Angelegenheit.

Hat jemand konfrontiert Problem und hat eine Lösung zu teilen?

Antwort

2

Warum die Konten erstellt automatisch um 3rdPartyServer muss auf dem ursprünglichen Benutzer Login basieren? Sie können sie auch nach dem Zufallsprinzip generieren und dann nahtlos "im Haus" verwalten, so dass der Benutzer nicht einmal etwas über sie wissen muss. Verwenden Sie als George said eine Referenztabelle, mit der Sie einen Benutzer Ihres Systems mit allen generierten Aliasen kreuzen können.

+0

Guter Punkt. Ich könnte auch einfach immer eine GUID generieren und diese für den 3rdPartyServer verwenden. Bingo! –

+0

Ja, das ist das Ticket. Das Schwierige ist jetzt, wie Sie es nahtlos erscheinen lassen. Vor allem, wenn es möglich ist, dass ein Benutzer in jedem der beiden Konten $ 1 hat und versucht, eine $ 2-Aktion auszuführen! – ninesided

3

ein reference table Verwenden Sie die Zuordnungen zwischen echten Benutzern und erzeugen Benutzer zu verwalten. auf diese Weise können Sie überprüfen, ob Sie bereits ein Konto mit einem bestimmten Namen erzeugt.

Verwandte Themen