| 
					
				 | 
			
			
				@ -5,26 +5,19 @@ import com.yihu.base.security.properties.AccessTokenPorperties; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.base.security.properties.SecurityProperties; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.base.security.rbas.ClientServiceProvider; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Qualifier; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.context.annotation.Bean; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.context.annotation.Configuration; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.context.annotation.Primary; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.data.redis.connection.RedisConnectionFactory; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.authentication.AuthenticationManager; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.core.userdetails.UserDetailsService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.crypto.password.PasswordEncoder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.common.DefaultOAuth2AccessToken; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.common.OAuth2AccessToken; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerConfigurerAdapter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerEndpointsConfigurer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerSecurityConfigurer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.provider.ClientDetailsService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationManager; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.provider.expression.OAuth2WebSecurityExpressionHandler; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.provider.token.DefaultTokenServices; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.provider.token.ResourceServerTokenServices; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.provider.token.TokenStore; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.security.oauth2.provider.token.store.redis.RedisTokenStore; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -46,8 +39,6 @@ public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private PasswordEncoder passwordEncoder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private DataSource dataSource; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private AccessTokenPorperties accessTokenPorperties; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -62,7 +53,11 @@ public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        endpoints.authenticationManager(oAuth2AuthenticationManager()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                .tokenStore(tokenStore()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                .userDetailsService(userDetailsService) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                .tokenServices(defaultTokenServices()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                .tokenServices(defaultTokenServices()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               // .pathMapping("/oauth/confirm_access", "/extenal/oauth/confirm_access");//授权码模式  授权页面转换 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //endpoints.setClientDetailsService(clientDetailsService); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -71,7 +66,7 @@ public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void configure(ClientDetailsServiceConfigurer clients) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //.jdbc(dataSource).passwordEncoder(passwordEncoder) .clients(clientDetailsService) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        clients.withClientDetails(clientDetailsService) ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        clients.withClientDetails(clientDetailsService); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -99,6 +94,7 @@ public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        defaultTokenServices.setTokenStore(tokenStore()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        defaultTokenServices.setAccessTokenValiditySeconds(60 * 60 * accessTokenPorperties.getAccessTokenValidityHours()); //默认2小时 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        defaultTokenServices.setRefreshTokenValiditySeconds(60 * 60 * accessTokenPorperties.getRefreshTokenValidityHours());//默认2小时 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        defaultTokenServices.setClientDetailsService(clientDetailsService); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return defaultTokenServices; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -107,7 +103,6 @@ public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    TokenStore tokenStore() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        RedisTokenStore redisTokenStore = new RedisTokenStore(redisConnectionFactory); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        redisTokenStore.setPrefix(SecurityProperties.prefix_accesstoken); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return redisTokenStore; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |