putBlockPublicAccessConfiguration method

Future<void> putBlockPublicAccessConfiguration({
  1. required BlockPublicAccessConfiguration blockPublicAccessConfiguration,
})

Creates or updates an Amazon EMR block public access configuration for your AWS account in the current Region. For more information see Configure Block Public Access for Amazon EMR in the Amazon EMR Management Guide.

May throw InternalServerException. May throw InvalidRequestException.

Parameter blockPublicAccessConfiguration : A configuration for Amazon EMR block public access. The configuration applies to all clusters created in your account for the current Region. The configuration specifies whether block public access is enabled. If block public access is enabled, security groups associated with the cluster cannot have rules that allow inbound traffic from 0.0.0.0/0 or ::/0 on a port, unless the port is specified as an exception using PermittedPublicSecurityGroupRuleRanges in the BlockPublicAccessConfiguration. By default, Port 22 (SSH) is an exception, and public access is allowed on this port. You can change this by updating BlockPublicSecurityGroupRules to remove the exception.

Implementation

Future<void> putBlockPublicAccessConfiguration({
  required BlockPublicAccessConfiguration blockPublicAccessConfiguration,
}) async {
  ArgumentError.checkNotNull(
      blockPublicAccessConfiguration, 'blockPublicAccessConfiguration');
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'ElasticMapReduce.PutBlockPublicAccessConfiguration'
  };
  await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'BlockPublicAccessConfiguration': blockPublicAccessConfiguration,
    },
  );
}