About Security Entity Filtering Module
Filter out the entity properties from the output of Jackson serialization according to the DenyAll, RolesAllowed annotations.
How to use
Register the Jsr250Module to ObjectMapper:
ObjectMapper objectMapper = new ObjectMapper(); objectMapper.registerModule(new Jsr250Module());
Mark your properties with annotations @RolesAllowed, @DenyAll:
public class User {
@RolesAllowed("ROLE_ADMIN")
public String getUsername() {
return username;
}
@DenyAll
public String getPassword() {
return password;
}
}
and then the relevant properties would be filtered out from the serialized JSON, check Jsr250ModuleTest for details.
Note: the roles is read from SecurityContextHolder.getContext().getAuthentication().getAuthorities() of spring-security.
