├── .gitignore ├── .mvn └── wrapper │ └── maven-wrapper.properties ├── README.md ├── mvnw ├── mvnw.cmd ├── pom.xml └── src ├── main ├── java │ └── com │ │ └── secure │ │ └── notes │ │ ├── HelloController.java │ │ ├── NotesApplication.java │ │ ├── config │ │ └── OAuth2LoginSuccessHandler.java │ │ ├── controllers │ │ ├── AdminController.java │ │ ├── AuditLogController.java │ │ ├── AuthController.java │ │ ├── CsrfController.java │ │ └── NoteController.java │ │ ├── dtos │ │ └── UserDTO.java │ │ ├── models │ │ ├── AppRole.java │ │ ├── AuditLog.java │ │ ├── Note.java │ │ ├── PasswordResetToken.java │ │ ├── Role.java │ │ └── User.java │ │ ├── repositories │ │ ├── AuditLogRepository.java │ │ ├── NoteRepository.java │ │ ├── PasswordResetTokenRepository.java │ │ ├── RoleRepository.java │ │ └── UserRepository.java │ │ ├── security │ │ ├── SecurityConfig.java │ │ ├── WebConfig.java │ │ ├── jwt │ │ │ ├── AuthEntryPointJwt.java │ │ │ ├── AuthTokenFilter.java │ │ │ └── JwtUtils.java │ │ ├── request │ │ │ ├── LoginRequest.java │ │ │ └── SignupRequest.java │ │ ├── response │ │ │ ├── LoginResponse.java │ │ │ ├── MessageResponse.java │ │ │ └── UserInfoResponse.java │ │ └── services │ │ │ ├── UserDetailsImpl.java │ │ │ └── UserDetailsServiceImpl.java │ │ ├── services │ │ ├── AuditLogService.java │ │ ├── NoteService.java │ │ ├── TotpService.java │ │ ├── UserService.java │ │ └── impl │ │ │ ├── AuditLogServiceImpl.java │ │ │ ├── NoteServiceImpl.java │ │ │ ├── TotpServiceImpl.java │ │ │ └── UserServiceImpl.java │ │ └── util │ │ ├── AuthUtil.java │ │ └── EmailService.java └── resources │ ├── application-dev.properties │ ├── application-prod.properties │ └── application.properties └── test └── java └── com └── secure └── notes └── NotesApplicationTests.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/.gitignore -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/.mvn/wrapper/maven-wrapper.properties -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/README.md -------------------------------------------------------------------------------- /mvnw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/mvnw -------------------------------------------------------------------------------- /mvnw.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/mvnw.cmd -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/pom.xml -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/HelloController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/HelloController.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/NotesApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/NotesApplication.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/config/OAuth2LoginSuccessHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/config/OAuth2LoginSuccessHandler.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/controllers/AdminController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/controllers/AdminController.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/controllers/AuditLogController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/controllers/AuditLogController.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/controllers/AuthController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/controllers/AuthController.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/controllers/CsrfController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/controllers/CsrfController.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/controllers/NoteController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/controllers/NoteController.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/dtos/UserDTO.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/dtos/UserDTO.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/models/AppRole.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/models/AppRole.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/models/AuditLog.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/models/AuditLog.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/models/Note.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/models/Note.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/models/PasswordResetToken.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/models/PasswordResetToken.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/models/Role.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/models/Role.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/models/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/models/User.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/repositories/AuditLogRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/repositories/AuditLogRepository.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/repositories/NoteRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/repositories/NoteRepository.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/repositories/PasswordResetTokenRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/repositories/PasswordResetTokenRepository.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/repositories/RoleRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/repositories/RoleRepository.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/repositories/UserRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/repositories/UserRepository.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/SecurityConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/SecurityConfig.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/WebConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/WebConfig.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/jwt/AuthEntryPointJwt.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/jwt/AuthEntryPointJwt.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/jwt/AuthTokenFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/jwt/AuthTokenFilter.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/jwt/JwtUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/jwt/JwtUtils.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/request/LoginRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/request/LoginRequest.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/request/SignupRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/request/SignupRequest.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/response/LoginResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/response/LoginResponse.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/response/MessageResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/response/MessageResponse.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/response/UserInfoResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/response/UserInfoResponse.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/services/UserDetailsImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/services/UserDetailsImpl.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/security/services/UserDetailsServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/security/services/UserDetailsServiceImpl.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/services/AuditLogService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/services/AuditLogService.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/services/NoteService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/services/NoteService.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/services/TotpService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/services/TotpService.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/services/UserService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/services/UserService.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/services/impl/AuditLogServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/services/impl/AuditLogServiceImpl.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/services/impl/NoteServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/services/impl/NoteServiceImpl.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/services/impl/TotpServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/services/impl/TotpServiceImpl.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/services/impl/UserServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/services/impl/UserServiceImpl.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/util/AuthUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/util/AuthUtil.java -------------------------------------------------------------------------------- /src/main/java/com/secure/notes/util/EmailService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/java/com/secure/notes/util/EmailService.java -------------------------------------------------------------------------------- /src/main/resources/application-dev.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/resources/application-dev.properties -------------------------------------------------------------------------------- /src/main/resources/application-prod.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/main/resources/application-prod.properties -------------------------------------------------------------------------------- /src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.profiles.active=prod -------------------------------------------------------------------------------- /src/test/java/com/secure/notes/NotesApplicationTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmbarkXOfficial/spring-security-masterclass/HEAD/src/test/java/com/secure/notes/NotesApplicationTests.java --------------------------------------------------------------------------------