SOAP のアクセスポリシーの設定
注記
SOAP API for Amazon S3 は新規顧客には利用できず、2025 年 8 月 31 日にサポート終了 (EOL) となります。REST API か AWS SDK を使用することをお勧めします。
アクセスコントロールは、バケットまたはオブジェクトの記述時に、「AccessControlList」要素と一緒に CreateBucket、PutObjectInline、または PutObject へのリクエストを含めることによって設定できます。AccessControlList 要素は、「Amazon S3 用 Identity and Access Management」で説明されています。これらのオペレーションでアクセスコントロールリストが指定されていない場合、リクエスタに FULL_CONTROL アクセスを付与するデフォルトのアクセスポリシーでリソースを生成します (これは該当のリクエストが、既に存在するオブジェクトへの PutObjectInline または PutObject リクエストである場合にも当てはまります)。
以下に示すリクエストは、オブジェクトにデータを書き込み、匿名のプリンシパルによるオブジェクトの読み取りを可能にし、特定のユーザーにバケットへの FULL_CONTROL の権限を付与します (ほとんどの開発者は、自分で自分のバケットに FULL_CONTROL アクセスを付与したいと考えるでしょう)。
例
以下に示すリクエストは、オブジェクトにデータを書き込み、匿名のプリンシパルによるオブジェクトの読み取りを可能にします。
Sample Request
<PutObjectInline xmlns="https://doc.s3.amazonaws.com/2006-03-01"> <Bucket>quotes</Bucket> <Key>Nelson</Key> <Metadata> <Name>Content-Type</Name> <Value>text/plain</Value> </Metadata> <Data>aGEtaGE=</Data> <ContentLength>5</ContentLength> <AccessControlList> <Grant> <Grantee xsi:type="CanonicalUser"> <ID>75cc57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID> <DisplayName>chriscustomer</DisplayName> </Grantee> <Permission>FULL_CONTROL</Permission> </Grant> <Grant> <Grantee xsi:type="Group"> <URI>http://acs.amazonaws.com/groups/global/AllUsers<URI> </Grantee> <Permission>READ</Permission> </Grant> </AccessControlList> <AWSAccessKeyId>AKIAIOSFODNN7EXAMPLE</AWSAccessKeyId> <Timestamp>2009-03-01T12:00:00.183Z</Timestamp> <Signature>Iuyz3d3P0aTou39dzbqaEXAMPLE=</Signature> </PutObjectInline>
Sample Response
<PutObjectInlineResponse xmlns="https://s3.amazonaws.com/doc/2006-03-01"> <PutObjectInlineResponse> <ETag>"828ef3fdfa96f00ad9f27c383fc9ac7f"</ETag> <LastModified>2009-01-01T12:00:00.000Z</LastModified> </PutObjectInlineResponse> </PutObjectInlineResponse>
既存のバケットまたはオブジェクトのアクセスコントロールポリシーは、GetBucketAccessControlPolicy、GetObjectAccessControlPolicy、SetBucketAccessControlPolicy、SetObjectAccessControlPolicy メソッドを使って読み込みまたは設定できます。詳細については、これらのメソッドの詳しい説明を参照してください。