Skip to content

Commit

Permalink
Make Defaults Class More Specific
Browse files Browse the repository at this point in the history
  • Loading branch information
jzheaux committed Feb 23, 2024
1 parent e47c7d7 commit c27d5f8
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
import org.springframework.security.authorization.method.PostFilterAuthorizationMethodInterceptor;
import org.springframework.security.authorization.method.PreAuthorizeAuthorizationManager;
import org.springframework.security.authorization.method.PreFilterAuthorizationMethodInterceptor;
import org.springframework.security.config.authorization.MethodSecurityDefaults;
import org.springframework.security.config.authorization.PrePostMethodSecurityDefaults;
import org.springframework.security.config.core.GrantedAuthorityDefaults;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolderStrategy;
Expand All @@ -69,7 +69,7 @@ final class PrePostMethodSecurityConfiguration implements ImportAware {
@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
static MethodInterceptor preFilterAuthorizationMethodInterceptor(
ObjectProvider<GrantedAuthorityDefaults> defaultsProvider,
ObjectProvider<MethodSecurityDefaults> methodSecurityDefaultsProvider,
ObjectProvider<PrePostMethodSecurityDefaults> methodSecurityDefaultsProvider,
ObjectProvider<MethodSecurityExpressionHandler> expressionHandlerProvider,
ObjectProvider<SecurityContextHolderStrategy> strategyProvider,
ObjectProvider<RoleHierarchy> roleHierarchyProvider, PrePostMethodSecurityConfiguration configuration,
Expand All @@ -87,7 +87,7 @@ static MethodInterceptor preFilterAuthorizationMethodInterceptor(
@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
static MethodInterceptor preAuthorizeAuthorizationMethodInterceptor(
ObjectProvider<GrantedAuthorityDefaults> defaultsProvider,
ObjectProvider<MethodSecurityDefaults> methodSecurityDefaultsProvider,
ObjectProvider<PrePostMethodSecurityDefaults> methodSecurityDefaultsProvider,
ObjectProvider<MethodSecurityExpressionHandler> expressionHandlerProvider,
ObjectProvider<SecurityContextHolderStrategy> strategyProvider,
ObjectProvider<AuthorizationEventPublisher> eventPublisherProvider,
Expand All @@ -109,7 +109,7 @@ static MethodInterceptor preAuthorizeAuthorizationMethodInterceptor(
@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
static MethodInterceptor postAuthorizeAuthorizationMethodInterceptor(
ObjectProvider<GrantedAuthorityDefaults> defaultsProvider,
ObjectProvider<MethodSecurityDefaults> methodSecurityDefaultsProvider,
ObjectProvider<PrePostMethodSecurityDefaults> methodSecurityDefaultsProvider,
ObjectProvider<MethodSecurityExpressionHandler> expressionHandlerProvider,
ObjectProvider<SecurityContextHolderStrategy> strategyProvider,
ObjectProvider<AuthorizationEventPublisher> eventPublisherProvider,
Expand All @@ -131,7 +131,7 @@ static MethodInterceptor postAuthorizeAuthorizationMethodInterceptor(
@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
static MethodInterceptor postFilterAuthorizationMethodInterceptor(
ObjectProvider<GrantedAuthorityDefaults> defaultsProvider,
ObjectProvider<MethodSecurityDefaults> methodSecurityDefaultsProvider,
ObjectProvider<PrePostMethodSecurityDefaults> methodSecurityDefaultsProvider,
ObjectProvider<MethodSecurityExpressionHandler> expressionHandlerProvider,
ObjectProvider<SecurityContextHolderStrategy> strategyProvider,
ObjectProvider<RoleHierarchy> roleHierarchyProvider, PrePostMethodSecurityConfiguration configuration,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
import org.springframework.security.authorization.method.PostFilterAuthorizationReactiveMethodInterceptor;
import org.springframework.security.authorization.method.PreAuthorizeReactiveAuthorizationManager;
import org.springframework.security.authorization.method.PreFilterAuthorizationReactiveMethodInterceptor;
import org.springframework.security.config.authorization.MethodSecurityDefaults;
import org.springframework.security.config.authorization.PrePostMethodSecurityDefaults;
import org.springframework.security.config.core.GrantedAuthorityDefaults;

/**
Expand All @@ -52,7 +52,7 @@ final class ReactiveAuthorizationManagerMethodSecurityConfiguration {
@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
static PreFilterAuthorizationReactiveMethodInterceptor preFilterInterceptor(
MethodSecurityExpressionHandler expressionHandler,
ObjectProvider<MethodSecurityDefaults> defaultsObjectProvider) {
ObjectProvider<PrePostMethodSecurityDefaults> defaultsObjectProvider) {
PreFilterAuthorizationReactiveMethodInterceptor interceptor = new PreFilterAuthorizationReactiveMethodInterceptor(
expressionHandler);
defaultsObjectProvider.ifAvailable((defaults) -> interceptor.setUseTemplates(defaults.isUseTemplates()));
Expand All @@ -63,7 +63,7 @@ static PreFilterAuthorizationReactiveMethodInterceptor preFilterInterceptor(
@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
static AuthorizationManagerBeforeReactiveMethodInterceptor preAuthorizeInterceptor(
MethodSecurityExpressionHandler expressionHandler,
ObjectProvider<MethodSecurityDefaults> defaultsObjectProvider,
ObjectProvider<PrePostMethodSecurityDefaults> defaultsObjectProvider,
ObjectProvider<ObservationRegistry> registryProvider) {
PreAuthorizeReactiveAuthorizationManager manager = new PreAuthorizeReactiveAuthorizationManager(
expressionHandler);
Expand All @@ -76,7 +76,7 @@ static AuthorizationManagerBeforeReactiveMethodInterceptor preAuthorizeIntercept
@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
static PostFilterAuthorizationReactiveMethodInterceptor postFilterInterceptor(
MethodSecurityExpressionHandler expressionHandler,
ObjectProvider<MethodSecurityDefaults> defaultsObjectProvider) {
ObjectProvider<PrePostMethodSecurityDefaults> defaultsObjectProvider) {
PostFilterAuthorizationReactiveMethodInterceptor interceptor = new PostFilterAuthorizationReactiveMethodInterceptor(
expressionHandler);
defaultsObjectProvider.ifAvailable((defaults) -> interceptor.setUseTemplates(defaults.isUseTemplates()));
Expand All @@ -87,7 +87,7 @@ static PostFilterAuthorizationReactiveMethodInterceptor postFilterInterceptor(
@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
static AuthorizationManagerAfterReactiveMethodInterceptor postAuthorizeInterceptor(
MethodSecurityExpressionHandler expressionHandler,
ObjectProvider<MethodSecurityDefaults> defaultsObjectProvider,
ObjectProvider<PrePostMethodSecurityDefaults> defaultsObjectProvider,
ObjectProvider<ObservationRegistry> registryProvider) {
PostAuthorizeReactiveAuthorizationManager manager = new PostAuthorizeReactiveAuthorizationManager(
expressionHandler);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,16 @@
package org.springframework.security.config.authorization;

/**
* A component for configuring various cross-cutting aspects of method security
* A component for configuring various cross-cutting aspects of pre/post method security
*
* @author Josh Cummings
* @since 6.3
* @see org.springframework.security.access.prepost.PreAuthorize
* @see org.springframework.security.access.prepost.PostAuthorize
* @see org.springframework.security.access.prepost.PreFilter
* @see org.springframework.security.access.prepost.PostFilter
*/
public final class MethodSecurityDefaults {
public final class PrePostMethodSecurityDefaults {

private boolean useTemplates;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@
import org.springframework.security.authorization.method.AuthorizationManagerBeforeMethodInterceptor;
import org.springframework.security.authorization.method.MethodInvocationResult;
import org.springframework.security.config.annotation.SecurityContextChangedListenerConfig;
import org.springframework.security.config.authorization.MethodSecurityDefaults;
import org.springframework.security.config.authorization.PrePostMethodSecurityDefaults;
import org.springframework.security.config.core.GrantedAuthorityDefaults;
import org.springframework.security.config.test.SpringTestContext;
import org.springframework.security.config.test.SpringTestContextExtension;
Expand Down Expand Up @@ -970,8 +970,8 @@ Authz authz() {
static class MetaAnnotationPlaceholderConfig {

@Bean
MethodSecurityDefaults methodSecurityDefaults() {
MethodSecurityDefaults defaults = new MethodSecurityDefaults();
PrePostMethodSecurityDefaults methodSecurityDefaults() {
PrePostMethodSecurityDefaults defaults = new PrePostMethodSecurityDefaults();
defaults.setUseTemplates(true);
return defaults;
}
Expand Down

0 comments on commit c27d5f8

Please sign in to comment.