KDDIクラウドプラットフォームサービス ナレッジサイト

  • HOME
  • 開発者ガイドブック(APIリファレンス)
  • オブジェクトストレージ
  • サービス操作
  • オブジェクト操作
  • PUT Object ACL

PUT Object ACL

処理概要

PUT Object ACLはaclサブリソースを利用し、bucketに存在するobjectにアクセスコントロールリスト(ACL)を設定します。objectにACLを設定するには、objectに対してWRITE_ACP権限が必要です。

リクエスト

リクエストパラメタ

なし

リクエストヘッダー

共通リクエストヘッダに加えて、下記ヘッダが利用可能です。

Name Type Description Required
x-amz-acl string HeaderによるACL設定時に指定。private / public-readなど。
※public-read-write / authenticated-read / bucket-owner-read / bucket-owner-full-controlは非対応
No
x-amz-grant-read string

HeaderによるACL設定時に指定。

・id=<UUID>
・emailAddres=<username>
(API仕様上メールアドレスではなくUsernameで指定)
・uri=< Amazon’s pre-defined groups.>

No
x-amz-grant-read-acp string No
x-amz-grant-write-acp string No
x-amz-grant-full-control string No

リクエストボディ

Name Type Description
AccessControlList container ACLのコンテナ
AccessControlPolicy container grantee毎のobjectのACLのセットを内包する
DisplayName string bucketオーナーのスクリーン名
Grant container granteeとそのpermissionのコンテナ
Grantee string permissionを付与する対象
ID string bucketオーナーかgranteeのID
Owner container bucketオーナーのスクリーン名とIDのコンテナ
Permission string granteeに設定されたpermission (FULL_CONTROL, WRITE, READ_ACP)
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<AccessControlPolicy xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <AccessControlList>
        <Grant>
            <Grantee>string</Grantee>
            <ID>string</ID>
            <Permission>string</Permission>
        </Grant>
    </AccessControlList>
    <Owner>
        <ID>string</ID>
        <DisplayName>string</DisplayName>
    </Owner>
</AccessControlPolicy>

リクエストサンプル

PUT /sample-bucket/sample-object.txt?acl HTTP/1.1
Host: 192.168.0.1
Connection: keep-alive
Date: Tue, 01 Sep 2015 10:00:00 +0000
Authorization: AWS EXAMPLEjU2So5By3H5v2:EXAMPLEAjwlAvEi2cPLfQaM588ROWW90so7LwfPr
<AccessControlPolicy xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Owner>
<ID>56789abc-def0-1234-5678-9abcdef01234</ID>
</Owner>
<AccessControlList>
<Grant>
<Grantee xsi:type="CanonicalUser" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ID>56789abc-def0-1234-5678-9abcdef01234</ID>
</Grantee>
<Permission>FULL_CONTROL</Permission>
</Grant>
</AccessControlList>
</AccessControlPolicy>

リクエストサンプル(AWS記述では Sample Request: Access permissions specified using headers)

PUT /sample-bucket/sample-object.txt?acl HTTP/1.1
Host: 192.168.0.1
Content-Length: 0
x-amz-grant-read: uri="http://acs.amazonaws.com/groups/global/AllUsers"
Connection: keep-alive
Date: Tue, 01 Sep 2015 10:00:00 +0000
Authorization: AWS EXAMPLEjU2So5By3H5v2:EXAMPLEAjwlAvEi2cPLfQaM588ROWW90so7LwfPr

レスポンス

レスポンスヘッダ

このオペレーションはすべての操作に共通するレスポンスヘッダのみを使用しています。詳細については、一般的なレスポンスヘッダを参照してください。

Name Type Description
x-amz-version-id 使用不可

レスポンスボディ

なし

レスポンスサンプル

HTTP/1.1 200 OK
Date: Tue, 01 Sep 2015 10:00:00 GMT
X-Clv-Request-Id: 01234567-89ab-cdef-0123-456789abcdef
Server: Cleversafe/3.5.1.0
X-Clv-S3-Version: 2.4
x-amz-request-id: 01234567-89ab-cdef-0123-456789abcdef
Content-Length: 0
2024/04/23 2024/04/23