@Override protected Event doExecute(final RequestContext requestContext) { return this.yubikeyAuthenticationWebflowEventResolver.resolveSingle(requestContext); } }
/** * Resolve candidate authentication events set. * * @param context the context * @param service the service * @param registeredService the registered service * @return the set */ protected Set<Event> resolveCandidateAuthenticationEvents(final RequestContext context, final Service service, final RegisteredService registeredService) { val byEventId = Comparator.comparing(Event::getId); val supplier = (Supplier<TreeSet<Event>>) () -> new TreeSet<>(byEventId); return this.orderedResolvers .stream() .map(resolver -> { LOGGER.debug("Resolving candidate authentication event for service [{}] using [{}]", service, resolver.getName()); return resolver.resolveSingle(context); }) .filter(Objects::nonNull) .collect(Collectors.toCollection(supplier)); }
@Override protected Event doExecute(final RequestContext requestContext) throws Exception { return this.rankedAuthenticationProviderWebflowEventResolver.resolveSingle(requestContext); } }
@Override protected Event doExecute(final RequestContext requestContext) { return this.duoAuthenticationWebflowEventResolver.resolveSingle(requestContext); } }
@Override protected Event doExecute(final RequestContext requestContext) { return this.casWebflowEventResolver.resolveSingle(requestContext); } }
@Override protected Event doExecute(final RequestContext requestContext) throws Exception { final Event serviceTicketEvent = this.serviceTicketRequestWebflowEventResolver.resolveSingle(requestContext); if (serviceTicketEvent != null) { return serviceTicketEvent; } return this.initialAuthenticationAttemptWebflowEventResolver.resolveSingle(requestContext); } }
LOGGER.debug("The set of authentication events resolved for [{}] are [{}]. Beginning to select the final event...", service, resolvedEvents); putResolvedEventsAsAttribute(context, resolvedEvents); val finalResolvedEvent = this.selectiveResolver.resolveSingle(context); LOGGER.debug("The final authentication event resolved for [{}] is [{}]", service, finalResolvedEvent); if (finalResolvedEvent != null) {
@Override protected Event doExecute(final RequestContext requestContext) { val agent = WebUtils.getHttpServletRequestUserAgentFromRequestContext(); val geoLocation = WebUtils.getHttpServletRequestGeoLocationFromRequestContext(); if (geoLocation != null && StringUtils.isNotBlank(agent) && !adaptiveAuthenticationPolicy.apply(requestContext, agent, geoLocation)) { val msg = "Adaptive authentication policy does not allow this request for " + agent + " and " + geoLocation; val map = CollectionUtils.<String, Throwable>wrap(UnauthorizedAuthenticationException.class.getSimpleName(), new UnauthorizedAuthenticationException(msg)); val error = new AuthenticationException(msg, map, new HashMap<>(0)); return new Event(this, CasWebflowConstants.TRANSITION_ID_AUTHENTICATION_FAILURE, new LocalAttributeMap<>(CasWebflowConstants.TRANSITION_ID_ERROR, error)); } val serviceTicketEvent = this.serviceTicketRequestWebflowEventResolver.resolveSingle(requestContext); if (serviceTicketEvent != null) { fireEventHooks(serviceTicketEvent, requestContext); return serviceTicketEvent; } val finalEvent = this.initialAuthenticationAttemptWebflowEventResolver.resolveSingle(requestContext); fireEventHooks(finalEvent, requestContext); return finalEvent; }