春季@Secured与@RolesAllowed的区别?基于角色的安全性的概念是什么?
我正在学习Spring Security,我对使用@Secured注释和@RolesAllowed注释之间的区别有疑问。
我知道两者都必须在方法层面上使用,在我的学习材料中,我发现了以下2个例子:
-
@RolesAllowed注释:
import javax.annotation.security.RolesAllowed; public class ItemManager { @RolesAllowed("ROLE_MEMBER") public Item findItem(long itemNumber) { ... } }
-
@Secured注释:
import org.springframework.security.annotation.Secured; public class ItemManager { @Secured("ROLE_MEMBER") public Item findItem(long itemNumber) { ... } }
在我看来,这两个注释的工作方式相同。有什么区别?我错过了什么?
我的另一个疑问是:究竟什么代表了ROLE_MEMBER?
我认为这类似于基于角色的安全性,因此它可能意味着:只有当用户是成员时,它才能访问注释的资源(是否正确?)。但是,在何处以及如何定义用户已设置此角色(它是成员)的事实?究竟是如何工作的?
断续器