From 98ca4e4596b86124e171f718b36f894f99beaaf7 Mon Sep 17 00:00:00 2001 From: Andres Bermeo Date: Fri, 24 Jun 2022 21:26:44 -0500 Subject: [PATCH 1/2] Creation of static methods in AuthenticatedAuthorizationManager --- .../AuthorizeHttpRequestsConfigurer.java | 20 ++++++++++++++++++- .../AuthenticatedAuthorizationManager.java | 13 ++++++++++++ .../AuthorityAuthorizationManager.java | 12 +++++++++++ 3 files changed, 44 insertions(+), 1 deletion(-) 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 f06f4bde985..8b3a65e85d7 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 @@ -18,7 +18,7 @@ import java.util.List; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import org.springframework.context.ApplicationContext; import org.springframework.http.HttpMethod; @@ -264,6 +264,24 @@ public AuthorizationManagerRequestMatcherRegistry denyAll() { return access((a, o) -> new AuthorizationDecision(false)); } + public AuthorizationManagerRequestMatcherRegistry rememberMe() { + AuthorizationManager manager = AuthenticatedAuthorizationManager.rememberMe(); + return access(manager); + + } + + public AuthorizationManagerRequestMatcherRegistry fullyAuthenticated() { + AuthorizationManager manager = AuthenticatedAuthorizationManager + .fullyAuthenticated(); + return access(manager); + } + + public AuthorizationManagerRequestMatcherRegistry anonymous() { + AuthorizationManager manager = AuthenticatedAuthorizationManager.anonymous(); + return access(manager); + + } + /** * Specifies a user requires a role. * @param role the role that should be required which is prepended with ROLE_ diff --git a/core/src/main/java/org/springframework/security/authorization/AuthenticatedAuthorizationManager.java b/core/src/main/java/org/springframework/security/authorization/AuthenticatedAuthorizationManager.java index baa65ac041a..ec76b6f7ce5 100644 --- a/core/src/main/java/org/springframework/security/authorization/AuthenticatedAuthorizationManager.java +++ b/core/src/main/java/org/springframework/security/authorization/AuthenticatedAuthorizationManager.java @@ -41,6 +41,19 @@ public final class AuthenticatedAuthorizationManager implements Authorization public static AuthenticatedAuthorizationManager authenticated() { return new AuthenticatedAuthorizationManager<>(); } + + public static AuthenticatedAuthorizationManager fullyAuthenticated() { + + } + + public static AuthenticatedAuthorizationManager anonymous() { + + } + + public static AuthenticatedAuthorizationManager rememberMe() { + + } + /** * Determines if the current user is authorized by evaluating if the diff --git a/core/src/main/java/org/springframework/security/authorization/AuthorityAuthorizationManager.java b/core/src/main/java/org/springframework/security/authorization/AuthorityAuthorizationManager.java index 4a180cf1aa2..ed9c072e577 100644 --- a/core/src/main/java/org/springframework/security/authorization/AuthorityAuthorizationManager.java +++ b/core/src/main/java/org/springframework/security/authorization/AuthorityAuthorizationManager.java @@ -122,6 +122,18 @@ public static AuthorityAuthorizationManager hasAnyAuthority(String... aut return new AuthorityAuthorizationManager<>(authorities); } + public static AuthorityAuthorizationManager RememberMe() { + + } + + public static AuthorityAuthorizationManager fullyAuthenticated(String... ) { + + } + + public static AuthorityAuthorizationManager anonymous(String... ) { + + } + private static String[] toNamedRolesArray(String rolePrefix, String[] roles) { String[] result = new String[roles.length]; for (int i = 0; i < roles.length; i++) { From ea99e3f03e4f3d79ca915de2e06b5e86ab8c4c5e Mon Sep 17 00:00:00 2001 From: Andres Bermeo Date: Fri, 24 Jun 2022 21:33:41 -0500 Subject: [PATCH 2/2] Creation of static methods in AuthenticatedAuthorizationManager --- .../web/configurers/AuthorizeHttpRequestsConfigurer.java | 1 + .../authorization/AuthenticatedAuthorizationManager.java | 1 + .../security/authorization/AuthorityAuthorizationManager.java | 1 + 3 files changed, 3 insertions(+) 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 8b3a65e85d7..596818c558c 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 @@ -278,6 +278,7 @@ public AuthorizationManagerRequestMatcherRegistry fullyAuthenticated() { public AuthorizationManagerRequestMatcherRegistry anonymous() { AuthorizationManager manager = AuthenticatedAuthorizationManager.anonymous(); + return access(manager); } diff --git a/core/src/main/java/org/springframework/security/authorization/AuthenticatedAuthorizationManager.java b/core/src/main/java/org/springframework/security/authorization/AuthenticatedAuthorizationManager.java index ec76b6f7ce5..1d527758664 100644 --- a/core/src/main/java/org/springframework/security/authorization/AuthenticatedAuthorizationManager.java +++ b/core/src/main/java/org/springframework/security/authorization/AuthenticatedAuthorizationManager.java @@ -44,6 +44,7 @@ public static AuthenticatedAuthorizationManager authenticated() { public static AuthenticatedAuthorizationManager fullyAuthenticated() { + } public static AuthenticatedAuthorizationManager anonymous() { diff --git a/core/src/main/java/org/springframework/security/authorization/AuthorityAuthorizationManager.java b/core/src/main/java/org/springframework/security/authorization/AuthorityAuthorizationManager.java index ed9c072e577..3b61e31df92 100644 --- a/core/src/main/java/org/springframework/security/authorization/AuthorityAuthorizationManager.java +++ b/core/src/main/java/org/springframework/security/authorization/AuthorityAuthorizationManager.java @@ -128,6 +128,7 @@ public static AuthorityAuthorizationManager RememberMe() { public static AuthorityAuthorizationManager fullyAuthenticated(String... ) { + } public static AuthorityAuthorizationManager anonymous(String... ) {