```
@Configuration
@EnableAuthorizationServer
public class MyAuthorizationServerConfigurerAdapterextends AuthorizationServerConfigurerAdapter {
@Bean
public JwtAccessTokenConverter jwtAccessTokenConverter() {
JwtAccessTokenConverter accessTokenConverter =new JwtAccessTokenConverter();
/*設(shè)置簽名*/
? accessTokenConverter.setSigningKey("smallsnail");
return accessTokenConverter;
}
@Autowired
private AuthenticationManagerauthenticationManager;
@Autowired
private RedisConnectionFactoryredisConnection;
@Autowired
? ? private DataSourcedataSource;
@Bean
? ? public ClientDetailsService clientDetailsService() {
return new JdbcClientDetailsService(dataSource);
}
@Override
public void configure(AuthorizationServerSecurityConfigurer security)throws Exception {
super.configure(security);
}
@Override
public void configure(AuthorizationServerEndpointsConfigurer endpoints)throws Exception {
/*redis存儲token*/
/*endpoints.authenticationManager(authenticationManager).tokenStore(new MyRedisTokenStore(redisConnection));*/
? /*jwt方式*/
/*endpoints.accessTokenConverter(jwtAccessTokenConverter());
endpoints.authenticationManager(authenticationManager).tokenStore(new JwtTokenStore(jwtAccessTokenConverter()));*/
? /*jwt方式+redis存儲token*/
? endpoints.accessTokenConverter(jwtAccessTokenConverter());
endpoints.authenticationManager(authenticationManager).tokenStore(new MyRedisTokenStore(redisConnection));
}
@Override
public void configure(ClientDetailsServiceConfigurer clients)throws Exception {
clients.withClientDetails(clientDetailsService());
}
}
```