Spring Security Architecture Principles by Daniel Garnier-Moiroux @ Spring I/O 2024

Поделиться
HTML-код
  • Опубликовано: 4 фев 2025

Комментарии • 48

  • @jesprotech
    @jesprotech 8 месяцев назад +21

    This session is great because it simplifies and condenses the core of Spring Security in one short session. Love it! Great session!

  • @johnsandwich6726
    @johnsandwich6726 8 месяцев назад +12

    it is a very interesting presentation of the material, you do not fall asleep in the first minute of the story. That's how the presentation should be! thank you

  • @ShubhamYadav-lt6dt
    @ShubhamYadav-lt6dt 7 месяцев назад +9

    This session is fantastic! It simplifies and condenses the essence of Spring Security into one brief session. Love it!

  • @TechTalksWeekly
    @TechTalksWeekly 8 месяцев назад +7

    This is a great talk and it's been featured in the last issue of Tech Talks Weekly newsletter 🎉
    Congrats Daniel! 👏

  • @AntJac-p5s
    @AntJac-p5s 6 месяцев назад +2

    excellent explanation. been struggling to really get it and this just made it so accessible. the info just passed all my brain's filters and is all sending back 200's! ;)

  • @robertwhite3503
    @robertwhite3503 23 дня назад

    The Spring documentation needs this presentation, or code example, as an example of how to implement Spring Security.

  • @knight5970
    @knight5970 6 месяцев назад +5

    the best thing about this session is that i learned spring security and Spanish both in best way

  • @huythong3821
    @huythong3821 8 месяцев назад +3

    the most interesting presentation that I have seen.

  • @deolexx
    @deolexx 7 месяцев назад +4

    Really nice security essentials lecture

  • @chrizzking
    @chrizzking 7 месяцев назад +3

    Great for learning! Thx for sharing

  • @aminesafi7261
    @aminesafi7261 8 месяцев назад +7

    You oversimplified things, many thanks

  • @Ztall0880
    @Ztall0880 8 месяцев назад +2

    great session. Thanks.

  • @kwo2002
    @kwo2002 4 месяца назад +2

    very useful video!!

  • @momedalhouma14
    @momedalhouma14 8 месяцев назад +3

    to the point, thank you.

  • @devaneios_tech
    @devaneios_tech 3 месяца назад +3

    He makes it look like so simple, why the documentation is so complicated :?

    • @devaneios_tech
      @devaneios_tech 3 месяца назад +2

      And the logging-level is a fucking million dol tip

  • @djoleezcool
    @djoleezcool 8 месяцев назад +3

    13:16 a question. If we are using Client Credentials flow, should we put the same filter or ti will be something like BearerTokenAuthenticationFilter?

  • @theritesh973
    @theritesh973 7 месяцев назад +3

    Nice Talk👏

  • @mateuszmatusiak8901
    @mateuszmatusiak8901 2 месяца назад +2

    Super

  • @shortcuter4
    @shortcuter4 Месяц назад +1

    Can anyone explain?
    At 11:38
    When creating ProhibitoFilter, why didn't he include any annotations or beans above class or methods? Like @Configuration or @Bean

    • @DanielGarnier-Moiroux
      @DanielGarnier-Moiroux Месяц назад

      Because it is used in exactly one place, in my SecurityFilterChain bean, it doesn’t need to be available to my whole app.
      Exposing security filters through @Bean or @Component may have unintended consequences, so I prefer explicitly new-ing them.

    • @vhh1992
      @vhh1992 22 дня назад

      He's directly instantiating it with new when adding the filter, so there's no need to create a bean of it

  • @donothack
    @donothack 3 месяца назад

    is @Configuration annotation still needed in the SecurityConfig class when @EnableWebSecurity already has @Configuration in it? At around 6:38 in the video.
    Edit: it's needed.

    • @shortcuter4
      @shortcuter4 Месяц назад

      What about 11:38 ?
      When creating ProhibitoFilter, why didn't he include any annotations or beans above class or methods?

    • @thatguyadarsh
      @thatguyadarsh Месяц назад

      @@shortcuter4 it is not required because the filter is getting registered in the security filter chain by explicitly mentioning it in the configuration class. We don't need to depend on the component scanning to make the filter visible to spring. I hope this helps!

  • @alzamer88
    @alzamer88 7 месяцев назад +2

    at 27:47 he said to pretend that there is no existing solution and built a custom one. so, is there any existing solution?

    • @DanielGarnier-Moiroux
      @DanielGarnier-Moiroux 5 месяцев назад +1

      Yes, there are many solutions. For example, you can do mutual TLS (mTLS), where the client presents a certificate when making requests. Or if you're doing oauth, you can use the client_credentials grant. You could even imagine something like HTTP-basic auth.

  • @ilkou
    @ilkou 8 месяцев назад +3

    my best part is how fast the project is recompiled and can be tested on the browser, vite but for backend dev haha
    I wonder if it recompiles as fast when the project is massive 🤔

    • @DanielGarnier-Moiroux
      @DanielGarnier-Moiroux 8 месяцев назад +5

      A combination of "Spring Boot Devtools" which does hot reload when compiled classes change, and "gradle assemble --continuous" which watches for file changes and incrementally rebuilds the project.
      ⚡⚡⚡

  • @xdeama
    @xdeama 7 месяцев назад +5

    I don’t get why people hate Spring Security. Whenever I learn a new language, I wish it had something close to Spring Security.

    • @t0khyo
      @t0khyo 4 месяца назад

      I’ve tried to understand this for the fourth time, and I find many tutorials unhelpful. Most just show someone writing code without explaining why or what else I can do. I end up copying the code like a kid copying homework, without grasping the concepts.

    • @t0khyo
      @t0khyo 4 месяца назад

      after this video I know understand the code I copied thousands of times hh

    • @chauchau0825
      @chauchau0825 20 дней назад

      Most people dont't want to invest time learning anything "looks" complicated. It took me days of reading, studying, playing around, and putting things together randomly & hope it work to understand it over a decade ago. People nowadays are very luckyto have this guy giving a simple & clear overview of the architecture

  • @scwan-ew8uh
    @scwan-ew8uh 7 месяцев назад +3

    Great

  • @angloper
    @angloper 6 месяцев назад +2

    what a nice

  • @maneshipocrates
    @maneshipocrates 8 месяцев назад +3

    Not perfectly easy but good talk

  • @davidtheprogrammer
    @davidtheprogrammer 8 месяцев назад +2

    It's simple if you get it and it's not if you don't. This security model is really not beginner friendly. These are a lot of concepts

  • @scalar3513
    @scalar3513 2 месяца назад

    4:58 begin from here and don't waste your time

  • @marcux83
    @marcux83 8 месяцев назад +2

    spring security configuration.. shudder

  • @tashi7160
    @tashi7160 8 месяцев назад +14

    the whole thing is kinda overcomplicated and keep carrying the decades old baggages.

    • @angelgruevski
      @angelgruevski 8 месяцев назад +9

      Not really. Once you learn it you realize how much Spring does things for you and makes Security easy.

    • @abccbaandy
      @abccbaandy 8 месяцев назад

      Agree, it's easy to break things. Most people just pick a class randomly to do their job.

  • @samuelvishesh
    @samuelvishesh 7 месяцев назад +4

    What about the Reactive web stack? We don’t have a “filter” there right?

    • @DanielGarnier-Moiroux
      @DanielGarnier-Moiroux 7 месяцев назад +4

      There are filters, but the interface is called WebFilter ; they have a "Mono filter(ServerWebExchange exchange, WebFilterChain chain)" method. The exchange encapsulates both the request and the response objects.

    • @samuelvishesh
      @samuelvishesh 7 месяцев назад +1

      @@DanielGarnier-Moiroux thank you for the head start. I’ll look into WebFilters