Announcement Announcement Module
Collapse
No announcement yet.
Multiple login features Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Multiple login features

    I would like to give the client the possibility to choose to login to my application either using google, facebook or my own implemented user data.

    What I have so far is, I created my own CustomUserDetailsService class, which is working fine. I'm looking up the database and check if user exist and the password is equal. Now, I would like to extend the authentication to be able to use for example the google openId.

    I was thinking of creating a new CustomUserDetailsServiceGoogle which implements UserDetailsService, but of course it failse because it expects only one implemantation of UserDetailsService.

    My app-security.xml looks like this:

    HTML Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <beans:beans xmlns="http://www.springframework.org/schema/security"
        xmlns:beans="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:context="http://www.springframework.org/schema/context"
        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
                            http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd">
        
        <global-method-security pre-post-annotations="enabled" />
    
        <http use-expressions="true" auto-config="true">
        	<intercept-url pattern="/account/**" access="hasRole('ROLE_USER')" />
    		
    		<form-login login-page="/auth/login" 
    					authentication-failure-url="/auth/denied" 
    					default-target-url="/account/profile" />
    
    		<access-denied-handler error-page="/auth/denied" />
    
    		<logout invalidate-session="true"
    				logout-success-url="/"
    				logout-url="/logout"
    				delete-cookies="JSESSIONID" />
    				
            <remember-me />
            
            <session-management invalid-session-url="/" />        
            
        </http>
        
        
        
    	<beans:bean id="passwordEncoder" class="org.springframework.security.authentication.encoding.Md5PasswordEncoder" />
    	<beans:bean id="customUserDetailsService" class="com.app.security.CustomUserDetailsService" />
    
    	<authentication-manager>
    		<authentication-provider user-service-ref="customUserDetailsService">
    			<password-encoder ref="passwordEncoder"/>
    		</authentication-provider>
    	</authentication-manager>
    	
    
    </beans:beans>
    Does anyone have a link to an example of supporting 2 or many authentication features?
Working...
X