5

Javaアプリケーションを介してAmazons3バケットにテキストファイルをアップロードしています。そのファイルの読み取りアクセスをすべての人に設定したいと思います。誰かがこれを行う方法を知っていますか?または私をいくつかの適切なリソースに誘導しますか?

4

1 に答える 1

30

すべてのリソース (またはワイルドカードに一致するリソース) を利用可能にするバケット ポリシーを作成できます。

aws S3 コンソールでバケットのプロパティをクリックし、バケット ポリシーを次のように編集します。

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "auniqueid",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::bucket/*"
        }
    ]
}

パラメータのどこbucketResourceバケット名があります。

また、Java API を介して特定のファイルの公開許可を設定することもできます。

PutObjectRequest por = new PutObjectRequest(bucketName, key, file);
por.setCannedAcl(CannedAccessControlList.PublicRead);
s3.putObject(por);
于 2012-11-09T00:42:44.563 に答える