Frage

Ich spiele mit der Verwendung von Amazon Web Service in meinem persönlichen Projekt um. Ich habe ihre AWS SDK für .NET gepackt und ich verwende, aber ich bin ein wenig verwirrt.

  1. Der Zugriff auf den Web-Service (in diesem Fall, SimpleDB, obwohl ich glaube nicht, das ist wirklich Material auf die Frage) über ein privates / öffentliches Schlüsselpaar zugelassen ist.

  2. Das AWS SDK für .NET-API verwendet, um ein Client-Objekt zu erstellen erfordert den privaten Schlüssel:

    AWSClientFactory.CreateAmazonSimpleDBClient(publicKey, privateKey);
    
  3. Dies ist eine Client-Anwendung, so dass der Code auf dem Client ausgeführt vollständig wäre.

  4. darauf hindeutet, dass der Client benötigen würde den Zugriff auf meine privaten Schlüssel haben Zugriff auf die SimpleDB zu haben. Aber Amazon wiederholt und mit Nachdruck erklärt, dass meine privaten Schlüssel muss meine Kontrolle nicht verlassen.

Das macht keinen Sinn für mich machen, so dass ich mich heraus etwas fehlen muss.

Ist eine clientseitige Anwendung das falsche Modell für die Amazon Web Services in der Regel für ihre AWS SDK für .NET, oder bin ich etwas fehlt, die eine Client-Anwendung durchaus sinnvoll macht? Gibt es einen guten Weg, um Arbeit, um dies ohne einen Proxy-Dienst meines eigenen zu erstellen, die Kunden authentifizieren würde und sie darauf, ihre Anfragen an die SimpleDB?

War es hilfreich?

Lösung

Sie keinen Proxy, dass Fronten der Fernbedienung (AWS) Dienst implementieren müssen. implementieren nur einen einfachen, kleinen, authentifizierte Dienst, kehrt an den Client die URL und Header zu verwenden, wenn AWS Kontakt gebracht wird. Ihr authentifizierte webservice die AWS geheim hält, und stellt nur die signierte URL und Header an den Client, der und macht, dass die zurückgegebenen Informationen mit dem eigentlichen Anruf Arbeit geht dann.

Auf diese Weise kann der Systemaufwand vermeiden während der AWS Aufruf durch Ihre eigenen Server zu gehen, spart Latenz, Bandbreite, gebunden Sockets auf dem Server, Fehlerbehandlung Komplexität, etc. Sie nehmen nur einen leichten Schlag nach vorne für der Kunde die richtigen Anweisungen zu erhalten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top