gpt4 book ai didi

java - 在 Spring Security 中处理复杂的授权

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:18:05 24 4
gpt4 key购买 nike

我有一个使用授权前和授权后方法注释的 spring MVC 网络应用。

我的一项服务中有一个特定方法需要应用更复杂的授权逻辑。

我注意到有一个 PermissionsEvaluator 接口(interface),但它似乎旨在用于更全局的权限方法而不是每个模块。我想可以编写一个委托(delegate)给特定于模块的 PermissionsEvaluators 的实现,但这似乎需要大量工作。

此外,我会加倍努力。授权决策基于实际处理过程中的中间状态。如果我使用 PreAuthorize 机制,我将生成该状态一次用于授权,然后再次“用于真实”。

我可以直接从我的服务层抛出一个标准的 spring 异常吗?我应该考虑其他方法吗?

最佳答案

考虑使用 AccessDeniedException .当前置条件或后置条件评估为 false 时,它​​由 Spring Security 在内部抛出。默认情况下,它会生成一个 403 禁止访问页面。

关于java - 在 Spring Security 中处理复杂的授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16745500/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com