removePermission method

Future<void> removePermission({
  1. required String label,
  2. required String queueUrl,
})

Revokes any permissions in the queue policy that matches the specified Label parameter.

  • Only the owner of a queue can remove permissions from it.
  • Cross-account permissions don't apply to this action. For more information, see Grant cross-account permissions to a role and a username in the Amazon SQS Developer Guide.
  • To remove the ability to change queue permissions, you must deny permission to the AddPermission, RemovePermission, and SetQueueAttributes actions in your IAM policy.

May throw InvalidAddress. May throw InvalidSecurity. May throw QueueDoesNotExist. May throw RequestThrottled. May throw UnsupportedOperation.

Parameter label : The identification of the permission to remove. This is the label added using the AddPermission action.

Parameter queueUrl : The URL of the Amazon SQS queue from which permissions are removed.

Queue URLs and names are case-sensitive.

Implementation

Future<void> removePermission({
  required String label,
  required String queueUrl,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.0',
    'X-Amz-Target': 'AmazonSQS.RemovePermission'
  };
  await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'Label': label,
      'QueueUrl': queueUrl,
    },
  );
}