S3CORSとキーの有効期限を使用して「スプールバケット」を作成したいと思います。このスプールバケットは、以下をサポートする必要があります。
HTTP PUT
フロントエンドコード(jQueryなど)は、バケットへのキーに任意の名前を付けることができる必要があります- バックエンドコード(たとえば、Python / boto)は、キー名を指定して、これらのキーを読み取って削除できる必要があります
- キーはX日後に自動的に期限切れになります
これはどの程度正確に達成する必要がありますか?
S3CORSとキーの有効期限を使用して「スプールバケット」を作成したいと思います。このスプールバケットは、以下をサポートする必要があります。
HTTP PUT
フロントエンドコード(jQueryなど)は、バケットへのキーに任意の名前を付けることができる必要がありますこれはどの程度正確に達成する必要がありますか?
少しいじった後、私が見つけたものは次のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*.example.com</AllowedOrigin>
<AllowedMethod>PUT</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
x-amz-acl: bucket-owner-full-control
。たとえば、CoffeeScriptとjQueryでは、PUTは次のようになります。$.ajax http://my_spool_bucket.s3.amazonaws.com,
type: "PUT"
data: "contents of new object"
headers:
"x-amz-acl": "bucket-owner-full-control"
それでおしまい。高可用性、自己消去、CORS互換、安価で簡単なHTTPスプールスペースの栄光を満喫してください。覚えておくべき重要なことの1つは、どのクライアントもどのキーも上書きできるということです。それに応じて設計する必要があります(暗号的に安全な生成キーを使用します)。