İçeriğe geç

Toplu Atama (ARCH4129)

Anahtar java.security.mass-assignment · Önem warning · Kategori security · CWE CWE-915

Bir istek gövdesinin tamamını izin listesi olmadan doğrudan entity’ye bağlamak, saldırganların role veya isAdmin gibi korumalı alanları ayarlamasına olanak tanır. Yalnızca izin verilen alanları taşıyan bir DTO kullanın.

@PostMapping("/users")
User create(@RequestBody User user) { // role, isAdmin dahil her alan bağlanır
return repository.save(user);
}
@PostMapping("/users")
User create(@RequestBody UserCreateDto dto) { // yalnızca izinli alanlar
User user = new User();
user.setName(dto.name());
user.setEmail(dto.email());
return repository.save(user);
}

İstek gövdesini doğrudan entity’ye bağlamak yerine izinli alanları içeren bir DTO kullanın.