/* * Copyright 2012 McEvoy Software Ltd. * * */ package io.milton.sso; import io.milton.http.AuthenticationHandler; import io.milton.http.Request; import io.milton.resource.Resource; import java.util.List; /** * This is a post resource-resolution authentication handler. * * It assumes that the SsoResourceFactory has populated the _sso_user request * attribute if appropriate * * @author brad */ public class SsoAuthenticationHandler implements AuthenticationHandler { @Override public boolean supports(Resource r, Request request) { boolean b = request.getAttributes().get("_sso_user") != null; return b; } @Override public Object authenticate(Resource resource, Request request) { return request.getAttributes().get("_sso_user"); } @Override public void appendChallenges(Resource resource, Request request, List<String> challenges) { } @Override public boolean isCompatible(Resource resource, Request request) { return true; } @Override public boolean credentialsPresent(Request request) { return request.getParams() != null && request.getAttributes().containsKey("_sso_user"); } }