2009-05-15 8 views
1

Mon service communique avec un serveur qui gère les comptes.Comment concevoir une méthode pare-balles pour relier une chaîne à une chaîne de base?

  • Chaque compte a un plafond sur le nombre d'opérations effectuées par mois.
  • Je souhaite contourner ce plafond en créant de nouveaux comptes liés via un schéma.

Voici comment cela devrait fonctionner:

  1. utilisateur crée un compte "denzel" via MyService.
  2. MyService à son tour, la procuration de création de compte 3rdPartyServer
  3. utilisateur "denzel" vérifie son crédit et MyService rendement 45 $ (plafond par défaut par utilisateur).
  4. L'utilisateur "denzel" achète 45 $ de plus via MyService. MyService subrepticement crée (en arrière-plan) compte A dans 3rdPartyServer mais gère la relation entre "denzel" & "A".
  5. utilisateur « denzel » vérifie son crédit et MyService retours 90

$ Une façon débile pour gérer la relation consiste à ajouter un compte à l'ID utilisateur d'origine. par exemple. « denzel1 », « denzel2 » etc .. Cela ne fonctionne que nous ne voulons pas de ne pas empêcher les autres utilisateurs de choisir denzel1 »ou autres de la série pour cette question.

Quelqu'un at-il fait face à cette problème et a une solution à partager?

Répondre

2

Pourquoi la comptes créés automatiquement au 3rdPartyServer besoin d'être basé sur la connexion de l'utilisateur d'origine? Vous pourriez aussi bien les générer aléatoirement et ensuite les gérer de manière transparente "en interne" afin que l'utilisateur n'ait même pas besoin de les connaître. En tant que George said, utilisez une table de référence qui vous permet de référencer un utilisateur de votre système avec tous les alias générés.

+0

Bon point. Je pourrais tout aussi bien générer un GUID à chaque fois et l'utiliser pour 3rdPartyServer. Bingo! –

+0

oui, c'est le ticket. Le peu difficile est maintenant comment vous le faites apparaître transparent. Surtout s'il est possible qu'un utilisateur puisse se retrouver avec 1 $ dans chacun des deux comptes et essayer d'effectuer une action de 2 $! – ninesided

3

Utilisez un reference table pour gérer les correspondances entre les utilisateurs réels et générés utilisateurs. de cette façon, vous pouvez vérifier si vous avez déjà généré un compte avec un nom donné.

Questions connexes