org.granite.spring.security
Class SpringSecurity3Service

java.lang.Object
  extended by org.granite.messaging.service.security.AbstractSecurityService
      extended by org.granite.spring.security.SpringSecurity3Service
All Implemented Interfaces:
org.granite.messaging.service.security.SecurityService, Aware, ApplicationContextAware, ApplicationEventPublisherAware

public class SpringSecurity3Service
extends org.granite.messaging.service.security.AbstractSecurityService
implements ApplicationContextAware, ApplicationEventPublisherAware

Author:
Bouiaw, wdrai

Field Summary
 
Fields inherited from class org.granite.messaging.service.security.AbstractSecurityService
AUTH_TYPE
 
Constructor Summary
SpringSecurity3Service()
           
 
Method Summary
 boolean acceptsContext()
           
 Object authorize(org.granite.messaging.service.security.AbstractSecurityContext context)
           
 void configure(Map<String,String> params)
           
protected  void handleAuthenticationExceptions(org.springframework.security.core.AuthenticationException e)
           
protected  void handleAuthorizationExceptions(InvocationTargetException e)
           
protected  boolean isAuthenticated(org.springframework.security.core.Authentication authentication)
           
protected  boolean isUserInRole(org.springframework.security.core.Authentication authentication, String role)
           
 void login(Object credentials, String charset)
           
 void logout()
           
 void lookupAuthenticationManager(ApplicationContext ctx, String authenticationManagerBeanName)
           
 void setAllowAnonymousAccess(boolean allowAnonymousAccess)
           
 void setApplicationContext(ApplicationContext applicationContext)
           
 void setApplicationEventPublisher(ApplicationEventPublisher eventPublisher)
           
 void setAuthenticationManager(org.springframework.security.authentication.AuthenticationManager authenticationManager)
           
 void setAuthenticationTrustResolver(org.springframework.security.authentication.AuthenticationTrustResolver authenticationTrustResolver)
           
 void setPasswordEncoder(org.springframework.security.authentication.encoding.PasswordEncoder passwordEncoder)
           
 void setSecurityContextRepository(org.springframework.security.web.context.SecurityContextRepository securityContextRepository)
           
 void setSecurityInterceptor(AbstractSpringSecurity3Interceptor securityInterceptor)
           
 void setSessionAuthenticationStrategy(org.springframework.security.web.authentication.session.SessionAuthenticationStrategy sessionAuthenticationStrategy)
           
protected  boolean userCanAccessService(org.granite.messaging.service.security.AbstractSecurityContext context, org.springframework.security.core.Authentication authentication)
           
 
Methods inherited from class org.granite.messaging.service.security.AbstractSecurityService
decodeBase64Credentials, endAuthorization, endLogin, endLogout, handleSecurityException, login, startAuthorization, tryRelogin
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpringSecurity3Service

public SpringSecurity3Service()
Method Detail

setApplicationContext

public void setApplicationContext(ApplicationContext applicationContext)
Specified by:
setApplicationContext in interface ApplicationContextAware

setApplicationEventPublisher

public void setApplicationEventPublisher(ApplicationEventPublisher eventPublisher)
Specified by:
setApplicationEventPublisher in interface ApplicationEventPublisherAware

setAuthenticationManager

public void setAuthenticationManager(org.springframework.security.authentication.AuthenticationManager authenticationManager)

setAuthenticationTrustResolver

public void setAuthenticationTrustResolver(org.springframework.security.authentication.AuthenticationTrustResolver authenticationTrustResolver)

setAllowAnonymousAccess

public void setAllowAnonymousAccess(boolean allowAnonymousAccess)

setSecurityContextRepository

public void setSecurityContextRepository(org.springframework.security.web.context.SecurityContextRepository securityContextRepository)

setSecurityInterceptor

public void setSecurityInterceptor(AbstractSpringSecurity3Interceptor securityInterceptor)

setSessionAuthenticationStrategy

public void setSessionAuthenticationStrategy(org.springframework.security.web.authentication.session.SessionAuthenticationStrategy sessionAuthenticationStrategy)

setPasswordEncoder

public void setPasswordEncoder(org.springframework.security.authentication.encoding.PasswordEncoder passwordEncoder)

configure

public void configure(Map<String,String> params)
Specified by:
configure in interface org.granite.messaging.service.security.SecurityService

login

public void login(Object credentials,
                  String charset)
Specified by:
login in interface org.granite.messaging.service.security.SecurityService

handleAuthenticationExceptions

protected void handleAuthenticationExceptions(org.springframework.security.core.AuthenticationException e)

lookupAuthenticationManager

public void lookupAuthenticationManager(ApplicationContext ctx,
                                        String authenticationManagerBeanName)
                                 throws org.granite.messaging.service.security.SecurityServiceException
Throws:
org.granite.messaging.service.security.SecurityServiceException

authorize

public Object authorize(org.granite.messaging.service.security.AbstractSecurityContext context)
                 throws Exception
Specified by:
authorize in interface org.granite.messaging.service.security.SecurityService
Throws:
Exception

acceptsContext

public boolean acceptsContext()
Specified by:
acceptsContext in interface org.granite.messaging.service.security.SecurityService
Overrides:
acceptsContext in class org.granite.messaging.service.security.AbstractSecurityService

logout

public void logout()
Specified by:
logout in interface org.granite.messaging.service.security.SecurityService

isUserInRole

protected boolean isUserInRole(org.springframework.security.core.Authentication authentication,
                               String role)

isAuthenticated

protected boolean isAuthenticated(org.springframework.security.core.Authentication authentication)

userCanAccessService

protected boolean userCanAccessService(org.granite.messaging.service.security.AbstractSecurityContext context,
                                       org.springframework.security.core.Authentication authentication)

handleAuthorizationExceptions

protected void handleAuthorizationExceptions(InvocationTargetException e)