attachGroupPolicy method

Future<void> attachGroupPolicy({
  1. required String groupName,
  2. required String policyArn,
})

Attaches the specified managed policy to the specified IAM group.

You use this API to attach a managed policy to a group. To embed an inline policy in a group, use PutGroupPolicy.

For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.

May throw NoSuchEntityException. May throw LimitExceededException. May throw InvalidInputException. May throw PolicyNotAttachableException. May throw ServiceFailureException.

Parameter groupName : The name (friendly name, not ARN) of the group to attach the policy to.

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-

Parameter policyArn : The Amazon Resource Name (ARN) of the IAM policy you want to attach.

For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

Implementation

Future<void> attachGroupPolicy({
  required String groupName,
  required String policyArn,
}) async {
  ArgumentError.checkNotNull(groupName, 'groupName');
  _s.validateStringLength(
    'groupName',
    groupName,
    1,
    128,
    isRequired: true,
  );
  ArgumentError.checkNotNull(policyArn, 'policyArn');
  _s.validateStringLength(
    'policyArn',
    policyArn,
    20,
    2048,
    isRequired: true,
  );
  final $request = <String, dynamic>{};
  $request['GroupName'] = groupName;
  $request['PolicyArn'] = policyArn;
  await _protocol.send(
    $request,
    action: 'AttachGroupPolicy',
    version: '2010-05-08',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    shape: shapes['AttachGroupPolicyRequest'],
    shapes: shapes,
  );
}