setDefaultPolicyVersion method

Future<void> setDefaultPolicyVersion({
  1. required String policyArn,
  2. required String versionId,
})

Sets the specified version of the specified policy as the policy's default (operative) version.

This operation affects all users, groups, and roles that the policy is attached to. To list the users, groups, and roles that the policy is attached to, use the ListEntitiesForPolicy API.

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

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

Parameter policyArn : The Amazon Resource Name (ARN) of the IAM policy whose default version you want to set.

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

Parameter versionId : The version of the policy to set as the default (operative) version.

For more information about managed policy versions, see Versioning for Managed Policies in the IAM User Guide.

Implementation

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