Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate MethodMatcher and AuthorizationManager #1

Open
wants to merge 123 commits into
base: gh-9289
Choose a base branch
from

Conversation

jzheaux
Copy link

@jzheaux jzheaux commented Mar 19, 2021

Here's a thought about how MethodMatcher could be separated from AuthorizationManager.

Please note that I didn't convert everything over to the pattern I'm proposing as this is just meant to illustrate a possibility. The two that I refactored were PreAnnotationAuthorizationManagerBeforeAdvice and SecuredAuthorizationManagerBeforeAdvice. I also renamed some classes and methods to align conceptually with the change in hierarchy.

Let me know what you think.

BenjaminFaal and others added 30 commits January 25, 2021 10:02
Make DefaultOAuth2User more inline with other part of
spring-security.
For example,
- DefaultOAuth2AuthenticatedPrincipal
- AbstractAuthenticationToken

Closes spring-projectsgh-9366
Fix example on registering custom marshaller for saml request
This reverts commit 9a2c184.

This caused a problem with the snapshot build, reverting
while I find an approach that works for community usage
- Typo in PlaceholderConfig was causing Windows builds to
resolve the CLASSPATH environment variable

Closes spring-projectsgh-9421
- Netty returns a slightly different exception on Windows,
so adjusted assertion accordingly.

Issue spring-projectsgh-9421
This reverts commit a85caa4.
rwinch and others added 17 commits April 5, 2021 22:23
There are two versions of org.opensaml that are supported, so we need
to manually update opensaml dependencies.

Issue spring-projectsgh-9542
- Produce sources jar
- Produce Javadoc jar

Issue spring-projectsgh-9095
- To make upgrade passive

Issue spring-projectsgh-9095
evgeniycheban and others added 5 commits April 8, 2021 15:15
- Because publishing an advice bean replaces Spring Security
defaults, the code should error if both a custom bean and
either secureEnabled or prePostEnabled are specified

Issue spring-projectsgh-9289
- Changed from MethodMatcher to Pointcut since authorization
annotations also can be attached to classes
- Adjusted advice to extend Before or AfterAdvice
- Adjusted advice to extend PointcutAdvisor so
that it can share its Pointcut
- Adjusted advice to extend AopInfrastructureBean to
align with old advice classes

Issue spring-projectsgh-9289
jzheaux added 5 commits April 9, 2021 17:45
- Removes the need to keep MethodAuthorizationContext#returnObject
in sync with other method parameters
- Restores MethodAuthorizationContext's immutability

Issue spring-projectsgh-9289
- Simplify registering custom authorization managers

Issue spring-projectsgh-9289
- Interceptor is a more descriptive term for what
method security is doing
- This also allows the code to follow a delegate
pattern that unifies both before-method and after-
method authorization

Issue spring-projectsgh-9289
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.