Sto cercando di utilizzare Amazon S3 e simpleDB in un'applicazione desktop.Memorizzare le mie credenziali Amazon nell'app desktop C#
Il problema principale che ho è che ho bisogno di memorizzare le credenziali di aws nell'applicazione o utilizzare qualche altro schema.
Immagino che archiviarli nell'applicazione sia fuori questione in quanto sarebbero facilmente individuabili.
Un'altra opzione è creare un servizio Web che crea la firma di autenticazione aws ma questo ha i suoi problemi. La firma richiede tutti i dati da un file che viene caricato? In tal caso, dovrei trasferire tutti i dati due volte. Ci sarebbe quindi un punto di errore centrale che era uno dei motivi principali per l'utilizzo di aws.
Qualche idea?
UPDATE:
avevo bisogno di fare un po 'più chiaro che sto volendo conservare le mie credenziali AWS in un'applicazione distribuito agli altri. DPAPI o qualsiasi altra crittografia potrebbero solo impedire alle persone di utilizzare semplicemente Reflector per ottenere le credenziali. L'utilizzo di qualsiasi crittografia richiede ancora la chiave che è facile da ottenere.
UPDATE 2 - Settembre 2011
Amazon hanno rilasciato alcuni dettagli sull'uso del servizio token di sicurezza AWS, che consente l'autenticazione, senza rivelare la vostra chiave segreta. Ulteriori dettagli sono disponibili su this blog post.
Questo è praticamente tutto! Per essere onesti, se i file vengono caricati su Internet, non c'è molto che mi trattiene con un'app desktop. Beh, a parte la mia mancanza di conoscenza asp, e il fatto che è facile fare una bella app in Winforms/WPF – Tim
Great! La tua domanda è perfettamente valida anche per le web app, credo, se vogliono evitare di inviare il file due volte (dal browser alla webapp, poi dalla webapp alla s3). I campioni di Amazon sembrano saltare questa considerazione a volte. Correzione –
: Il secondo parametro di 'PutObjectInline()' è _la chiave da assegnare all'oggetto_, e non 'cAWSSecretKey'. Vedi [doc AWS] (http://docs.amazonwebservices.com/AmazonS3/latest/API/SOAPPutObjectInline.html). – amolbk