儲存空間(Bucket)是儲存物件(Object)的容器。對象都隸屬於儲存空間。本文介紹如何擷取儲存空間存取權限(ACL)。
儲存空間的讀寫權限(ACL)有以下三類:
存取權限 | 描述 | 存取權限值 |
私人 | 儲存空間的擁有者和授權使用者有該儲存空間內的檔案的讀寫權限,其他使用者沒有許可權操作該儲存空間內的檔案。 | private |
公用讀取 | 儲存空間的擁有者和授權使用者有該儲存空間內的檔案的讀寫權限,其他使用者只有該儲存空間內的檔案的讀許可權。請謹慎使用該許可權。 | public-read |
公用讀寫 | 所有使用者都有該儲存空間內的檔案的讀寫權限。請謹慎使用該許可權。 | public-read-write |
注意事項
使用本文樣本前您需要先通過自訂網域名、STS等方式建立OSSClient,具體請參見如何初始化Android端OSSClient執行個體。
範例程式碼
以下代碼用於擷取儲存空間的讀寫權限:
GetBucketACLRequest getBucketACLRequest = new GetBucketACLRequest("bucketName");
// 擷取儲存空間存取權限。
OSSAsyncTask getBucketAclTask = oss.asyncGetBucketACL(getBucketACLRequest, new OSSCompletedCallback<GetBucketACLRequest, GetBucketACLResult>() {
@Override
public void onSuccess(GetBucketACLRequest request, GetBucketACLResult result) {
Log.d("asyncGetBucketACL", "Success!");
Log.d("BucketAcl", result.getBucketACL());
Log.d("Owner", result.getBucketOwner());
Log.d("ID", result.getBucketOwnerID());
}
@Override
public void onFailure(GetBucketACLRequest request, ClientException clientException, ServiceException serviceException) {
// 請求異常。
if (clientException != null) {
// 本地異常,如網路異常等。
clientException.printStackTrace();
}
if (serviceException != null) {
// 服務異常。
Log.e("ErrorCode", serviceException.getErrorCode());
Log.e("RequestId", serviceException.getRequestId());
Log.e("HostId", serviceException.getHostId());
Log.e("RawMessage", serviceException.getRawMessage());
}
}
});
相關文檔
關於擷取儲存空間讀寫權限的完整範例程式碼,請參見GitHub樣本。
關於擷取儲存空間讀寫權限的API介面說明,請參見GetBucketAcl。
關於初始化OSSClient,請參見如何初始化Android端OSSClient執行個體。