Могу ли я добавить пользовательскую аннотацию к методу JAX-RS для проверки доступа?
Например, у меня есть следующий метод:
@GET
@Path("/get/current")
public Response getCurrentInfo(@HeaderParam("Authorization") String token){
Gson gson = new GsonBuilder()
.setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS")
.setPrettyPrinting().create();
String email = SecurityProvider.decryptTokenAndGetEmail(token);
if(DB.isAccessPermitted(email)){
Info info = DB.getCurrentInfo();
String json = gson.toJson(info);
return Response.ok(json).build();
}else{
return Response.status(401).build();
}
}
Так что вместо этого написать в каждом методе:
if(DB.isAccessPermitted(email)){
Info info = DB.getCurrentInfo();
String json = gson.toJson(info);
return Response.ok(json).build();
}else{
return Response.status(401).build();
}
Я создам например@SecurityCheck
аннотации, аннотируйте каждый метод, который имеет ограниченный доступ, и выполняйте проверку только в одном месте. Можно ли этого добиться с помощью аннотаций и можно ли предоставить MVCE? Спасибо.