Acesso limitado aos buckets do Amazon S3

1

É possível limitar de alguma forma o acesso a uma conta do Amazon S3. Não gosto muito da ideia de distribuir minha chave de acesso secreta a todos os meus aplicativos, que desejam acessar apenas um único intervalo na minha conta. Se alguém obtiver acesso a um dos aplicativos, eu poderia perder todos os meus dados armazenados no S3.

Uma maneira que eu estava pensando em fazer seria criar uma segunda conta S3 e dar acesso a apenas um balde da conta principal, mas não é realmente uma ótima solução.

Outra coisa boa para mim seria dar à conta secundária apenas gravação (mas não modificar / excluir) e acesso de leitura. Dessa forma, posso fazer upload de backups ou outros arquivos e ter certeza de que eles não serão perdidos.

    
por Tomas Markauskas 08.09.2009 / 22:16

1 resposta

1

Acho que isso responderá à sua pergunta:

Desça e comece a ler na resposta de Michael Fisher.

DO NOT hardcode your key on the client. The right way to do this is (via a secure channel) to deliver a pre-built request with an encrypted signature -- this signature can be built with the API provided by S3.

You can extract the composition of the encrypted signature reqest from one of the request objects in the S3.cs class (I am referring to the C# implementation - not sure which you are using but they should be pretty analagous). Then have your client securely request the object from your server side, and rather than spit back the object, spit back the formated request. I believe this is the most secure technique, assuming again that you've properly secured the channel (SSL, or whatever scheme you choose).

    
por 08.09.2009 / 23:05