getResourcePolicy method

Future<GetResourcePolicyResponse> getResourcePolicy({
  1. required String resourceArn,
})

Retrieves the JSON text of the resource-based policy document attached to the CloudTrail event data store, dashboard, or channel.

May throw OperationNotPermittedException. May throw ResourceARNNotValidException. May throw ResourceNotFoundException. May throw ResourcePolicyNotFoundException. May throw ResourceTypeNotSupportedException. May throw UnsupportedOperationException.

Parameter resourceArn : The Amazon Resource Name (ARN) of the CloudTrail event data store, dashboard, or channel attached to the resource-based policy.

Example event data store ARN format: arn:aws:cloudtrail:us-east-2:123456789012:eventdatastore/EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE

Example dashboard ARN format: arn:aws:cloudtrail:us-east-1:123456789012:dashboard/exampleDash

Example channel ARN format: arn:aws:cloudtrail:us-east-2:123456789012:channel/01234567890

Implementation

Future<GetResourcePolicyResponse> getResourcePolicy({
  required String resourceArn,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'CloudTrail_20131101.GetResourcePolicy'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'ResourceArn': resourceArn,
    },
  );

  return GetResourcePolicyResponse.fromJson(jsonResponse.body);
}