¿Puedo agregar una anotación personalizada al método JAX-RS para validar el acceso?
Por ejemplo, tengo el siguiente método:
@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();
}
}
Entonces, en lugar de escribir en cada método:
if(DB.isAccessPermitted(email)){
Info info = DB.getCurrentInfo();
String json = gson.toJson(info);
return Response.ok(json).build();
}else{
return Response.status(401).build();
}
Voy a crear por ejemplo@SecurityCheck
anotación, anote todos los métodos que tienen acceso limitado y realice la verificación solo en un solo lugar. ¿Es posible lograr con anotaciones y se puede proporcionar MVCE? Gracias.