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

Support Expressions in Method Authorization Denied Handlers #14857

Open
Tracked by #14595
marcusdacoregio opened this issue Apr 5, 2024 · 0 comments · May be fixed by #14912
Open
Tracked by #14595

Support Expressions in Method Authorization Denied Handlers #14857

marcusdacoregio opened this issue Apr 5, 2024 · 0 comments · May be fixed by #14912
Assignees
Labels
in: core An issue in spring-security-core type: enhancement A general enhancement

Comments

@marcusdacoregio
Copy link
Contributor

marcusdacoregio commented Apr 5, 2024

We should consider supporting expressions in method authorization handlers for simple setups. Currently, if you want to handle authorization denied and map the return value to null, you must create a MethodAuthorizationDeniedHandler/PostProcessor class and expose it as a bean:

@HandleAuthorizationDenied(handlerClass = Null.class)
public String getUserEmail() {
    // ...
}

@Component
public class Null implements MethodAuthorizationDeniedHandler {
    @Override
    public Object handle(MethodInvocation methodInvocation, AuthorizationResult result) {
        return null;
    }
}

That is a little bit too complicated to just return null. A simpler setup could be:

@HandleAuthorizationDenied(handlerExpression = "null")
public String getUserEmail() {
    // ...
}

@HandleAuthorizationDenied(handlerExpression = "***")
public String getUserEmail() {
    // ...
}

Related:

@marcusdacoregio marcusdacoregio added in: core An issue in spring-security-core type: enhancement A general enhancement labels Apr 5, 2024
@marcusdacoregio marcusdacoregio self-assigned this Apr 5, 2024
@marcusdacoregio marcusdacoregio changed the title Support Expressions in Method Authorization Handlers Support Expressions in Method Authorization Denied Handlers Apr 9, 2024
CrazyParanoid pushed a commit to CrazyParanoid/spring-security that referenced this issue Apr 15, 2024
CrazyParanoid pushed a commit to CrazyParanoid/spring-security that referenced this issue Apr 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: core An issue in spring-security-core type: enhancement A general enhancement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant