listFirewallRules method
Retrieves the firewall rules that you have defined for the specified firewall rule group. DNS Firewall uses the rules in a rule group to filter DNS network traffic for a VPC.
A single call might return only a partial list of the rules. For
information, see MaxResults.
May throw AccessDeniedException.
May throw InternalServiceErrorException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
May throw ValidationException.
Parameter firewallRuleGroupId :
The unique identifier of the firewall rule group that you want to retrieve
the rules for.
Parameter action :
Optional additional filter for the rules to retrieve.
The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list, or a threat in a DNS Firewall Advanced rule:
-
ALLOW- Permit the request to go through. Not availabe for DNS Firewall Advanced rules. -
ALERT- Permit the request to go through but send an alert to the logs. -
BLOCK- Disallow the request. If this is specified, additional handling details are provided in the rule'sBlockResponsesetting.
Parameter maxResults :
The maximum number of objects that you want Resolver to return for this
request. If more objects are available, in the response, Resolver provides
a NextToken value that you can use in a subsequent call to
get the next batch of objects.
If you don't specify a value for MaxResults, Resolver returns
up to 100 objects.
Parameter nextToken :
For the first call to this list request, omit this value.
When you request a list of objects, Resolver returns at most the number of
objects specified in MaxResults. If more objects are
available for retrieval, Resolver returns a NextToken value
in the response. To retrieve the next batch of objects, use the token that
was returned for the prior request in your next request.
Parameter priority :
Optional additional filter for the rules to retrieve.
The setting that determines the processing order of the rules in a rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.
Implementation
Future<ListFirewallRulesResponse> listFirewallRules({
required String firewallRuleGroupId,
Action? action,
int? maxResults,
String? nextToken,
int? priority,
}) async {
_s.validateNumRange(
'maxResults',
maxResults,
1,
100,
);
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'Route53Resolver.ListFirewallRules'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'FirewallRuleGroupId': firewallRuleGroupId,
if (action != null) 'Action': action.value,
if (maxResults != null) 'MaxResults': maxResults,
if (nextToken != null) 'NextToken': nextToken,
if (priority != null) 'Priority': priority,
},
);
return ListFirewallRulesResponse.fromJson(jsonResponse.body);
}