updateInstanceAccessControlAttributeConfiguration method

Future<void> updateInstanceAccessControlAttributeConfiguration({
  1. required InstanceAccessControlAttributeConfiguration instanceAccessControlAttributeConfiguration,
  2. required String instanceArn,
})

Updates the IAM Identity Center identity store attributes that you can use with the IAM Identity Center instance for attributes-based access control (ABAC). When using an external identity provider as an identity source, you can pass attributes through the SAML assertion as an alternative to configuring attributes from the IAM Identity Center identity store. If a SAML assertion passes any of these attributes, IAM Identity Center replaces the attribute value with the value from the IAM Identity Center identity store. For more information about ABAC, see Attribute-Based Access Control in the IAM Identity Center User Guide.

May throw AccessDeniedException. May throw ConflictException. May throw InternalServerException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter instanceAccessControlAttributeConfiguration : Updates the attributes for your ABAC configuration.

Parameter instanceArn : The ARN of the IAM Identity Center instance under which the operation will be executed.

Implementation

Future<void> updateInstanceAccessControlAttributeConfiguration({
  required InstanceAccessControlAttributeConfiguration
      instanceAccessControlAttributeConfiguration,
  required String instanceArn,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target':
        'SWBExternalService.UpdateInstanceAccessControlAttributeConfiguration'
  };
  await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'InstanceAccessControlAttributeConfiguration':
          instanceAccessControlAttributeConfiguration,
      'InstanceArn': instanceArn,
    },
  );
}