PutBucketACL

Prev Next

Classic/VPC環境で利用できます。

Object Storageのバケットに適用するアクセス制御リスト(ACL)を作成したり、既存の ACLを変更したりします。
ACLを適用すると、アカウントの IDやあらかじめ作成された ACL(基本ACL)を利用して、ストレージアカウントごとに異なる権限の集合を付与できます。

参考

NAVERクラウドプラットフォーム Object Storageサービスを利用中の会員を対象に、バケットとオブジェクトへのアクセス権限を付与できます。
詳細は、アクセス制御リスト(ACL)をご参照ください。

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
PUT {bucket-name}

リクエスト構文

リクエスト構文は次の通りです。

PUT https://{endpoint}/{bucket-name}?acl= # path style
PUT https://{bucket-name}.{endpoint}?acl= # virtual host style

リクエストヘッダ

バケット ACL設定の APIヘッダを紹介します。Object Storage APIで共通して使用されるヘッダの詳細は、Object Storageの共通ヘッダをご参照ください。

ヘッダ 説明
x-amz-acl 所有者およびユーザーに付与された権限

リクエストパスパラメータ

パラメータの説明は次の通りです。

フィールド タイプ 必須の有無 説明
bucket-name String Required アクセス制御リスト(ACL)を作成または変更するバケットの名前

リクエストクエリパラメータ

パラメータの説明は次の通りです。

フィールド タイプ 必須の有無 説明
acl String Optional アクセス制御リスト(ACL)を作成または変更

リクエスト例

リクエストのサンプルコードは次の通りです。

基本 ACL

次は、x-amz-aclリクエストヘッダを通じてバケットにpublic-read権限を付与するようにリクエストするサンプルコードです。この権限が付与されると、ストレージアカウントを使用するすべてのユーザーがこのバケットの内容と ACLの詳細情報を確認できます。

PUT /{bucket-name}?acl= HTTP/1.1
Host: kr.object.ncloudstorage.com
X-amz-date: {Timestamp}
x-amz-acl: public-read
Authorization: {authorization-string}

ユーザー定義 ACL

次は、他アカウントを使用した場合、バケットに適用された ACLを確認することはできますが、バケットに保存されたオブジェクトは照会できないようにリクエストするサンプルコードです。

下記の XML内容のうち2番目のアカウントにはすべての権限が付与されているため、同じバケット内ではすべてのオペレーションを実行できます。システムにより認証されたユーザーは、誰でもバケットにあるオブジェクトを照会できます。

PUT /{bucket-name}?acl= HTTP/1.1
Host: kr.object.ncloudstorage.com
X-amz-date: {Timestamp}
Authorization: {authorization-string}
<?xml version="1.0" encoding="UTF-8"?>
<AccessControlPolicy xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
  <Owner>
    <ID>{owner-user-id}</ID>
    <DisplayName>{owner-user-id}</DisplayName>
  </Owner>
  <AccessControlList>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>{first-grantee-user-id}</ID>
        <DisplayName>{first-grantee-user-id}</DisplayName>
      </Grantee>
      <Permission>READ_ACP</Permission>
    </Grant>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>{second-grantee-user-id}</ID>
        <DisplayName>{second-grantee-user-id}</DisplayName>
      </Grantee>
      <Permission>FULL_CONTROL</Permission>
    </Grant>
  </AccessControlList>
</AccessControlPolicy>

レスポンス

レスポンス形式を説明します。

レスポンスヘッダ

Object Storage APIで共通して使用されるレスポンスヘッダの詳細は、Object Storageの共通レスポンスヘッダをご参照ください。

レスポンスステータスコード

Object Storage APIで共通して使用されるレスポンスステータスコードの詳細は、Object Storageのレスポンスステータスコードをご参照ください。

レスポンス例

レスポンスのサンプルコードは次の通りです。

基本 ACL

基本 ACLレスポンスのサンプルコードは次の通りです。

HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:45:25 GMT
Accept-Ranges: bytes
x-amz-request-id: xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
Content-Length: 0

ユーザー定義 ACL

ユーザー定義 ACLレスポンスのサンプルコードは次の通りです。

HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:45:25 GMT
Accept-Ranges: bytes
x-amz-request-id: xxxxx-xxxxx-xxxxx-xxxxx-xxxxx