我们目前正在评估Spring-Boot作为项目的框架。这个项目有安全要求,基本上我们希望将webservice调用限制为某些角色,但同时,所述调用的结果取决于用户所在的角色。
示例:我理解,我可以使用
阻止或允许用户访问某个REST调用@PreAuthorize("...")
@PostAuthorize("...")
但我需要的是更多的代码(来自DropWizard):
@Path("/for_date_sec/{date}")
@GET
@RolesAllowed("ADMIN")
public void doSecured(@Auth User user, @PathParam(value = "date") String date) {
selectReadableObjects(user.getRoles());
...
}
根据我的理解,' @ PreAuthorize / @ PostAuthorize'注释可以访问主体。我们还可以将它暴露给它 这可能吗?
答案 0 :(得分:0)
看来,没有办法让Spring引入一个人为的附加参数。相反,Spring通过SecurityContextHolder
提供上下文信息,如Nur Alam Zico所提及的答案所述。