Skip to content

update_authentication_profile async

update_authentication_profile(
    authentication_profile_id: AuthenticationProfileId,
    instance_id: InstanceId,
    *,
    config_overrides: Optional[AsyncConnectClientConfig] = None,
    name: Optional[AuthenticationProfileName] = None,
    description: Optional[AuthenticationProfileDescription] = None,
    allowed_ips: Optional[IpCidrList] = None,
    blocked_ips: Optional[IpCidrList] = None,
    periodic_session_duration: Optional[AccessTokenDuration] = None,
    session_inactivity_duration: Optional[InactivityDuration] = None,
    session_inactivity_handling_enabled: Optional[Boolean] = None,
) -> None

This API is in preview release for Connect Customer and is subject to change. To request access to this API, contact Amazon Web Services Support.

Updates the selected authentication profile.

Parameters:

  • authentication_profile_id (AuthenticationProfileId) –

    A unique identifier for the authentication profile.

  • instance_id (InstanceId) –

    The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

  • name (Optional[AuthenticationProfileName], default: None ) –

    The name for the authentication profile.

  • description (Optional[AuthenticationProfileDescription], default: None ) –

    The description for the authentication profile.

  • allowed_ips (Optional[IpCidrList], default: None ) –

    A list of IP address range strings that are allowed to access the instance. For more information on how to configure IP addresses, seeConfigure session timeouts in the Connect Customer Administrator Guide.

  • blocked_ips (Optional[IpCidrList], default: None ) –

    A list of IP address range strings that are blocked from accessing the instance. For more information on how to configure IP addresses, For more information on how to configure IP addresses, see Configure IP-based access control in the Connect Customer Administrator Guide.

  • periodic_session_duration (Optional[AccessTokenDuration], default: None ) –

    The short lived session duration configuration for users logged in to Connect Customer, in minutes. This value determines the maximum possible time before an agent is authenticated. For more information, For more information on how to configure IP addresses, see Configure session timeouts in the Connect Customer Administrator Guide.

  • session_inactivity_duration (Optional[InactivityDuration], default: None ) –

    The period, in minutes, before an agent is automatically signed out of the contact center when they go inactive.

  • session_inactivity_handling_enabled (Optional[Boolean], default: None ) –

    Determines if automatic logout on user inactivity is enabled.

Raises:

Source code in docs_src/capo_connect/_services/async_connect.py
async def update_authentication_profile(
    self,
    authentication_profile_id: "capo_connect.types.authentication_profile_id.AuthenticationProfileId",
    instance_id: "capo_connect.types.instance_id.InstanceId",
    *,
    config_overrides: Optional[AsyncConnectClientConfig] = None,
    name: Optional[
        "capo_connect.types.authentication_profile_name.AuthenticationProfileName"
    ] = None,
    description: Optional[
        "capo_connect.types.authentication_profile_description.AuthenticationProfileDescription"
    ] = None,
    allowed_ips: Optional["capo_connect.types.ip_cidr_list.IpCidrList"] = None,
    blocked_ips: Optional["capo_connect.types.ip_cidr_list.IpCidrList"] = None,
    periodic_session_duration: Optional[
        "capo_connect.types.access_token_duration.AccessTokenDuration"
    ] = None,
    session_inactivity_duration: Optional[
        "capo_connect.types.inactivity_duration.InactivityDuration"
    ] = None,
    session_inactivity_handling_enabled: Optional[
        "capo_connect.types.boolean.Boolean"
    ] = None,
) -> None:
    """<p>This API is in preview release for Connect Customer and is subject to change. To request access to this API, contact Amazon Web Services Support.</p> <p>Updates the selected authentication profile.</p>

    Args:
        authentication_profile_id: <p>A unique identifier for the authentication profile. </p>
        instance_id: <p>The identifier of the Connect Customer instance. You can <a href="https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html">find the instance ID</a> in the Amazon Resource Name (ARN) of the instance.</p>
        name: <p>The name for the authentication profile.</p>
        description: <p>The description for the authentication profile.</p>
        allowed_ips: <p>A list of IP address range strings that are allowed to access the instance. For more information on how to configure IP addresses, see<a href="https://docs.aws.amazon.com/connect/latest/adminguide/authentication-profiles.html#configure-session-timeouts">Configure session timeouts</a> in the <i>Connect Customer Administrator Guide</i>.</p>
        blocked_ips: <p>A list of IP address range strings that are blocked from accessing the instance. For more information on how to configure IP addresses, For more information on how to configure IP addresses, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/authentication-profiles.html#configure-ip-based-ac">Configure IP-based access control</a> in the <i>Connect Customer Administrator Guide</i>. </p>
        periodic_session_duration: <p>The short lived session duration configuration for users logged in to Connect Customer, in minutes. This value determines the maximum possible time before an agent is authenticated. For more information, For more information on how to configure IP addresses, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/authentication-profiles.html#configure-session-timeouts">Configure session timeouts</a> in the <i>Connect Customer Administrator Guide</i>. </p>
        session_inactivity_duration: <p>The period, in minutes, before an agent is automatically signed out of the contact center when they go inactive.</p>
        session_inactivity_handling_enabled: <p>Determines if automatic logout on user inactivity is enabled.</p>

    Raises:
        capo_connect.errors.internal_service_exception.InternalServiceException: <p>Request processing failed because of an error or failure with the service.</p>
        capo_connect.errors.invalid_parameter_exception.InvalidParameterException: <p>One or more of the specified parameters are not valid.</p>
        capo_connect.errors.invalid_request_exception.InvalidRequestException: <p>The request is not valid.</p>
        capo_connect.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource was not found.</p>
        capo_connect.errors.throttling_exception.ThrottlingException: <p>The throttling limit has been exceeded.</p>
        capo_connect.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_connect.types.update_authentication_profile_request.UpdateAuthenticationProfileRequest]",
    ) -> AsyncOperationResponse[None]:
        import capo_connect._operations.amazon_connect_service.update_authentication_profile

        (
            output,
            http_response,
        ) = await capo_connect._operations.amazon_connect_service.update_authentication_profile.async_update_authentication_profile(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateAuthenticationProfile")
    )
    input_: capo_connect.types.update_authentication_profile_request.UpdateAuthenticationProfileRequest = {
        "authentication_profile_id": authentication_profile_id,
        "instance_id": instance_id,
    }
    if name is not None:
        input_["name"] = name
    if description is not None:
        input_["description"] = description
    if allowed_ips is not None:
        input_["allowed_ips"] = allowed_ips
    if blocked_ips is not None:
        input_["blocked_ips"] = blocked_ips
    if periodic_session_duration is not None:
        input_["periodic_session_duration"] = periodic_session_duration
    if session_inactivity_duration is not None:
        input_["session_inactivity_duration"] = session_inactivity_duration
    if session_inactivity_handling_enabled is not None:
        input_["session_inactivity_handling_enabled"] = (
            session_inactivity_handling_enabled
        )

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output