- Username Password Authentication in Spring Security
- <beans:bean id="myProvider" class="com.example.MyProvider"></beans:bean>
- <authentication-manager>
- <authentication-provider ref="myProvider"></authentication-provider>
- </authentication-manager>
- public UserDetails loadUserByUsername(String username)
- public Collection<GrantedAuthority> getAuthorities()
- <http auto-config="true">
- <intercept-url pattern="/admin/**" access="IS_AUTHENTICATED_REMEMBERED"/>
- <intercept-url pattern="/welcome/**" access="IS_AUTHENTICATED_REMEMBERED" />
- <intercept-url pattern="/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
- <form-login login-page="/login" />
- <logout logout-success-url="/" logout-url="/logout" />
- <!-- Limits the number of concurent sessions a user can have
- <concurrent-session-control max-sessions="1" exception-if-maximum-exceeded="true"/>
- -->
- </http>
- <!--
- Usernames/Passwords are
- rod/koala
- dianne/emu
- scott/wombat
- -->
- <authentication-manager>
- <authentication-provider>
- <password-encoder hash="md5"/>
- <user-service>
- <user name="rod" password="a564de63c2d0da68cf47586ee05984d7" authorities="ROLE_SUPERVISOR, ROLE_USER, ROLE_TELLER" />
- <user name="dianne" password="65d15fe9156f9c4bbffd98085992a44e" authorities="ROLE_USER,ROLE_TELLER" />
- <user name="scott" password="2b58af6dddbd072ed27ffc86725d7d3a" authorities="ROLE_USER" />
- </user-service>
- </authentication-provider>
- </authentication-manager>
- <filter>
- <filter-name>springSecurityFilterChain</filter-name>
- <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>springSecurityFilterChain</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
- <listener>
- <listener-class>org.springframework.security.web.session.HttpSessionEventPublisher</listener-class>
- </listener>
- <beans:bean id="authenticationManager"
- class="org.springframework.security.authentication.ProviderManager">
- <beans:property name="providers">
- <beans:list>
- <beans:ref local="myAuthenticationProvider"/>
- </beans:list>
- </beans:property>
- </beans:bean>
- <beans:bean id="myAuthenticationProvider" class="com.example.MyAuthenticationProvider">
- </beans:bean>
- <authentication-manager>
- <authentication-provider ref="myAuthenticationProvider"/>
- </authentication-manager>
- public class AConnexAuthenticationProvider implements AuthenticationProvider {
- static final List<GrantedAuthority> AUTHORITIES = new ArrayList<GrantedAuthority>();
- static {
- AUTHORITIES.add(new GrantedAuthorityImpl("ROLE_USER"));
- }
- @Override
- public Authentication authenticate(Authentication auth)
- throws AuthenticationException {
- return new UsernamePasswordAuthenticationToken(auth.getName(), auth.getCredentials(), AUTHORITIES);
- }
- @Override
- public boolean supports(Class<? extends Object> paramClass) {
- return true;
- }
- }