Je développe une application web CRUD de base en utilisant React et Spring. Comme le frontend n'est pas encore prêt, j'utilise Postman pour les tests. J'ai cette méthode, mais je viens de découvrir que n'importe qui peut envoyer une requête HTTP et obtenir toutes les données, à condition de connaître l'identifiant.
@PostMapping("/utente") public ResponseEntity<Object> getDatiProfiloUtente(@RequestBody final Long idUtente){ HashMap<String, Object> map = new HashMap<>(); Paziente paziente = service.findPazienteById(idUtente); map.put("nome", paziente.getNome()); map.put("cognome", paziente.getCognome()); map.put("email", paziente.getEmail()); map.put("nTelefono", paziente.getNumeroTelefono()); map.put("emailCaregiver", paziente.getEmailCaregiver()); map.put("nomeCaregiver", paziente.getNomeCaregiver()); map.put("cognomeCaregiver", paziente.getCognomeCaregiver()); return new ResponseEntity<>(map, HttpStatus.OK); }
Comment puis-je assurer la sécurité ? Je souhaite que seuls les utilisateurs connectés puissent afficher leurs propres données.
Vous souhaitez utiliser les
@Secured
annotations fournies par Spring Security, Cet article de base est une excellente ressource qui explique en détail comment configurer la sécurité de la méthode dont vous avez besoin.