@RequiresAuthentication
验证用户是否登录,跟subject.isAuthenticated() 结果为true时一样。
@RequiresUser
验证用户是否被记忆,user有两种含义:
成功登录的(subject.isAuthenticated() 结果为true);
被记忆的(subject.isRemembered()结果为true)。
@RequiresGuest
验证是否是一个guest的请求,与@RequiresUser完全相反。
就是RequiresUser == !RequiresGuest。
此时subject.getPrincipal() 结果为null.
@RequiresRoles
@RequiresRoles("user123");
public String text(){
return "/text";
}
如果subject中有user123角色才可以访问方法text()。如果没有这个权限则会抛出异常AuthorizationException。
@RequiresPermissions
@ApiOperation(value = "新增", notes = "新增")
@PostMapping("/add")
@RequiresPermissions("system:permission:add")
@ResponseBody
public AjaxResult add(@RequestBody TsysPermission tsysPermission){
int b= sysPermissionService.insertSelective(tsysPermission);
if(b>0){
return success();
}else{
return error();
}
}
要求subject中必须同时含有system:permission:add的权限才能执行方法add()。否则抛出异常AuthorizationException。