Legen Sie die erforderlichen Berechtigungen für den Zugriff auf eine bestimmte URL fest
JDK 1.8.0_144 spring-boot 1.5.10 spring-security 4.2.4
Informieren Sie sich beim Anmelden im Voraus über die Berechtigungsinformationen. (Weil es diesmal nicht da ist) Diesmal wird davon ausgegangen, dass Sie bereits die ADMIN-Berechtigung erhalten können.
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class SecurityConfig extends WebSecurityConfigurerAdapter {
//...
}
Kommentieren Sie die vorhandene SecurityConfig-Klasse (nicht wahr?)
@EnableGlobalMethodSecurity(prePostEnabled = true)
Hinzufügen.
@PreAuthorize("hasAuthority('ADMIN')")
//Controller
public void sampleAuth() {
//…
}
Anmerkung
@PreAuthorize("hasAuthority('ADMIN')")
Wenn Sie hinzufügen, ist diese Controller-Methode nur für Benutzer mit "ADMIN" -Berechtigungen zugänglich.
Ausdrücke sind verfügbar Zum Beispiel, wenn Sie nur Anforderungen von Benutzern mit den Berechtigungen [ADMIN] und [MEMBER] autorisieren möchten @PreAuthorize("hasAuthority('ADMIN OR hasAuthority('MEMBER')") Du kannst es benutzen. Zusätzlich kann [AND] [OR] [NOT (!)] Etc. verwendet werden.
Recommended Posts