GET Object acl

オブジェクトのACL設定内容を取得します。

この操作を行うユーザは、オブジェクトに対してREAD_ACP権限を付与されていなければなりません。

リクエスト情報

シンタックス

GET /{object key}?acl HTTP/1.1
Host: {bucket name}.storage-dag.iijgio.com
Date: {date}
Authorization: {authorization string}
Range: bytes={byte range}

リクエストパラメータ

この操作ではリクエストパラメータは使用しません。

リクエストヘッダー

この操作では基本リクエストヘッダーのみ使用します。

リクエストエレメント

この操作ではリクエストエレメントは使用しません。

レスポンス情報

レスポンスヘッダー

この操作では基本レスポンスヘッダーのみ返します。

レスポンスエレメント

この操作では以下のレスポンスエレメントを返します。

表. GET Object acl レスポンスエレメント一覧
名前 説明
AccessControlList
Grantを含むコンテナ
型:Container
子:Grantee, Permission
親:AccessControlPolicy
AccessControlPolicy
AccessControlList、Ownerを含むコンテナ
型:Container
子:AccessControlList, Owner
親:なし
DisplayName
オブジェクト所有者の表示名または権限付与対象者の表示名
型:String
親:AcessControlPolicy.Owner または AcessControlPolicy.AccessControlList.Grant.Grantee
Grant
GranteeとPermissionを含むコンテナ
型:Container
子:Grantee, Permission
親:AcessControlPolicy.AccessControlList
Grantee
権限付与の対象についての情報。 DisplayName, IDを含むコンテナ
型:Container
子:DisplayName, ID
親:AcessControlPolicy.AccessControlList.Grant
ID
オブジェクト所有者のID、または権限付与対象者のID
型:String
親:AcessControlPolicy.Owner または AcessControlPolicy.AccessControlList.Grant.Grantee
Owner
オブジェクト所有者の情報。DisplayNameとIDを含むコンテナ
型:Container
子:DisplayName, ID
親:AcessControlPolicy
Permission
Granteeに与える権限
型:String
有効な値:FULL_CONTROL | WRITE | WRITE_ACP | READ | READ_ACP
親:AcessControlPolicy.AccessControlList.Grant

エラー情報

この操作では以下のエラーを返します。

表. GET Object acl エラーコード一覧
コード ステータス 内容
InvalidAccessKeyId 403 Forbidden 指定のアクセスキーIDを持つユーザが存在しません。
SignatureDoesNotMatch 403 Forbidden 指定されたリクエストのシグネチャが一致しません。
AccessDenied 403 Forbidden バケットに対するREAD_ACP権限がありません。
NoSuchKey 404 Not Found 指定オブジェクトキーのオブジェクトが存在しません。

サンプル

オブジェクトのACLを取得するサンプル
リクエスト
GET /my-image.jpg?acl HTTP/1.1
Host: bucket.storage-dag.iijgio.com
Date: Wed, 28 Oct 2009 22:32:00 GMT
Authorization: IIJGIO 02236Q3V0WHVSRW0EXG2:0RQf4/cRonhpaBX5sCYVf1bNRuU=
レスポンス
HTTP/1.1 200 OK
x-iijgio-id-2: eftixk72aD6Ap51TnqcoF8eFidJG9Z/2mkiDFu8yU9AS1ed4OpIszj7UDNEHGran
x-iijgio-request-id: 318BC8BC148832E5
x-iijgio-version-id: 4HL4kqtJlcpXroDTDmJ+rmSpXd3dIbrHY+MTRCxf3vjVBH40Nrjfkd
Date: Wed, 28 Oct 2009 22:32:00 GMT
Last-Modified: Sun, 1 Jan 2006 12:00:00 GMT
Content-Length: 124
Content-Type: text/plain
Server: storage-dag.iijgio.com
<AccessControlPolicy>
  <Owner>
    <ID>8a6925ce4adf588a4532aa379004fef</ID>
    <DisplayName>mtd@dag.iijgio.com</DisplayName>
  </Owner>
  <AccessControlList>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>8a6925ce4adf588a453214a379004fef</ID>
        <DisplayName>mtd@dag.iijgio.com</DisplayName>
      </Grantee>
      <Permission>FULL_CONTROL</Permission>
    </Grant>
  </AccessControlList>
