[JAVA] API RESTful d'autorisation d'accès au démarrage de printemps

Aperçu

Définissez les autorisations requises pour accéder à une URL spécifique

environnement

JDK 1.8.0_144 spring-boot 1.5.10 spring-security 4.2.4

Conditions préalables

Obtenez les informations d'autorité à l'avance lors de la connexion. (Parce que ce n'est pas là cette fois) Cette fois, il est supposé que vous pouvez déjà obtenir les droits ADMIN.

Où mettre en œuvre

la mise en oeuvre

@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    //...
}

Annoter la classe SecurityConfig existante (n'est-ce pas?) @EnableGlobalMethodSecurity(prePostEnabled = true) Ajouter.

@PreAuthorize("hasAuthority('ADMIN')")
//Controller
public void sampleAuth() {
    //…
}

Annotation @PreAuthorize("hasAuthority('ADMIN')") Avec l'ajout de, cette méthode Controller ne sera accessible qu'aux utilisateurs avec les privilèges "ADMIN".

Caractéristiques de @PreAuthorize

Les expressions sont disponibles Par exemple, si vous souhaitez autoriser uniquement les demandes d'utilisateurs disposant des privilèges [ADMIN] et [MEMBER] @PreAuthorize("hasAuthority('ADMIN OR hasAuthority('MEMBER')") Tu peux l'utiliser. En plus de cela, [AND] [OR] [NOT (!)] Etc. peut être utilisé.

Recommended Posts

API RESTful d'autorisation d'accès au démarrage de printemps
Spring Boot: exemple de projet d'API Restful
Implémenter l'API REST avec Spring Boot
Forme de botte de printemps
Spring Boot Rappelez-vous
gae + botte à ressort
◆ Obtenez l'API créée par Spring Boot à partir de React
Créer un serveur API Web avec Spring Boot
Fiche d'apprentissage SPRING BOOT 01
Botte de printemps + Heroku Postgres
Mappez automatiquement DTO aux entités avec l'API Spring Boot
Hello World (API REST) avec Apache Camel + Spring Boot 2
Rédaction de mémo de démarrage de printemps (1)
Accédez au h2db intégré de Spring Boot avec jdbcTemplate
[Spring Boot] Obtenez des informations utilisateur avec l'API Rest (débutant)
Première botte à ressort (DI)
Fiche d'apprentissage SPRING BOOT 02
Gestion des exceptions Spring Boot
Mappage du servlet Spring Boot
Environnement de développement-développement Spring Boot-
Procédure d'apprentissage Spring Boot
Personnalisez la réponse aux erreurs de l'API REST avec Spring Boot (Partie 2)
Apprentissage de Spring Boot [Début]
Rédaction de mémos de démarrage de printemps (2)
Résumé du document Spring Boot 2.2
[Spring Boot] DataSourceProperties $ DataSourceBeanCreationException
Présentez swagger-ui à l'API REST implémentée dans Spring Boot
Disponibilité de l'application Spring Boot 2.3
Tutoriels Spring Boot Sujets
Personnalisez la réponse aux erreurs de l'API REST avec Spring Boot (Partie 1)
Télécharger avec Spring Boot
Gérez l'API de date et d'heure Java 8 avec Thymeleaf avec Spring Boot
Implémenter l'API REST avec Spring Boot et JPA (Application Layer)
Implémenter l'API REST avec Spring Boot et JPA (couche d'infrastructure)
Exemple de configuration d'API RESTful minimum avec Jersey + Spring Framework
Faisons une API simple avec EC2 + RDS + Spring boot ①
Comment appeler et utiliser l'API en Java (Spring Boot)
Essayez d'utiliser l'API de recherche de code postal avec Spring Boot
Implémenter l'API REST avec Spring Boot et JPA (Domain Layer Edition)
Implémentez une API Rest simple avec Spring Security & JWT avec Spring Boot 2.0
[Spring Boot] Construction de l'environnement (macOS)
Essayez Spring Boot de 0 à 100.
Générer un code à barres avec Spring Boot
Hello World avec Spring Boot
Spring Boot sur Microsoft Azure
Implémenter GraphQL avec Spring Boot
Calendrier des tâches du didacticiel Spring Boot
Spring 5 et Spring Boot 2 Procédure de préparation pratique
Démarrez avec Spring Boot
Multi-projets Spring Boot 2 avec Gradle
[Spring Boot] Création d'applications Web
Exécutez LIFF avec Spring Boot
Connexion SNS avec Spring Boot
Paramètres d'échange à chaud Spring Boot
Introduction à Spring Boot ① ~ DI ~
Téléchargement de fichiers avec Spring Boot
Spring Boot commençant par copie
Introduction à Spring Boot ② ~ AOP ~
Application Java CICS-Run - (4) Application Spring Boot
Spring Boot à partir de Docker