Skip to content

Instantly share code, notes, and snippets.

@dima767
Created April 17, 2015 18:17
Show Gist options
  • Select an option

  • Save dima767/d682b9e4c1dcdf5270e7 to your computer and use it in GitHub Desktop.

Select an option

Save dima767/d682b9e4c1dcdf5270e7 to your computer and use it in GitHub Desktop.
package net.unicon.cas.client.configuration;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.embedded.FilterRegistrationBean;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
@SpringBootApplication
@Controller
@EnableCasClient(validationType = EnableCasClient.ValidationType.SAML)
public class TestApplication extends CasClientConfigurerAdapter {
@Override
public void configureAuthenticationFilter(FilterRegistrationBean authenticationFilter) {
authenticationFilter.setUrlPatterns(Arrays.asList("/protected"));
}
@Override
public void configureValidationFilter(FilterRegistrationBean validationFilter) {
validationFilter.getInitParameters().put("useSession", "false");
}
@RequestMapping(value = "/protected", method = RequestMethod.GET)
void secured (HttpServletRequest request, HttpServletResponse response) throws Throwable {
response.getWriter().format("Principal: %s", request.getUserPrincipal().getName());
}
@RequestMapping(value = "/", method = RequestMethod.GET)
void index(HttpServletRequest request, HttpServletResponse response) throws Throwable {
response.getWriter().format("Unprotected!");
}
public static void main(String... args) {
ConfigurableApplicationContext ctx = SpringApplication.run(TestApplication.class, args);
FilterRegistrationBean validationFilter = ctx.getBean("casValidationFilter", FilterRegistrationBean.class);
FilterRegistrationBean authnFilter = ctx.getBean("casAuthenticationFilter", FilterRegistrationBean.class);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment