├── .gitignore ├── HELP.md ├── LICENSE ├── README.md ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle.kts ├── slides ├── .gitignore ├── package-lock.json ├── package.json ├── public │ ├── authentication-manager.png │ ├── csrf-exploit.png │ ├── csrf-protection.png │ ├── daniel-intro.jpg │ ├── daniel-intro.webp │ ├── filter-chain-call-stack.png │ ├── filter-chain-oop.png │ ├── filterchain-callstack-2.jpg │ ├── meet-me.jpg │ ├── provider-manager.png │ ├── qr-code.png │ ├── security-context.png │ └── security-filter-chain.png ├── setup │ └── shiki.ts ├── slides.md ├── spring-boot-testing.pdf ├── spring-security.excalidraw └── styles │ ├── index.ts │ └── style.css └── src ├── main ├── java │ └── wf │ │ └── garnier │ │ └── spring │ │ └── security │ │ └── thegoodparts │ │ ├── DanielAuthenticationProvider.java │ │ ├── ForbiddenFilter.java │ │ ├── GreetingsController.java │ │ ├── RobotAccountConfigurer.java │ │ ├── RobotAuthenticationFilter.java │ │ ├── RobotAuthenticationProvider.java │ │ ├── RobotAuthenticationToken.java │ │ ├── SecurityConfig.java │ │ └── TheGoodPartsApplication.java └── resources │ ├── application.yml │ ├── static │ ├── css │ │ └── style.css │ └── favicon.svg │ └── templates │ ├── private.html │ └── public.html └── test └── java └── wf └── garnier └── spring └── security └── thegoodparts ├── AuthenticationProviderTests.java ├── EventsTests.java ├── ForbiddenFilterTests.java └── RobotAuthenticationTests.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/.gitignore -------------------------------------------------------------------------------- /HELP.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/HELP.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/README.md -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/settings.gradle.kts -------------------------------------------------------------------------------- /slides/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | *.pdf 3 | -------------------------------------------------------------------------------- /slides/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/package-lock.json -------------------------------------------------------------------------------- /slides/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/package.json -------------------------------------------------------------------------------- /slides/public/authentication-manager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/authentication-manager.png -------------------------------------------------------------------------------- /slides/public/csrf-exploit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/csrf-exploit.png -------------------------------------------------------------------------------- /slides/public/csrf-protection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/csrf-protection.png -------------------------------------------------------------------------------- /slides/public/daniel-intro.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/daniel-intro.jpg -------------------------------------------------------------------------------- /slides/public/daniel-intro.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/daniel-intro.webp -------------------------------------------------------------------------------- /slides/public/filter-chain-call-stack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/filter-chain-call-stack.png -------------------------------------------------------------------------------- /slides/public/filter-chain-oop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/filter-chain-oop.png -------------------------------------------------------------------------------- /slides/public/filterchain-callstack-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/filterchain-callstack-2.jpg -------------------------------------------------------------------------------- /slides/public/meet-me.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/meet-me.jpg -------------------------------------------------------------------------------- /slides/public/provider-manager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/provider-manager.png -------------------------------------------------------------------------------- /slides/public/qr-code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/qr-code.png -------------------------------------------------------------------------------- /slides/public/security-context.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/security-context.png -------------------------------------------------------------------------------- /slides/public/security-filter-chain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/public/security-filter-chain.png -------------------------------------------------------------------------------- /slides/setup/shiki.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/setup/shiki.ts -------------------------------------------------------------------------------- /slides/slides.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/slides.md -------------------------------------------------------------------------------- /slides/spring-boot-testing.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/spring-boot-testing.pdf -------------------------------------------------------------------------------- /slides/spring-security.excalidraw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/spring-security.excalidraw -------------------------------------------------------------------------------- /slides/styles/index.ts: -------------------------------------------------------------------------------- 1 | import "./style.css" 2 | -------------------------------------------------------------------------------- /slides/styles/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/slides/styles/style.css -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/DanielAuthenticationProvider.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/DanielAuthenticationProvider.java -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/ForbiddenFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/ForbiddenFilter.java -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/GreetingsController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/GreetingsController.java -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/RobotAccountConfigurer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/RobotAccountConfigurer.java -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/RobotAuthenticationFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/RobotAuthenticationFilter.java -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/RobotAuthenticationProvider.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/RobotAuthenticationProvider.java -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/RobotAuthenticationToken.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/RobotAuthenticationToken.java -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/SecurityConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/SecurityConfig.java -------------------------------------------------------------------------------- /src/main/java/wf/garnier/spring/security/thegoodparts/TheGoodPartsApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/java/wf/garnier/spring/security/thegoodparts/TheGoodPartsApplication.java -------------------------------------------------------------------------------- /src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/resources/application.yml -------------------------------------------------------------------------------- /src/main/resources/static/css/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/resources/static/css/style.css -------------------------------------------------------------------------------- /src/main/resources/static/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/resources/static/favicon.svg -------------------------------------------------------------------------------- /src/main/resources/templates/private.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/resources/templates/private.html -------------------------------------------------------------------------------- /src/main/resources/templates/public.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/main/resources/templates/public.html -------------------------------------------------------------------------------- /src/test/java/wf/garnier/spring/security/thegoodparts/AuthenticationProviderTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/test/java/wf/garnier/spring/security/thegoodparts/AuthenticationProviderTests.java -------------------------------------------------------------------------------- /src/test/java/wf/garnier/spring/security/thegoodparts/EventsTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/test/java/wf/garnier/spring/security/thegoodparts/EventsTests.java -------------------------------------------------------------------------------- /src/test/java/wf/garnier/spring/security/thegoodparts/ForbiddenFilterTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/test/java/wf/garnier/spring/security/thegoodparts/ForbiddenFilterTests.java -------------------------------------------------------------------------------- /src/test/java/wf/garnier/spring/security/thegoodparts/RobotAuthenticationTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kehrlann/spring-security-the-good-parts/HEAD/src/test/java/wf/garnier/spring/security/thegoodparts/RobotAuthenticationTests.java --------------------------------------------------------------------------------