すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:GetObjectACL

最終更新日:Feb 23, 2024

バケット内のオブジェクトのアクセス制御リスト (ACL) を照会します。

バージョン管理

既定では、GetObjectACL操作を呼び出してオブジェクトのACLを照会すると、オブジェクトの現在のバージョンのACLのみが返されます。 リクエストでversionIdパラメーターを指定して、指定したバージョンのオブジェクトのACLを照会できます。 指定されたバージョンが削除マーカーである場合、Object Storage Service (OSS) は404 Not Foundを返します。

説明

GetObjectACL操作を呼び出して、ACLが設定されていないオブジェクトのACLを照会すると、OSSはこのオブジェクトのデフォルトACLを返します。 この場合、このオブジェクトのACLは、オブジェクトが格納されているバケットのACLと同じです。 たとえば、オブジェクトが格納されているバケットのACLがプライベートの場合、オブジェクトのACLもプライベートです。

リクエスト構文

GET /ObjectName?acl HTTP/1.1
ホスト: BucketName.oss-cn-hangzhou.aliyuncs.com
日付: GMT日付
権限付与: SignatureValue 

リクエストヘッダー

このリクエストには、共通リクエストヘッダーのみが含まれます。 詳細については、「共通HTTPヘッダー」をご参照ください。

レスポンスヘッダー

このリクエストには、共通のレスポンスヘッダーのみが含まれます。 詳細については、「共通HTTPヘッダー」をご参照ください。

レスポンス要素

要素

データ型

説明

AccessControlList

Container

ACL情報を格納するコンテナー。

親ノード: AccessControlPolicy

AccessControlPolicy

Container

GetObjectACLリクエストの結果を格納するコンテナー。

親ノード: なし

DisplayName

String

バケット所有者の名前。ユーザーIDと同じです。

親ノード: AccessControlPolicy.Owner

助成金

Enumerated string

オブジェクトのACL。 デフォルト値:default。

有効な値:

  • デフォルト: オブジェクトのACLは、オブジェクトが格納されているバケットのACLと同じです。

  • private: オブジェクトのACLがprivateです。

  • public-read: オブジェクトのACLはpublic readです。

  • public-read-write: オブジェクトのACLはpublic read/writeです。

親ノード: AccessControlPolicy.AccessControlList

ID

String

バケット所有者のユーザーID。

親ノード: AccessControlPolicy.Owner

所有者

Container

バケット所有者に関する情報を格納するコンテナー。

親ノード: AccessControlPolicy

  • バージョン化されていないバケット内のオブジェクトのACLを照会する

    リクエストの例

    GET /test-object?acl HTTP/1.1
    ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
    日付: 4月29日水曜日05:21:12 GMT 2015
    承認: OSS qn6qrrqxo2oawuk53otfjbyc:CTkuxpLAi4XZ + WwIfNm0Fmgb **** 

    レスポンスの例

    HTTP/1.1 200 OK
    x-oss-request-id: 559CC9BDC755F95A64485981
    日付: 4月29日水曜日05:21:12 GMT 2015
    コンテンツ-長さ: 253
    Content-Type: application/xml
    接続: キープアライブ
    サーバー: AliyunOSS
    <?xml version="1.0" ?>
    <AccessControlPolicy>
        <Owner>
            <ID>00220120222</ID>
            <DisplayName>00220120222</DisplayName>
        </Owner>
        <AccessControlList>
            <Grant>public-read </Grant>
        </AccessControlList>
    </AccessControlPolicy> 
  • バージョン管理されたバケット内のオブジェクトのACLを照会する

    リクエストの例

    GET /example?acl&versionId=CAEQMhiBgMC1qpSD0BYiIGQ0ZmI5ZDEyYWVkNTQwMjBiNTliY2NjNmY3ZTVk **** HTTP/1.1
    ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
    日付: 4月2019日火曜日06:30:10 GMT
    承認: OSS qctg2ns3l8u51iu:w4DK66Kb/0M9GJKdsrpNs8l1 **** 

    レスポンスの例

    HTTP/1.1 200 OK
    x-oss-version-id: CAEQMhiBgMC1qpSD0BYiIGQ0ZmI5ZDEyYWVkNTQwMjBiNTliY2NjNmY3ZTVk ****
    x-oss-request-id: 5CAC3BF2B7AEADE017000621
    日付: 4月2019日火曜日06:30:10 GMT
    コンテンツ-長さ: 261
    Content-Type: application/xml
    接続: キープアライブ
    サーバー: AliyunOSS
    <?xml version="1.0" encoding="UTF-8"?>
    <AccessControlPolicy>
      <Owner>
        <ID>1234513715092****</ID>
        <DisplayName>1234513715092****</DisplayName>
      </Owner>
      <AccessControlList>
        <Grant>public-read</Grant>
      </AccessControlList>
    </AccessControlPolicy> 

SDK

次のプログラミング言語のOSS SDKを使用して、GetObjectACL操作を呼び出すことができます。

エラーコード

エラーコード

HTTPステータスコード

エラーメッセージ

説明

AccessDenied

403

このオブジェクトに対する読み取り acl 権限がありません。

GetObjectACL操作を実行する権限がない場合に返されるエラーメッセージ。 GetObjectACL操作を呼び出してバケット内のオブジェクトのACLを照会する権限があるのは、バケット所有者だけです。

FileAlreadyExists

409

指定したオブジェクトは既に存在し、ディレクトリです。

ACLを照会するオブジェクトが、階層的な名前空間機能が有効になっているバケット内のディレクトリである場合に返されるエラーメッセージ。