Sono nuovo alla sicurezza di primavera. Come interpreto questo?Come interpretare hasPermission nella sicurezza di primavera?
@PreAuthorize("hasPermission(null, 'opetussuunnitelma', 'LUONTI')")
OpetussuunnitelmaDto addOpetussuunnitelma(OpetussuunnitelmaDto opetussuunnitelmaDto);
Quale metodo viene chiamato dall'utilità di valutazione? Penso che quello con tre parametri verrebbe chiamato in questo caso. Sta controllando se l'utente corrente ha l'autorizzazione "LUONTI" sulla destinazione di tipo - "opetussuunnitelma". Ho ragione? Non possiamo semplicemente non includere "null" e passare solo due parametri. Ho letto che il primo argomento (l'oggetto di autenticazione) non è fornito.
+public class PermissionEvaluator implements org.springframework.security.access.PermissionEvaluator {
+
+ @Override
+ public boolean hasPermission(Authentication authentication, Object targetDomainObject, Object permission) {
+ LOG.error(" *** ei toteutettu *** ");
+ return true;
+ }
+
+ @Override
+ public boolean hasPermission(Authentication authentication, Serializable targetId, String targetType, Object permission) {
+ LOG.error(" *** ei toteutettu *** ");
+ return true;
+ }
+
+ private static final Logger LOG = LoggerFactory.getLogger(PermissionEvaluator.class);
+}
Grazie. Potresti dirmi se l'uso di "null" serve a qualcosa qui? – Zack
Quando aggiungo l'annotazione @PreAuthorize a un metodo nel controller, funziona come un incantesimo. Ma, non funziona con un metodo di servizio. Qualche ragione specifica? – Arun