зеркало из
https://github.com/iharh/notes.git
synced 2025-11-01 22:26:09 +02:00
41 строка
1.6 KiB
Plaintext
41 строка
1.6 KiB
Plaintext
2015
|
|
https://stackoverflow.com/questions/29797721/oauth2-security-expressions-on-method-level
|
|
|
|
ExpressionHandler
|
|
https://stackoverflow.com/questions/33638850/how-to-protect-spring-security-oauth-resources-using-preauthorize-based-on-scop
|
|
https://docs.spring.io/spring-security/oauth/apidocs/org/springframework/security/oauth2/provider/expression/OAuth2SecurityExpressionMethods.html
|
|
hasScope
|
|
hasScopeMatching
|
|
hasScopeAnyMatching
|
|
clientHasRole
|
|
clientHasAnyRole
|
|
isOAuth
|
|
isUser
|
|
isClient
|
|
|
|
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.Configuration;
|
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
|
import org.springframework.security.oauth2.client.DefaultOAuth2ClientContext;
|
|
import org.springframework.security.oauth2.client.token.grant.client.ClientCredentialsResourceDetails;
|
|
import org.springframework.cloud.security.oauth2.client.feign.OAuth2FeignRequestInterceptor;
|
|
import feign.RequestInterceptor;
|
|
|
|
@Configuration
|
|
public class OAuth2ClientConfig {
|
|
@Bean
|
|
@ConfigurationProperties("security.oauth2.localas.client")
|
|
public ClientCredentialsResourceDetails localAuthServerResourceDetails() {
|
|
return new ClientCredentialsResourceDetails();
|
|
}
|
|
@Bean
|
|
public OAuth2RestTemplate localAuthServerRestTemplate() {
|
|
return new OAuth2RestTemplate(localAuthServerResourceDetails());
|
|
}
|
|
@Bean
|
|
public RequestInterceptor oauth2FeignRequestInterceptor() {
|
|
return new OAuth2FeignRequestInterceptor(new DefaultOAuth2ClientContext(), localAuthServerResourceDetails());
|
|
}
|
|
}
|