# jwt-spring-security-demo **Repository Path**: magicfish/jwt-spring-security-demo ## Basic Information - **Project Name**: jwt-spring-security-demo - **Description**: 引自:https://github.com/szerhusenBC/jwt-spring-security-demo 方便自己用客户端查看 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2016-12-12 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JWT Spring Security Demo ![Screenshot from running application](etc/screenshot-jwt-spring-security-demo.png?raw=true "Screenshot JWT Spring Security Demo") ##About This is just a simple demo for using **JWT (JSON Web Token)** with **Spring Security** and **Spring Boot**. This solution is partially based on the blog entry [REST Security with JWT using Java and Spring Security](https://www.toptal.com/java/rest-security-with-jwt-spring-security-and-java) and the demo project [Cerberus](https://github.com/brahalla/Cerberus). Thanks to the authors! ##Requirements This demo is build with with Maven and Java 1.8. ##Usage Just start the application with the Spring Boot maven plugin (`mvn spring-boot:run`). The application is running at [http://localhost:8080](http://localhost:8080). There are three user accounts present to demonstrate the different levels of access to the endpoints in the API and the different authorization exceptions: ``` Admin - admin:admin User - user:password Disabled - disabled:password (this user is disabled) ``` There are three endpoints that are reasonable for the demo: ``` /auth - authentication endpoint with unrestricted access /persons - an example endpoint that is restricted to authorized users (a valid JWT token must be present in the request header) /protected - an example endpoint that is restricted to authorized users with the role 'ROLE_ADMIN' (a valid JWT token must be present in the request header) ``` I've written a small Javascript client and put some comments in the code that hopefully makes this demo understandable. ##Creator **Stephan Zerhusen** * * ##Copyright and license The code is released under the [MIT license](LICENSE?raw=true). --------------------------------------- Please feel free to send me some feedback or questions!