</AccessControlPolicy>

PUT Object acl

既存のオブジェクトのACLを設定します。

この操作を行うユーザは、オブジェクトに対しWRITE_ACP権限を付与されていなければなりません。

リクエスト情報

シンタックス

PUT /{object key}?acl HTTP/1.1
Host: {bucket name}.storage-dag.iijgio.com
Date: {date}
Authorization: {authorization string}

<AccessControlPolicy>
  <Owner>
    <ID>{owner's show ID}</ID>
    <DisplayName>{owner's email address}</DisplayName>
  </Owner>
  <AccessControlList>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>{other account's show ID}</ID>
        <DisplayName>{other account's email address}</DisplayName>
      </Grantee>
      <Permission>{Permission}</Permission>
    </Grant>
  </AccessControlList>
</AccessControlPolicy>

リクエストパラメータ

この操作ではリクエストパラメータは使用しません。

リクエストヘッダー

この操作では基本リクエストヘッダーに加え、以下のヘッダーを使用します。

この操作は、PUT Object と同様にアカウントやグループ(匿名ユーザなど)に対して Access Control List(ACL) を設定することができます。
ACLを設定する方法として以下の2つが用意されています。ただし、両方を同時に指定することはできません。

Canned ACL で指定する場合

表. PUT Object acl リクエストヘッダー(Canned ACL)
HTTPヘッダー 説明 必須
x-iijgio-acl
オブジェクトのACLを設定する
型:String
有効な値:private | public-read | public-read-write | bucket-owner-read | bucket-owner-full-control
デフォルト値:private
×

詳細に指定する場合

より詳細に ACL を設定する場合は以下のリクエストヘッダーを指定してください。

表. PUT Object acl リクエストヘッダー(ACL詳細指定)
HTTPヘッダー 説明 必須
x-iijgio-grant-read
このオブジェクトの閲覧を許可するアカウントまたはグループのリスト
型:String
デフォルト値:なし
×
x-iijgio-grant-read-acp
オブジェクトACLの参照を許可するアカウントまたはグループのリスト
型:String
デフォルト値:なし
×
x-iijgio-grant-write-acp
オブジェクトACLの設定を許可するアカウントまたはグループのリスト
型:String
デフォルト値:なし
×
x-iijgio-grant-full-control
このオブジェクトに対して全ての権限を付加するアカウントまたはグループのリスト
型:String
デフォルト値:なし
×

設定するアカウントまたはグループはそれぞれtype=value形式で指定します。typeには以下のいずれかを指定できます。

  • emailAddress: アカウントのメールアドレス

  • id: アカウントの Show ID

  • url: グループを示す以下のURL

x-iijgio-grant-readヘッダーを指定する例:

x-iijgio-grant-read: emailAddress="taro@dag.iijgio.com", emailAddress="jiro@dag.iijgio.com"

リクエストエレメント

この操作では以下のリクエストエレメントを使用します。リクエストエレメントを使用する場合は、リクエストヘッダーでACLを指定することはできません。

表. PUT Object acl リクエストエレメント一覧
名前 説明 必須
AccessControlList
Grantを含むコンテナ
型:Container
親:AccessControlPolicy
×
AccessControlPolicy
AccessControlList、Ownerを含むコンテナ
型:Container
親:なし
×
DisplayName
オブジェクト所有者の表示名または権限付与対象者の表示名
型:String
親:AcessControlPolicy.OwnerまたはAcessControlPolicy.AccessControlList.Grant.Grantee
×
Grant
GranteeとPermissionを含むコンテナ
型:Container
子:Grantee, Permission
親:AcessControlPolicy.AccessControlList
×
Grantee
権限付与の対象についての情報。DisplayName, IDを含むコンテナ
型:Container
子:DisplayName, ID
親:AcessControlPolicy.AccessControlList.Grant
×
ID
オブジェクト所有者のID、または権限付与対象者のID
型:String
親:AcessControlPolicy.OwnerまたはAcessControlPolicy.AccessControlList.Grant.Grantee
×
Owner
オブジェクト所有者の情報。DisplayNameとIDを含むコンテナ
型:Container
子:DisplayName, ID
親:AcessControlPolicy
×
Permission
Granteeに与える権限
型:String
有効な値:FULL_CONTROL | WRITE | WRITE_ACP | READ | READ_ACP
親:AcessControlPolicy.AccessControlList.Grant
×
Granteeの指定は以下の方法で行うことができます。
ID
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
  <ID>ID</ID>
  <DisplayName>GranteesEmail</DisplayName>
</Grantee>

この例では、IDが有効になるためGranteesEmailは無視されます。

E-mailアドレス
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="iijgioCustomerByEmail">
  <EmailAddress>Grantees@email.com</EmailAddress>
</Grantee>
URI
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Group">
  <URI>http://acs.dag.iijgio.com/groups/global/AllUsers<URI>
</Grantee>

レスポンス情報

レスポンスヘッダー

この操作では基本レスポンスヘッダーのみ返します。

レスポンスエレメント

この操作はレスポンスエレメントを返しません。

エラー情報

この操作では以下のエラーを返します。

表. PUT Object acl エラーコード一覧
コード ステータス 内容
InvalidAccessKeyId 403 Forbidden 指定のアクセスキーIDを持つユーザが存在しません。
SignatureDoesNotMatch 403 Forbidden 指定されたリクエストのシグネチャが一致しません。
AccessDenied 403 Forbidden バケットに対するREAD_ACP権限がありません。
NoSuchBucket 404 Not Found 指定のバケットが存在しません。
AmbiguousGrantByEmailAddress 400 Bad Request 指定のメールアドレスが、複数のアカウントに関連しています。
MalformedACLError 400 Bad Request 指定のXMLはwell-formedではない、またはこちらが提供しているスキーマに合っていません。

サンプル

既存のオブジェクトに新たなアクセス許可を追加するリクエストのサンプルです。ShowID 8a6925ce4adf588a45379004fef のアカウントに対して FULL_CONTROL 権限を与えます。
リクエスト
PUT /my-image.jpg?acl HTTP/1.1
Host: bucket.storage-dag.iijgio.com
Date: Wed, 28 Oct 2009 22:32:00 GMT
Authorization: IIJGIO 02236Q3V0WHVSRW0EXG2:0RQf4/cRonhpaBX5sCYVf1bNRuU=
Content-Length: 124

<AccessControlPolicy>
  <Owner>
    <ID>8a6925ce4adf588e97f21c32aa379004fef</ID>
    <DisplayName>CustomersName@dag.iijgio.com</DisplayName>
  </Owner>
  <AccessControlList>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>8a6925ce4adf588a45379004fef</ID>
        <DisplayName>CustomerName@dag.iijgio.com</DisplayName>
      </Grantee>
      <Permission>FULL_CONTROL</Permission>
    </Grant>
  </AccessControlList>
</AccessControlPolicy>
レスポンス
HTTP/1.1 200 OK
x-iijgio-id-2: eftixk72aD6Ap51T9AS1ed4OpIszj7UDNEHGran
x-iijgio-request-id: 318BC8BC148832E5
Date: Wed, 28 Oct 2009 22:32:00 GMT
Last-Modified: Sun, 1 Jan 2006 12:00:00 GMT
Content-Length: 0
Connection: close
Server: storage-dag.iijgio.com

ページ先頭へ