spring-mvcspring-bootspring-securitysingle-sign-on

Spring Boot + Security + MVC + LDAP AD + SSO


I am new on a client project, which was created via oasp4j, and which relies on Spring Boot.

The client project, uses Spring Security, Spring MVC and the login is based on LDAP AD, the project works; My task is to set up a single user authentication (SSO), and for now I can not find a good track to start it.

I had read articles about CAS, SAML, OAuth2, Waffle, SSOCircle and Kerberos, and I can not really pick one of them, and how to set it up with the Spring-Boot configuration.

https://spring.io/guides/tutorials/spring-boot-oauth2/

http://docs.spring.io/autorepo/docs/spring-security-saml/1.0.x-SNAPSHOT/reference/htmlsingle/

https://spring.io/blog/2015/02/03/sso-with-oauth2-angular-js-and-spring-security-part-v

Any idea how to proceed if I want to implement them with Spring Boot configuration and which solution is better and simpler than others?

Secondly is what if I choose CAS as authentication server, after that, will my users be able to access the other application of the company that uses another authentication server?

thank you


Solution

  • When using an SSO, it's the SSO system which will be connected to the LDAP AD and your web applications will be connected to the SSO. The CAS SSO server can handle that.

    To secure your webapps, you can use the spring-webmvc-pac4j security library for Spring MVC or the spring-security-pac4j security library built on top of String Security, both working with the CAS protocol.