Example usage for org.springframework.security.oauth2.provider.approval TokenStoreUserApprovalHandler setTokenStore

List of usage examples for org.springframework.security.oauth2.provider.approval TokenStoreUserApprovalHandler setTokenStore

Introduction

In this page you can find the example usage for org.springframework.security.oauth2.provider.approval TokenStoreUserApprovalHandler setTokenStore.

Prototype

public void setTokenStore(TokenStore tokenStore) 

Source Link

Usage

From source file:org.joyrest.oauth2.initializer.OAuth2Initializer.java

@Override
@SuppressWarnings("unchecked")
public void init(InitContext context, BeanFactory beanFactory) {
    AuthorizationServerConfiguration authServerConfig = beanFactory.get(AuthorizationServerConfiguration.class);
    TokenStore tokenStore = authServerConfig.getTokenStore();
    UserDetailsService userService = authServerConfig.getUserDetailsService();
    ClientDetailsService clientService = authServerConfig.getClientDetailsService();
    DataSource dataSource = authServerConfig.getDataSource();

    PreAuthenticatedAuthenticationProvider preProvider = new PreAuthenticatedAuthenticationProvider();
    preProvider.setPreAuthenticatedUserDetailsService(new UserDetailsByNameServiceWrapper(userService));

    DaoAuthenticationProvider clientAuthProvider = new DaoAuthenticationProvider();
    clientAuthProvider.setUserDetailsService(new ClientDetailsUserDetailsService(clientService));

    DaoAuthenticationProvider userAuthProvider = new DaoAuthenticationProvider();
    userAuthProvider.setUserDetailsService(userService);

    ProviderManager clientManager = new ProviderManager(singletonList(clientAuthProvider));
    ProviderManager userManager = new ProviderManager(asList(userAuthProvider, preProvider));

    AuthorizationCodeServices authServices = new InMemoryAuthorizationCodeServices();
    OAuth2RequestFactory requestFactory = new DefaultOAuth2RequestFactory(clientService);

    DefaultTokenServices tokenServices = tokenServices(clientService, userManager, tokenStore, dataSource);
    TokenGranter tokenGranter = compositeTokenGranter(clientService, userManager, tokenServices, requestFactory,
            authServices);//  www  . ja  v a  2 s . co  m

    TokenEndpoint tokenEndpoint = new TokenEndpoint(clientManager, clientService, tokenGranter);

    TokenStoreUserApprovalHandler userApprovalHandler = new TokenStoreUserApprovalHandler();
    userApprovalHandler.setClientDetailsService(clientService);
    userApprovalHandler.setRequestFactory(requestFactory);
    userApprovalHandler.setTokenStore(tokenStore);

    AuthorizationEndpoint authorizationEndpoint = new AuthorizationEndpoint(authServices, clientService,
            tokenGranter, userApprovalHandler, requestFactory);

    context.addControllerConfiguration(tokenEndpoint);
    context.addControllerConfiguration(authorizationEndpoint);
    context.addExceptionConfiguration(new OAuthExceptionConfiguration());
    context.addInterceptor(new AuthenticationInterceptor(clientManager));
    context.addInterceptor(new AuthorizationInterceptor());
}