applySecurityGroupsToLoadBalancer method

Future<ApplySecurityGroupsToLoadBalancerOutput> applySecurityGroupsToLoadBalancer({
  1. required String loadBalancerName,
  2. required List<String> securityGroups,
})

Associates one or more security groups with your load balancer in a virtual private cloud (VPC). The specified security groups override the previously associated security groups.

For more information, see Security Groups for Load Balancers in a VPC in the Classic Load Balancers Guide.

May throw AccessPointNotFoundException. May throw InvalidConfigurationRequestException. May throw InvalidSecurityGroupException.

Parameter loadBalancerName : The name of the load balancer.

Parameter securityGroups : The IDs of the security groups to associate with the load balancer. Note that you cannot specify the name of the security group.

Implementation

Future<ApplySecurityGroupsToLoadBalancerOutput>
    applySecurityGroupsToLoadBalancer({
  required String loadBalancerName,
  required List<String> securityGroups,
}) async {
  final $request = <String, String>{
    'LoadBalancerName': loadBalancerName,
    if (securityGroups.isEmpty)
      'SecurityGroups': ''
    else
      for (var i1 = 0; i1 < securityGroups.length; i1++)
        'SecurityGroups.member.${i1 + 1}': securityGroups[i1],
  };
  final $result = await _protocol.send(
    $request,
    action: 'ApplySecurityGroupsToLoadBalancer',
    version: '2012-06-01',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    resultWrapper: 'ApplySecurityGroupsToLoadBalancerResult',
  );
  return ApplySecurityGroupsToLoadBalancerOutput.fromXml($result);
}