putDestinationPolicy method
Creates or updates an access policy associated with an existing destination. An access policy is an IAM policy document that is used to authorize claims to register a subscription filter against a given destination.
May throw InvalidParameterException. May throw OperationAbortedException. May throw ServiceUnavailableException.
Parameter accessPolicy
:
An IAM policy document that authorizes cross-account users to deliver
their log events to the associated destination. This can be up to 5120
bytes.
Parameter destinationName
:
A name for an existing destination.
Implementation
Future<void> putDestinationPolicy({
required String accessPolicy,
required String destinationName,
}) async {
ArgumentError.checkNotNull(accessPolicy, 'accessPolicy');
_s.validateStringLength(
'accessPolicy',
accessPolicy,
1,
1152921504606846976,
isRequired: true,
);
ArgumentError.checkNotNull(destinationName, 'destinationName');
_s.validateStringLength(
'destinationName',
destinationName,
1,
512,
isRequired: true,
);
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'Logs_20140328.PutDestinationPolicy'
};
await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'accessPolicy': accessPolicy,
'destinationName': destinationName,
},
);
}