gpt4 book ai didi

java - Spring Security 自定义用户组授权

转载 作者:太空宇宙 更新时间:2023-11-04 13:02:01 24 4
gpt4 key购买 nike

我正在尝试使用 Spring Security 实现一个 Web 应用程序。我了解 Spring Security 基于角色的机制,并且可以让它工作。我的问题是,在我的网络应用程序中,用户可以创建自己的组并向其添加 friend (应用程序的其他用户)。用户对某些页面的访问是基于这个好友组的。它的工作方式应该类似于 Facebook 用户和组。如何使用 Spring Security 实现这些自定义用户组和对用户页面的访问?此用例是否有默认机制?或者我应该实现自己的数据库表?

最佳答案

我正在使用具有 ACL 机制的用户组。基本上,我确保在为对象创建 ACL 时设置所有者。然后,当另一个用户尝试访问该对象时,将检查所有者的组以查看是否存在匹配项。

这当然意味着当用户更改他的组时,该对象会“随他而去”。

如果您不希望出现此行为,您可以将组对象的 ACL 作为安全对象的父 ACL。然后,当用户更改组时,您应该为组对象 ACL 设置正确的条目。这样,安全对象就与用户组绑定(bind),而不是与用户本人绑定(bind)。

Spring Security Domain Object Security (ACLs)

关于java - Spring Security 自定义用户组授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34851517/

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