次の表は、オブジェクトのアクセス制御リスト (ACL) に含まれるアクセス許可について説明しています。

権限 説明
default オブジェクトの ACL とバケットの ACL は同一です。 CannedAccessControlList.Default
Private オブジェクトを読み書きできるのは、オブジェクト所有者と許可ユーザーだけです。 CannedAccessControlList.Private
Public read オブジェクトを読み書きできるのは、オブジェクト所有者と許可ユーザーだけです。 他のユーザーはオブジェクトを読むことしかできません。 この許可は慎重に承認してください。 CannedAccessControlList.PublicRead
Public read-write すべてのユーザーがオブジェクトを読み書きできます。 この許可は慎重に承認してください。 CannedAccessControlList.PublicReadWrite

オブジェクトの ACL はバケットの ACL よりも優先されます。 たとえば、バケットの ACL が "Private" で、オブジェクトの ACL が "Public read-write" である場合、すべてのユーザーがそのオブジェクトを読み書きできます。 オブジェクトが ACL で設定されていない場合、既定ではオブジェクトの ACL はバケットの ACL です。

オブジェクトの ACL を設定する完全なコードについては、『GitHub』をご参照ください。 オブジェクトの ACL を取得するための完全なコードについては、『GitHub』をご参照ください。

次のコードを実行してオブジェクトの ACL を設定し、オブジェクトの ACL を取得できます。

using Aliyun.OSS;
using Aliyun.OSS.Common;

var endpoint = "<yourEndpoint>";
var accessKeyId = "<yourAccessKeyId>";
var accessKeySecret = "<yourAccessKeySecret>";
var bucketName = "<yourBucketName>";
var objectName = "<yourObjectName>";

// Create an OSSClient instance.
var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
// Configure an ACL for an object.
try
{
    // Use SetObjectAcl to configure an ACL for an object.
    client.SetObjectAcl(bucketName, objectName, CannedAccessControlList.PublicRead);
    Console.WriteLine("Set Object:{0} ACL succeeded ", objectName);
}
} catch (Exception e) {
{
    Console.WriteLine("Set Object ACL failed with error info: {0}", ex.Message);
}
// Obtain the ACL for an object.
try
{
    // Use GetObjectAcl to obtain the ACL for an object.
    var result = client.GetObjectAcl(bucketName, objectName);
    Console.WriteLine("Get Object ACL succeeded, Id: {0}  ACL: {1}",
        result.Owner.Id, result.ACL.ToString());
}
catch (OssException ex)
{
    Console.WriteLine("Failed with error code: {0}; Error info: {1}. \nRequestID: {2}\tHostID: {3}",
        ex.ErrorCode, ex.Message, ex.RequestId, ex.HostId);
}
} catch (Exception e) {
{
    Console.WriteLine("Failed with error info: {0}", ex.Message);
}

オブジェクト ACL の詳細については、 「アクセス制御」をご参照ください。