gpt4 book ai didi

java - 每个实体的 Spring Boot 安全角色

转载 作者:行者123 更新时间:2023-12-02 10:34:20 25 4
gpt4 key购买 nike

我的应用程序当前有两种类型的用户:管理员普通用户。

该应用程序有多个项目:100 个或更多。每个项目的用户都有不同的角色,如项目所有者、客户等......

我现在正在寻找将这些子角色放置到位的最佳方法。因为在我的服务中,我想使用 PreAuthorise("hasRole('OWNER')") 这样只有合适的人才能执行更新或其他操作。

我现在尝试的是为每个项目提供一个正在使用角色(项目所有者、客户等)处理该项目的用户列表,当我通过 Spring Security 登录时,我检索用户并获取所有项目他所属的位置,然后我按如下所示添加角色 ROLE_PROJECTNAME_OWNERROLE_PROJECTNAME_CLIENT

问题是我无法使用 HASROLE 因为有很多项目,所以我无法提前注释哪些项目允许在我的服务层中进行方法调用。我也不能只添加 OWNER 因为那样我就不知道在哪个项目中。所以我有点困惑如何正确地做到这一点。

最佳答案

定义您自己的服务来管理用户/项目/角色的访问,并直接在您的@PreAUthorize上调用此服务。

看看:https://dreamix.eu/blog/java/implementing-custom-authorization-function-for-springs-pre-and-post-annotations

关于java - 每个实体的 Spring Boot 安全角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53395662/

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