static void GetObjectACL() { try { GetObjectAclRequest request = new GetObjectAclRequest() { BucketName = bucketName, ObjectKey = objectName }; GetObjectAclResponse response = client.GetObjectAcl(request); Console.WriteLine("Get object acl response: {0}.", response.StatusCode); foreach (Grant grant in response.AccessControlList.Grants) { CanonicalGrantee grantee = (CanonicalGrantee)grant.Grantee; Console.WriteLine("Grantee canonical user id: {0}", grantee.Id); Console.WriteLine("Grantee canonical user display name: {0}", grantee.DisplayName); Console.WriteLine("Grant permission: {0}", grant.Permission); } } catch (ObsException ex) { Console.WriteLine("Exception errorcode: {0}, when get object acl.", ex.ErrorCode); Console.WriteLine("Exception errormessage: {0}", ex.ErrorMessage); } }
public static GetObjectAclCommand Create(IServiceClient client, Uri endpoint, ExecutionContext context, GetObjectAclRequest request) { return(new GetObjectAclCommand(client, endpoint, context, request, DeserializerFactory.GetFactory().CreateGetAclResultDeserializer())); }
public Task <GetObjectAclResponse> GetObjectAclAsync(string bucketName, string objectKey, Action <GetObjectAclRequest>?config = null, CancellationToken token = default) { GetObjectAclRequest req = new GetObjectAclRequest(bucketName, objectKey); config?.Invoke(req); return(ObjectOperations.GetObjectAclAsync(req, token)); }
private GetObjectAclCommand(IServiceClient client, Uri endpoint, ExecutionContext context, GetObjectAclRequest request, IDeserializer <ServiceResponse, AccessControlList> deserializer) : base(client, endpoint, context, deserializer) { OssUtils.CheckBucketName(request.BucketName); OssUtils.CheckObjectKey(request.Key); _request = request; }
/// <summary> /// Start the asynchronous request for obtaining an object ACL. /// </summary> /// <param name="request">Parameters in a request for obtaining an object ACL</param> /// <param name="callback">Asynchronous request callback function</param> /// <param name="state">Asynchronous request status object</param> /// <returns>Response to the asynchronous request</returns> public IAsyncResult BeginGetObjectAcl(GetObjectAclRequest request, AsyncCallback callback, object state) { return(this.BeginDoRequest <GetObjectAclRequest>(request, delegate() { if (request.ObjectKey == null) { throw new ObsException(Constants.InvalidObjectKeyMessage, ErrorType.Sender, Constants.InvalidObjectKey, ""); } }, callback, state)); }
/// <summary> /// Obtain an object ACL. /// </summary> /// <param name="request">Parameters in a request for obtaining an object ACL</param> /// <returns>Response to a request for obtaining an object ACL</returns> public GetObjectAclResponse GetObjectAcl(GetObjectAclRequest request) { return(this.DoRequest <GetObjectAclRequest, GetObjectAclResponse>(request, delegate() { if (request.ObjectKey == null) { throw new ObsException(Constants.InvalidObjectKeyMessage, ErrorType.Sender, Constants.InvalidObjectKey, ""); } })); }
public GetObjectAclResponse GetObjectACL(GetObjectAclRequest request) { EnsureAbsoluteUri(request); var command = new GetObjectACL(_userId, _secret, _builder, _authenticator) { Parameters = request }; return((GetObjectAclResponse)((ICommandExecutor)this).Execute(command)); }
public void ObjectAclTest() { var key = OssTestUtils.GetObjectKey(_className); _ossClient.PutObject(_bucketName, key, Config.UploadTestFile); var getRequest = new GetObjectAclRequest(_bucketName, key); Assert.AreEqual(getRequest.RequestPayer, RequestPayer.BucketOwner); var setRequest = new SetObjectAclRequest(_bucketName, key, CannedAccessControlList.PublicRead); Assert.AreEqual(setRequest.RequestPayer, RequestPayer.BucketOwner); try { _ossPayerClient.GetObjectAcl(getRequest); Assert.Fail("should not here."); } catch (OssException e) { Assert.AreEqual(e.ErrorCode, "AccessDenied"); } try { _ossPayerClient.SetObjectAcl(setRequest); Assert.Fail("should not here."); } catch (OssException e) { Assert.AreEqual(e.ErrorCode, "AccessDenied"); } setRequest.RequestPayer = RequestPayer.Requester; getRequest.RequestPayer = RequestPayer.Requester; _ossPayerClient.SetObjectAcl(setRequest); var getResult = _ossPayerClient.GetObjectAcl(getRequest); Assert.AreEqual(getResult.ACL, CannedAccessControlList.PublicRead); setRequest = new SetObjectAclRequest(_bucketName, key, CannedAccessControlList.PublicReadWrite); setRequest.RequestPayer = RequestPayer.Requester; _ossPayerClient.SetObjectAcl(setRequest); getResult = _ossPayerClient.GetObjectAcl(getRequest); Assert.AreEqual(getResult.ACL, CannedAccessControlList.PublicReadWrite); }
public Task <GetObjectAclResponse> GetObjectAclAsync(GetObjectAclRequest request, CancellationToken token = default) { return(_requestHandler.SendRequestAsync <GetObjectAclRequest, GetObjectAclResponse>(request, token)); }