def create_license_server_endpoint(
self,
identity_provider_arn: "capo_license_manager_user_subscriptions.types.arn.Arn",
license_server_settings: "capo_license_manager_user_subscriptions.types.license_server_settings.LicenseServerSettings",
*,
config_overrides: Optional[LicenseManagerUserSubscriptionsClientConfig] = None,
tags: Optional[
"capo_license_manager_user_subscriptions.types.tags.Tags"
] = None,
) -> "capo_license_manager_user_subscriptions.types.create_license_server_endpoint_response.CreateLicenseServerEndpointResponse":
"""<p>Creates a network endpoint for the Remote Desktop Services (RDS) license server.</p>
Args:
identity_provider_arn: <p>The Amazon Resource Name (ARN) that identifies the <code>IdentityProvider</code> resource that contains details about a registered identity provider. In the case of Active Directory, that can be a self-managed Active Directory or an Amazon Web Services Managed Active Directory that contains user identity details.</p>
license_server_settings: <p>The <code>LicenseServerSettings</code> resource to create for the endpoint. The settings include the type of license server and the Secrets Manager secret that enables administrators to add or remove users associated with the license server.</p>
tags: <p>The tags that apply for the license server endpoint.</p>
Raises:
capo_license_manager_user_subscriptions.errors.access_denied_exception.AccessDeniedException: <p>You don't have sufficient access to perform this action.</p>
capo_license_manager_user_subscriptions.errors.conflict_exception.ConflictException: <p>The request couldn't be completed because it conflicted with the current state of the resource.</p>
capo_license_manager_user_subscriptions.errors.internal_server_exception.InternalServerException: <p>An exception occurred with the service.</p>
capo_license_manager_user_subscriptions.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource couldn't be found.</p>
capo_license_manager_user_subscriptions.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>The request failed because a service quota is exceeded.</p>
capo_license_manager_user_subscriptions.errors.throttling_exception.ThrottlingException: <p>The request was denied because of request throttling. Retry the request.</p>
capo_license_manager_user_subscriptions.errors.validation_exception.ValidationException: <p>A parameter is not valid.</p>
capo_license_manager_user_subscriptions.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
def _handler(
req: "OperationRequest[capo_license_manager_user_subscriptions.types.create_license_server_endpoint_request.CreateLicenseServerEndpointRequest]",
) -> OperationResponse[
"capo_license_manager_user_subscriptions.types.create_license_server_endpoint_response.CreateLicenseServerEndpointResponse"
]:
import capo_license_manager_user_subscriptions._operations.license_manager_user_subscriptions.create_license_server_endpoint
output, http_response = (
capo_license_manager_user_subscriptions._operations.license_manager_user_subscriptions.create_license_server_endpoint.create_license_server_endpoint(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
def _redact_input(
input_: "capo_license_manager_user_subscriptions.types.create_license_server_endpoint_request.CreateLicenseServerEndpointRequest",
) -> dict[str, Any]:
import capo_license_manager_user_subscriptions.types.create_license_server_endpoint_request
return capo_license_manager_user_subscriptions.types.create_license_server_endpoint_request.redact_sensitive(
input_
)
interceptors_, options_ = self.operation_options(
config_overrides,
OperationLogging("CreateLicenseServerEndpoint", redact_input=_redact_input),
)
input_: capo_license_manager_user_subscriptions.types.create_license_server_endpoint_request.CreateLicenseServerEndpointRequest = {
"identity_provider_arn": identity_provider_arn,
"license_server_settings": license_server_settings,
}
if tags is not None:
input_["tags"] = tags
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output