docs: protected String handleAuthenticationException(final AuthenticationException e, final RequestContext requestContext) {
          if (e.getHandlerErrors().containsKey(UnauthorizedServiceForPrincipalException.class.getSimpleName())) {
              val url = WebUtils.getUnauthorizedRedirectUrlFromFlowScope(requestContext);
              if (url != null) {
                  LOGGER.warn("Unauthorized service access for principal; CAS will be redirecting to [{}]", url);
                  return CasWebflowConstants.STATE_ID_SERVICE_UNAUTHZ_CHECK;
              }
          }
          val values = e.getHandlerErrors().values().stream().map(Throwable::getClass).collect(Collectors.toList());
          val handlerErrorName = this.errors
              .stream()
              .filter(values::contains)
              .map(Class::getSimpleName)
              .findFirst()
              .orElseGet(() -> {
                  LOGGER.debug("Unable to translate handler errors of the authentication exception [{}]. Returning [{}]", e, UNKNOWN);
                  return UNKNOWN;
              });
  
          val messageContext = requestContext.getMessageContext();
          val messageCode = this.messageBundlePrefix + handlerErrorName;
          messageContext.addMessage(new MessageBuilder().error().code(messageCode).build());
          return handlerErrorName;
      }