Question

Je joue autour de l'utilisation des services Web amazon dans mon projet personnel. Je l'ai attrapé leur AWS SDK pour .NET et j'utilise, mais je suis un peu confus.

  1. L'accès au service Web (dans ce cas, SimpleDB, bien que je ne pense pas que ce soit vraiment important à la question) est autorisée par une paire clé privée / publique.

  2. Le AWS SDK pour API .NET utilisé pour créer un objet client nécessite la clé privée:

    AWSClientFactory.CreateAmazonSimpleDBClient(publicKey, privateKey);
    
  3. Ceci est une application client, de sorte que le code serait en cours d'exécution entièrement sur le client.

  4. Suggérant que le client aurait besoin d'avoir accès à ma clé privée pour avoir accès au SimpleDB. Mais amazone à plusieurs reprises et déclare catégoriquement que ma clé privée ne doit pas quitter mon contrôle.

Cela n'a pas de sens pour moi, donc je me dis que je dois manquer quelque chose.

est une application côté client le mauvais modèle pour les services Web amazon en général, pour utiliser leur AWS SDK pour .NET, ou suis-je manque quelque chose qui fait une application cliente parfaitement raisonnable? Y at-il un bon moyen de contourner cela sans créer un service proxy de mon propre qui authentifier les clients et transmettre leurs demandes au SimpleDB?

Était-ce utile?

La solution

Vous n'avez pas besoin de mettre en œuvre un proxy qui fait face à la service à distance (AWS). Il suffit de mettre en œuvre un simple, petit, service authentifié qui retourne au client URL et les en-têtes à utiliser lorsque vous communiquez avec AWS. Votre webservice authentifié garde le secret AWS, et ne fournit que l'URL de requête signée et en-têtes à la client, qui va ensuite et fait l'appel de travail réel en utilisant ces informations retournées.

De cette façon, vous évitez les frais généraux pendant l'appel AWS d'avoir à passer par vos propres serveurs, temps de latence d'économie, bande passante, Ligoté prises sur votre serveur, la complexité de manipulation de défaillance, etc. Vous prenez juste un coup léger à l'avant pour le client pour obtenir les instructions appropriées.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top