GET Bucket acl

バケットのACL設定内容を返します。

このリクエストで有効な結果を得るには、クライアントがこのバケットに対するREAD_ACP権限を付与されている必要があります。

匿名ユーザにREAD_ACP権限が付与されている場合、Authorizationヘッダーを利用せずにACL設定を取得する事ができます。

リクエスト情報

シンタックス

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

リクエストパラメータ

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

リクエストヘッダー

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

リクエストエレメント

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

レスポンス情報

レスポンスヘッダー

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

レスポンスエレメント

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

表. GET Bucket acl レスポンスエレメント一覧
名前 説明
AccessControlList
Grant情報を含むコンテナ
型:Container
子:Grant
親:AccessControlPolicy
AccessControlPolicy
ACL情報、所有者情報を含むコンテナ
型: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に与えられた権限(FULL_CONTROL, WRITE, READ_ACP)
型:String
有効な値:FULL_CONTROL | WRITE | WRITE_ACP | READ | READ_ACP
親:AcessControlPolicy.AccessControlList.Grant

エラー情報

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

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

サンプル

バケットのACL設定を取得するサンプル
リクエスト
GET /?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
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>8a6925ce4adee97f21c32aa379004fef</ID>
    <DisplayName>CustomersName@dag.iijgio.com</DisplayName>
  </Owner>
  <AccessControlList>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>8a6925ce4adf57f21c32aa379004fef</ID>
        <DisplayName>CustomersName@dag.iijgio.com</DisplayName>
      </Grantee>
      <Permission>FULL_CONTROL</Permission>
    </Grant>
  </AccessControlList>
</AccessControlPolicy>

PUT Bucket acl

既存のバケットのACLを設定します。
Bucket作成時にACLを設定する場合、リクエストヘッダーの x-iijgio-acl を使用します。
ACLを設定するにはバケットに対してWRITE_ACP権限が必要です。

Warning

AllUsersグループ(http://acs.dag.iijgio.com/groups/global/AllUsers)に対してWRITE権限を付与した場合、匿名(anonymous)ユーザを含む全ての利用者が該当Bucketに対してObjectのアップロードができてしまいますのでご注意ください。

リクエスト情報

シンタックス

PUT /?acl HTTP/1.1
Host: {bucket name}.storage-dag.iijgio.com
Date: {date}
Authorization: {signature string}
<AccessControlPolicy>
  <Owner>
    <ID>{owner's canonical user 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 canonical user ID}</ID>
        <DisplayName>{other account's email address}</DisplayName>
      </Grantee>
      <Permission>{Permission}</Permission>
    </Grant>
  </AccessControlList>
</AccessControlPolicy>

リクエストパラメータ

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

リクエストヘッダー

PUT Bucket と同様、リクエストヘッダーを使用して、 Access Control List(ACL) を設定することができます。
ACLを設定する方法として以下の2つが用意されています。ただし、両方を同時に指定することはできません。

Canned ACL で指定する場合

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

詳細に指定する場合

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

表. PUT Bucket acl リクエストヘッダー(ACL詳細指定)
HTTPヘッダー 説明 必須
x-iijgio-grant-read
このバケットにおけるオブジェクト一覧の閲覧を許可するアカウントまたはグループのリスト
型: String
デフォルト値: なし
×
x-iijgio-grant-write
このバケットに対してオブジェクトの作成、上書き、削除を許可するアカウントまたはグループのリスト
型: 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 Bucket 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 Bucket 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 ではない、またはこちらが提供しているスキーマに合っていません。

サンプル

バケットのACLを設定するサンプル
リクエスト
PUT /?acl HTTP/1.1
Host: quotes.storage-dag.iijgio.com
Content-Length: 214
Date: Wed, 25 Nov 2009 12:00:00 GMT
Authorization: IIJGIO 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
<AccessControlPolicy>
  <Owner>
    <ID>8a6925ce4adf588a4f21c32aa379004fef</ID>
    <DisplayName>BucketOwnersEmail@dag.iijgio.com</DisplayName>
  </Owner>
  <AccessControlList>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>8a6925ce47f21c32aa379004fef</ID>
        <DisplayName>BucketOwnersEmail@dag.iijgio.com</DisplayName>
      </Grantee>
      <Permission>FULL_CONTROL</Permission>
    </Grant>
  </AccessControlList>
</AccessControlPolicy>
レスポンス
HTTP/1.1 200 OK
x-iijgio-id-2: YgIPIfBiKa2bj0KMgUAdQkf3ShJTOOpXUueF6QKo
x-iijgio-request-id: 236A8905248E5A01
Date: Wed, 01 Mar 2009 12:00:00 GMT

ページ先頭へ