From 8efdc5c92620ce9d72200c87d60c36ac7562cc82 Mon Sep 17 00:00:00 2001 From: Marcus Da Coregio Date: Thu, 22 Jun 2023 16:00:08 -0300 Subject: [PATCH] Polish Contribution Issue gh-13215 --- .../AuthorizeHttpRequestsConfigurer.java | 21 ++++---- .../AuthorizeHttpRequestsConfigurerTests.java | 48 +++++++++++++++++-- 2 files changed, 54 insertions(+), 15 deletions(-) diff --git a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/AuthorizeHttpRequestsConfigurer.java b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/AuthorizeHttpRequestsConfigurer.java index 1df5fd6c0c..73d8ba72f3 100644 --- a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/AuthorizeHttpRequestsConfigurer.java +++ b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/AuthorizeHttpRequestsConfigurer.java @@ -63,22 +63,13 @@ public final class AuthorizeHttpRequestsConfigurer roleHierarchy; - private final String rolePrefix; + private String rolePrefix = "ROLE_"; /** * Creates an instance. * @param context the {@link ApplicationContext} to use */ public AuthorizeHttpRequestsConfigurer(ApplicationContext context) { - String[] grantedAuthorityDefaultsBeanNames = context.getBeanNamesForType(GrantedAuthorityDefaults.class); - if (grantedAuthorityDefaultsBeanNames.length == 1) { - GrantedAuthorityDefaults grantedAuthorityDefaults = context.getBean(grantedAuthorityDefaultsBeanNames[0], - GrantedAuthorityDefaults.class); - this.rolePrefix = grantedAuthorityDefaults.getRolePrefix(); - } - else { - this.rolePrefix = "ROLE_"; - } this.registry = new AuthorizationManagerRequestMatcherRegistry(context); if (context.getBeanNamesForType(AuthorizationEventPublisher.class).length > 0) { this.publisher = context.getBean(AuthorizationEventPublisher.class); @@ -88,6 +79,11 @@ public final class AuthorizeHttpRequestsConfigurer (context.getBeanNamesForType(RoleHierarchy.class).length > 0) ? context.getBean(RoleHierarchy.class) : new NullRoleHierarchy()); + String[] grantedAuthorityDefaultsBeanNames = context.getBeanNamesForType(GrantedAuthorityDefaults.class); + if (grantedAuthorityDefaultsBeanNames.length > 0) { + GrantedAuthorityDefaults grantedAuthorityDefaults = context.getBean(GrantedAuthorityDefaults.class); + this.rolePrefix = grantedAuthorityDefaults.getRolePrefix(); + } } /** @@ -292,7 +288,7 @@ public final class AuthorizeHttpRequestsConfigurer c.anyRequest().hasAnyRole("USER", "ADMIN")).build(); + } + + } + @Configuration @EnableWebSecurity static class NoRequestsConfig {