Spring boot 3.0 - Secure your API with JWT Token [2023]

Поділитися
Вставка
  • Опубліковано 8 лип 2024
  • Buy me a coffee: ko-fi.com/boualiali #spring #learning #springboot #springtutorial #springsecurity #developpement #java #arraylist #linkedlist #springdatajpa #querybuilder #aliboucoding #alibou #validation
    Are you looking to secure your Spring Boot applications and keep them safe from unauthorized access? Look no further! this tutorial is the perfect solution for you.
    In this course, you'll learn everything you need to know about using Spring Security and JSON Web Tokens (JWT) to secure your applications. We'll start by teaching you the basics of Spring Security and how it can be used to authenticate and authorize users in your application. From there, you'll learn how to implement JWT to provide a secure, stateless method of authentication.
    👉🏻 Source code: github.com/ali-bouali/spring-...
    Don't Forget to
    ===========================================
    💯 Free courses here: aliboucoding.com
    💯 Subscribe to the youtube channel
    💯 Join our Discord Community - / discord
    💯 Join our Facebook Group - / 589612651142975
    💯 Join our Instagram: / alibou_coding
    Table of content
    00:00 Intro
    01:55 How JWT security works
    07:26Create a new spring boot 3.0 project
    09:28 Add Data source
    12:28 Connect to the database
    17:12 Create user class
    20:05 Transform the User to an entity
    25:22 Extend the user to UserDeatils object
    33:32 Create the user repository
    35:50 Create the JWT authentication filter
    40:58 Checking the JWT token
    44:32 Create the JWT service
    47:56 Add the JJWT dependencies
    49:59 What is a JWT token
    53:06 Extract claims from JWT
    55:23 Implement the getSignInKey method
    01:00:07 Extract a single claim from JWT
    01:01:51 Extract the username from the token
    01:02:52 Generate the JWT token
    01:08:15 Check if the token is valid
    01:11:22 Check the user existence in the database (JwtAuthFilter)
    01:15:13 Implement the UserDetailsService
    01:19:38 Update the SecurityContextHolder and finalise the filter
    01:23:53 Add the security configuration
    01:32:51 Create the authentication provider bean
    01:36:41 Create the authentication manager bean
    01:38:14 Create the authentication controller
    01:40:55 Create the authentication response class
    01:41:47 Create the register request object
    01:42:50 Create the authentication request class
    01:43:22 Create the authentication service
    01:45:37 Implement the register method
    01:49:28 Implement the authenticate method
    01:52:17 Update the security configuration whitelist
    01:53:35 Create a demo controller
    01:54:55 Test the changes

КОМЕНТАРІ • 766

  • @BoualiAli
    @BoualiAli  11 місяців тому +3

    Join the Micro Services course waiting list and get and get an exclusive *EARLY-BIRD discount*
    aliboucoding.ck.page/d0f9317e13

  • @kenkaneki669
    @kenkaneki669 Рік тому +50

    You have no idea how much you have helped me. Due to other tutorials being backdated, I just couldn't find a proper step by step procedure on how to implement jwt in spring boot. You saved my university major project. I wish you lifetime of happiness and health.

    • @BoualiAli
      @BoualiAli  Рік тому +9

      Really happy you liked it

    • @aeroabrar_31
      @aeroabrar_31 9 місяців тому

      @@BoualiAli A small error check : the token will get expired in only 24 minutes not 24 hours. Apart from that everything is crystal clear.

  • @boomkablamo
    @boomkablamo Рік тому +2

    I want to give you a huge thank you. I've been struggling with this for days due to other tutorials being outdated. You really saved the day.

  • @tay_fay
    @tay_fay 7 місяців тому

    Many thanks! Your tutorials are absolutely fantastic. Pure gold! The content, your delivery and the speed - everything is just perfect. Sending loads of love your way!

    • @BoualiAli
      @BoualiAli  7 місяців тому

      Glad you like them!

  • @ibrahimabdellatif186
    @ibrahimabdellatif186 3 місяці тому

    جزاك الله خير
    It's amazing content

  • @Samuelfanu
    @Samuelfanu Рік тому +2

    Thank you so much for this fantastic Spring Security video! It was incredibly helpful and provided me with valuable insights. I really appreciate the clear explanations and the practical examples demonstrated throughout the tutorial. Your expertise and teaching style made it easy for me to grasp the concepts.

  • @phanimc11211
    @phanimc11211 10 місяців тому

    Thank you so much for this fantastic Spring Security video!

    • @BoualiAli
      @BoualiAli  10 місяців тому

      Glad you enjoyed it!

  • @anirudh514
    @anirudh514 4 місяці тому

    Thank you so much, very well explained! Very useful!!

  • @alvinimbuka8283
    @alvinimbuka8283 Рік тому +6

    Very awesome tutorial, great explanations on the concepts, easy to follow along. I have really learned alot Ali. Looking forward to learn more courses on Springboot and Java.

    • @BoualiAli
      @BoualiAli  Рік тому +1

      Thank you so much for your feedback 🙏

  • @grozageorge2887
    @grozageorge2887 Рік тому

    Perfect! This is the most well explained tutorial I have seen and I have seen many regarding the discussed subject.

  • @michelvandeweetering4450
    @michelvandeweetering4450 Рік тому

    Wonderful ! thanks for the effort and clear tutorial!

  • @raoufzouaoui6931
    @raoufzouaoui6931 Рік тому

    Great work and content! Thank you very much for this.

  • @joypedze2320
    @joypedze2320 Рік тому +4

    I just finished this tutorial and trust me, if you want to learn about Spring Security using JWT, this is the way. Thanks @Bouli Ali for such awesome content

    • @BoualiAli
      @BoualiAli  Рік тому +1

      I really appreciate your great and honest feedback.
      This keeps me motivated to provide more and better content

  • @devynlab
    @devynlab Рік тому

    Loving this. Great start as I migrate to Spring Boot 3. Thanks man 🔥.

  • @priya-bp5ch
    @priya-bp5ch 19 днів тому

    Your tutorials are really helpful for me as a beginner. Thanks a lot!!!
    Your way of teaching is really nice and I feel if you show an implementation video at the start of the tutorial we can easily understand what we are going to build
    Again, thanks a ton!!!!

  • @merxxibeaucoup9093
    @merxxibeaucoup9093 Рік тому

    Thank you very much for this. this was great. you have gained a subscriber forever!

    • @BoualiAli
      @BoualiAli  Рік тому

      So happy and proud to have you here

  • @GloomDev
    @GloomDev Рік тому

    Gold. 👍
    Thank you.

    • @BoualiAli
      @BoualiAli  Рік тому +1

      Happy you liked it!
      Thank you too!

  • @eddykokokenfack1362
    @eddykokokenfack1362 Рік тому

    Amazing course, i get all workflow about jwt spring security, how to extractAllClaims, single claims, how to use JWTAuthenticationFilter and more. Thanks for this update spring security jwt and hope you take care of you!! Great time!!

  • @Samuel-ow5jx
    @Samuel-ow5jx Місяць тому

    Thank you Ali!

  • @supun_sandaruwan
    @supun_sandaruwan Рік тому

    this is the video perfectly understand the spring security for me. Thank you so much @Bouali Ali

  • @paulnzioki8782
    @paulnzioki8782 Рік тому

    Amazing content. Thank you for your good work to enable us acquire skills.

    • @BoualiAli
      @BoualiAli  Рік тому

      really happy I helped you learn

  • @user-br7ip7xe7j
    @user-br7ip7xe7j Рік тому

    Absolutely great tutorial!

  • @laminefaty9340
    @laminefaty9340 Рік тому

    Intéressant ! mister bouali ...

  • @userjred2866
    @userjred2866 Рік тому

    Thanks a lot man, your explanations are the best! Subscribed! I will see the refresh token vid now :)

    • @BoualiAli
      @BoualiAli  Рік тому

      Thank you 🙏. Check the spring security playlist for more videos

  • @juanpablo-mu6wq
    @juanpablo-mu6wq Рік тому

    What a great video! you have gained a subscriber forever!

  • @777MALexa
    @777MALexa Рік тому

    thank you for this video!

  • @indranilgoswami1500
    @indranilgoswami1500 Рік тому

    Great Video Bouali ! I have learned many things. Subscribed your channel also . Thanks a lot !

  • @MrZeroinside
    @MrZeroinside Рік тому +3

    Great video man, I have recently started learning Springboot and there wasn't many content for 3.0 out there, was exactly looking for this, the way you explained everything was very well done and understable, Thanks and Keep it up!

    • @BoualiAli
      @BoualiAli  Рік тому

      Thank you for the great feedback.

    • @user-wh3lx1hz8d
      @user-wh3lx1hz8d Рік тому

      I had the same issue and it turns out I had left User's isEnabled() to false, when it should be true.

  • @lurodev
    @lurodev 11 місяців тому

    This is just what I needed, great explanation and the most important, it works!!! , Thanks and greetings from Colombia.

    • @BoualiAli
      @BoualiAli  11 місяців тому

      Great to hear!
      Greetings from 🇹🇳

  • @phanimc11211
    @phanimc11211 10 місяців тому

    Very awesome tutorial, great explanations on the concepts, easy to follow along

    • @BoualiAli
      @BoualiAli  10 місяців тому

      Glad you liked it!

  • @theold_new1631
    @theold_new1631 3 місяці тому

    Thank you from South Korea!

    • @guratete
      @guratete 2 місяці тому

      how is the job Market in Seoul for Java Devs, I am in China and looking for new opportunities in other countries

  • @sardorbekyorqulov
    @sardorbekyorqulov 5 місяців тому

    Thank you so much bro ! Best tutorial I've ever seen.

    • @BoualiAli
      @BoualiAli  2 місяці тому

      Glad you think so!

  • @ahmedelamri5942
    @ahmedelamri5942 Рік тому +1

    Great Video, you saved my life on a bug that I've been searching for so long since I migrated to spring 3.0, Keep it up! from Tunisia

    • @BoualiAli
      @BoualiAli  Рік тому +1

      My pleasure bro
      I like Tunisian people 🇹🇳

  • @ramadaniotfi3537
    @ramadaniotfi3537 Рік тому

    Good job ,and i realy appreciate you so much .

  • @poragjyoti4190
    @poragjyoti4190 Рік тому

    This video made all my doubts clear. Thank you so much.

  • @BKEuphony
    @BKEuphony Рік тому

    Too good. Awesome.

  • @basalat1131
    @basalat1131 Рік тому

    this tutorial is very helpful. thanks a million

  • @explorer9240
    @explorer9240 Місяць тому

    love the way u teach (:

  • @alexkouasseu6396
    @alexkouasseu6396 Рік тому

    Great Job Ali,
    thans is the best Tutorial I ever see.
    I like and Subscribe right now.

    • @BoualiAli
      @BoualiAli  Рік тому

      More thank happy to have here

  • @ivandvoinenko5449
    @ivandvoinenko5449 Рік тому +3

    Hello, it was a great step-by-step tutorial. The things that weren't clear to me became clear after I watched this video for the second time. The only moment (just statistical) - the token expiry date wasn't 24h from the moment of creation. 1000 ms -> 1s; 60 * 1000 -> 1m; 60 * 60 * 1000 -> 1h. So adjustment should be settled to 24 * 60 * 60 * 1000. Your token expiry date is 24 m.

    • @BoualiAli
      @BoualiAli  Рік тому +1

      True, but just for the sake of the tutorial I removed the *24 to have short living token.
      Sorry for the confusion

  • @swipped99
    @swipped99 Місяць тому +2

    It is astonishing with what fast pace spring boot is moving forwards. Alot of the methods shown here are already deprecated and marked for removal.

  • @TiagoSilva-ge5cp
    @TiagoSilva-ge5cp Рік тому

    Great explanation !! Thank you very much, u're awesome

  • @jovaniecabatuan6364
    @jovaniecabatuan6364 Рік тому

    OMG this is the most awesome tutorial I've ever watched

    • @BoualiAli
      @BoualiAli  Рік тому

      Thank youuuuuu. Happy to know that

  • @laylaelaam9507
    @laylaelaam9507 День тому

    thank uuuu so much !!!

  • @furitoraUfc
    @furitoraUfc 6 місяців тому

    Great Video, thanks a lot

    • @BoualiAli
      @BoualiAli  6 місяців тому

      Glad you liked it!

  • @7sudo
    @7sudo Рік тому

    thank you khouya, merci beaucoup pour ton effort.

  • @JamesMiller-xs8zz
    @JamesMiller-xs8zz 9 місяців тому

    Thank you very much. you save me and my university project. Subscribed

    • @BoualiAli
      @BoualiAli  9 місяців тому

      Glad I could help!

  • @web3made
    @web3made 3 місяці тому

    awesome tutorial!

    • @BoualiAli
      @BoualiAli  3 місяці тому

      Glad you liked it!

  • @mohamednibras53
    @mohamednibras53 Рік тому

    Excellent tutorial

  • @Ezzedini
    @Ezzedini Рік тому +1

    great content, I'll be finishing the one on amigos code cause I'm still using spring 2.7, I'll book this video once I upgrade!

  • @hafedhbaazouzi3617
    @hafedhbaazouzi3617 Рік тому

    thanks for your efforts

  • @ablayefaye7157
    @ablayefaye7157 Рік тому

    great!

  • @HamzaAlAzhar
    @HamzaAlAzhar 2 місяці тому

    I just discovered your channel, what a great content, Allah y3tik lkhir

    • @BoualiAli
      @BoualiAli  2 місяці тому +1

      Thank you so much 😊

  • @oOalex74Oo
    @oOalex74Oo 10 місяців тому

    Amazing course, I learned so much! It is even more amazing the code you gave on github, however I wish I could have some explanations on all the additional stuff there is in the repo

    • @BoualiAli
      @BoualiAli  9 місяців тому

      Happy you liked it!
      Just follow the playlist order and you will get each line of the code

  • @muniapriyansu8805
    @muniapriyansu8805 Рік тому

    I was struggling to learn this, thank you so much for this video. It helped a lot

    • @BoualiAli
      @BoualiAli  Рік тому

      I’m happy to help

    • @muniapriyansu8805
      @muniapriyansu8805 Рік тому

      @@BoualiAli what changes to make in order to specifically allow USERS to one endpoint? .hasRole("USER") doesnt work SecurityConfiguration

    • @BoualiAli
      @BoualiAli  Рік тому +1

      @@muniapriyansu8805 you need to add the annotation @enableglobalsecuritymethod on the security config class and the @preuathorize will work like a charm
      I have another spring security in the same playlist that explains authorization and how it works

  • @josue10hd
    @josue10hd 9 місяців тому

    muchas gracias por la explicación y por compartir el repositorio 🤓

  • @loqol5874
    @loqol5874 2 місяці тому

    thank you very much for the information and excellent explanation

    • @BoualiAli
      @BoualiAli  2 місяці тому

      Glad it was helpful!

  • @odilhonislomov8954
    @odilhonislomov8954 9 місяців тому

    Thank you 🎉

    • @BoualiAli
      @BoualiAli  9 місяців тому

      You’re welcome 😊

  • @achrefgassoumi4478
    @achrefgassoumi4478 Рік тому

    Good job aloulou ;)

  • @mohammedjoubba318
    @mohammedjoubba318 Рік тому

    thank you so much for the course, it is very helpful. I hope you could make a continuation video implementing the APIs in Angular. I 'm really stuck right now

    • @BoualiAli
      @BoualiAli  Рік тому +1

      Happy you liked it
      I'm already preparing a video for that

  • @dalikrimi2277
    @dalikrimi2277 Рік тому

    Great video Bro keep going 😀😀😍

  • @ahouzimohamed6387
    @ahouzimohamed6387 Рік тому

    Thank you for your efforts, your brother from morocco..
    Keep it up 🙂

  • @mahmoudotri6103
    @mahmoudotri6103 2 місяці тому

    baraka al Allahu fik. Keep up the good work!

    • @BoualiAli
      @BoualiAli  2 місяці тому +1

      my pleasure
      Check the new one, it is more updated with no deprecations

    • @mahmoudotri6103
      @mahmoudotri6103 2 місяці тому

      @@BoualiAli Awesome! may you share the link for it?

    • @BoualiAli
      @BoualiAli  2 місяці тому

      @@mahmoudotri6103 check the videos and you will notice it. It is a recent upload

  • @praveens2272
    @praveens2272 Рік тому +1

    I am subscribed

  • @andriikorniienko
    @andriikorniienko 25 днів тому

    that's perfect, please keep on keeping on!! could you please tell how you learned it and how you would recommend people learn it?? imho documentation usually gives the "What" about everything in it, not "Why"

  • @liberaamoremio
    @liberaamoremio 6 місяців тому +4

    Thank you so much, I followed this guide and everything works great. I have a question though. In the isTokenValid method of JwtService we check if the username(email) from the parameter userDetails is equal to the username found in the token. However the parameter userDetails is always aquired from the username found in the token (e.g. in AuthenticationService or in JwtAuthenticationFilter). So the way I see it we extract the username from the token and then check if the extracted username is equal to the username found in the token. Wont that always be true?

  • @fahrican9708
    @fahrican9708 9 місяців тому

    really great video!!!! thanks!!! I would adapt the title just put (registration & login) because UA-cam does not show your video, when searching for spring boot registration & login

    • @BoualiAli
      @BoualiAli  7 місяців тому

      Thanks for the tip!

  • @kunamanenisaikrishnakunama6990
    @kunamanenisaikrishnakunama6990 9 місяців тому

    ❤️👏👏

  • @eugenheise846
    @eugenheise846 Рік тому +2

    Hi Ali, if possible, could you show the imports of the class briefly after you finish with a class, for comparison next time? Thank you!

    • @BoualiAli
      @BoualiAli  Рік тому +1

      Check the code on Github

  • @BoualiAli
    @BoualiAli  11 місяців тому

    COUPON Code: *EARLYBIRD20* => Spring Data J PA course: aliboucoding.com/p/the-full-guide-to-master-spring-boot-data-jpa

  • @mokamaher1024
    @mokamaher1024 4 місяці тому

    thx

  • @vageeshanvageesh5583
    @vageeshanvageesh5583 Рік тому +2

    Great content, thank you. can you please provide a tutorial in Oauth2 implementation in spring boot 3 (Authorisation server + Resource server) using JWT?

  • @zqgAFf
    @zqgAFf Рік тому

    Thank you very much for explaining to us how jwt works under the springboot 3 to do whole authentication part , would you give a follow-up with the role based version in the next comming up videos?😁

    • @BoualiAli
      @BoualiAli  Рік тому

      Sure thing!

    • @zqgAFf
      @zqgAFf Рік тому

      @@BoualiAli thank u so much, after watching your old 2.0 role based version and your comment down below I assume using EnableMethodSecurity as well as preAuthorize can do this . But for controlling the role to limit on CRUD or refresh token I have no clue

  • @manospat1066
    @manospat1066 Місяць тому

    Great! One question, you take the jwt of the authenticate(log-in) to send the Demo Controller request. If I use jwt I got from Register, it is the same ? In simple words, if I want log-in directly after the register (and not log in again), is there any extra step I need to do? (for example set SecurityContextHolder). I guess both in log-in and Register the SecurityContextHolder must be set ! Thanks !

  • @lucasfkam
    @lucasfkam 11 місяців тому +2

    For the Spring Security package to be complete on your channel, could you please make a video explaining how to configure CORS using Spring Security? For example, as routes from other origins that need authentication with the head "Authorization" in the request, I would be very grateful

    • @BoualiAli
      @BoualiAli  11 місяців тому +3

      Coming soon 😁

  • @Zentex2307
    @Zentex2307 Рік тому

    Hi! Great Tutorial! One of the best I ever seen. I have only one problem, I can still add more users with the same email. You don't check this in tutorial too.

    • @BoualiAli
      @BoualiAli  Рік тому +1

      Thanks for the comment.
      Yes duplicated users are not prevented. Add @Column(unique=true) on the email field and it will fix it

  • @Yangslehollandais
    @Yangslehollandais Рік тому

    🥳🥳🥳

  • @hackpiece3094
    @hackpiece3094 7 місяців тому

    This is soooooo long ! Thank you for doing everything step by step but its my request please bring a Course on Spring Security where you can explain things on a slow pace. That would help us get more clarity.

  • @djoleezcool
    @djoleezcool Рік тому

    Thanks for the video, it's so useful!
    What setting you are using for your Intellij, looks good :)

    • @BoualiAli
      @BoualiAli  Рік тому

      Thanks for the feedback
      It is the new ui from the latest version of intellij

  • @krige
    @krige Рік тому +2

    16:50 You don’t need to specify the driver-class-name since Spring Boot can deduce it for most databases from the url. See Spring Boot 3.0 Data docs.

    • @BoualiAli
      @BoualiAli  Рік тому +2

      True, but if I don’t specify it people will ask about and I forgot to mention that in the video.
      Good comment 👍

  • @vijayank923
    @vijayank923 Рік тому

    Awesome, I love your explanation. Can you make video on Spring boot 3.0 - Webflux with JWT Token

    • @BoualiAli
      @BoualiAli  Рік тому

      I will take note of that.
      I’m preparing a new video that you’re gonna love absolutely

    • @vijayank923
      @vijayank923 Рік тому

      @@BoualiAli I’m waiting

  • @husseinali1199
    @husseinali1199 Рік тому

    thank you for your tutorial i hope you do tutoril for spring boot microsrvice securty JWT

    • @BoualiAli
      @BoualiAli  Рік тому

      I’m preparing something already

  • @_U_will_always_shine
    @_U_will_always_shine 11 місяців тому

    Randomly found this channel. Wonderfully explained. Thanks a lot. Just a request, could you paste that key generator url in the description?

    • @BoualiAli
      @BoualiAli  11 місяців тому

      You can check the code in my github account (link in the description)

  • @emometalpunk
    @emometalpunk Рік тому

    Thank you for your awesome tutorial! I learn a lot from your video. Let's say if we had multiple microservices and Spring Cloud Gateway routing to process requests to those (downstream) services. I was wondering if you could let me know how we can apply the jwt from your video (user microservice) to other microservices as a global one.
    Thank you once again for your time and consideration!

    • @BoualiAli
      @BoualiAli  Рік тому +1

      It works the same way.
      Just implement it on the api gateway level

    • @BoualiAli
      @BoualiAli  Рік тому +1

      Really happy to have you here

  • @akadeadahot7067
    @akadeadahot7067 2 місяці тому

    Hello sir i saw video tutorial n these are awesome like each n every topic will convered in videos. One request from my side for desktop native application using electron js with angular in details project like books library project i possible please consider it in your upcoming playlist because no one is on you tube who is doing electron js tutorial.

    • @BoualiAli
      @BoualiAli  2 місяці тому

      I will try my best

  • @ikaaika3155
    @ikaaika3155 9 місяців тому

    Hey, @BoualiAli awesome tutorial and content on the channel at all :D
    You are doing a great job. :)
    I have one question. How can this code be improved, what can I do additionally to secure my app better?

  • @AshishRohillax
    @AshishRohillax Рік тому +1

    Thank you very much for the quality content Ali. Just a small query, how can we make sure the /register endpoint isn't open to everyone. I mean there should be a mechanism to let only specific people register and access my api who know something (may be a secret key).

    • @BoualiAli
      @BoualiAli  Рік тому

      Thanks for the feedback.
      In this case, you can restrict access to your app/api via the network (ingress) and you allow specific white list ip adresses (aws security groups with vpc / ec2 for example)

  • @samymohsen505
    @samymohsen505 6 місяців тому

    I can't really express how you are amazing Mr. Bouali. The explanation is clear and straight to the point.
    I wanted to ask you if there is a way to not to hit the database for each request as this will be overhead for it. can we make it in the register & authenticate part only?

    • @BoualiAli
      @BoualiAli  6 місяців тому +1

      You can implement caching

    • @samymohsen505
      @samymohsen505 6 місяців тому

      can you please recommend me a good way for In memory caching? or any other way that make me avoid using things like Redis aka other database with its own server?@@BoualiAli

  • @user-xf4ht5uc1p
    @user-xf4ht5uc1p 4 місяці тому

    From JavaDocs - method parseClaimsJws() throws some Exceptions (ExpiredJwtException, UnsupportedJwtException, MalformedJwtException, SignatureException...). Can we catch those instead of creating methods like isTokenExpired() etc...?

  • @enochoghene269
    @enochoghene269 Рік тому

    Nice content boss, it was really helpful.
    I've fallen in love with your IDE, is it an intelliJ theme or a newer version of intelliJ.
    I really do need it

    • @BoualiAli
      @BoualiAli  Рік тому

      Thank you for the feedback.
      It’s the new Intellij design from the latest version

    • @HappyBibi93
      @HappyBibi93 Рік тому

      @@BoualiAli Yes, i use the new version. But which theme is it? 🙂

  • @pip3936
    @pip3936 Рік тому

    Can you please make a tutorial about authentication and authorization exception handling. Like where to throw exceptions if invalid credentials were prompted or JWT related exception 🙏

    • @BoualiAli
      @BoualiAli  Рік тому

      Check the exception handling video. You have the answer there

  • @hemanthkumarallam3894
    @hemanthkumarallam3894 3 дні тому

    Hi, I have implemented your project for me for all the api in Auth Controller I am getting 403 error.

  • @baptisteprieur232
    @baptisteprieur232 11 місяців тому

    Thank you for your great explanation. I watched this video many times, it 's very clear. Can we have the sources of your project ?

    • @BoualiAli
      @BoualiAli  11 місяців тому

      Hello,
      The repo is in the description of the video

  • @user-ql7nh6zp5g
    @user-ql7nh6zp5g Рік тому

    Hi Ali, thanks for these awesome tutorials! I have a question, how I can exclude some packages o urls from the authentication, something like /health, /docs, etc. I have trying to override the method shouldNotFilter but not work for me

    • @BoualiAli
      @BoualiAli  Рік тому +1

      Add these urls to the .permitAll()
      Check the openapi video (same playlist) and you will see the exact code you’re looking for

  • @ramym.moustafa2507
    @ramym.moustafa2507 10 місяців тому

    When I add "private final JwtService jwtService;" Could not autowire. No beans of 'JwtService' type found.

    • @BoualiAli
      @BoualiAli  10 місяців тому

      Don’t forget the @service

  • @jayjoshi1366
    @jayjoshi1366 6 місяців тому

    I'm unable to load the allkeysgenerator webpage with the exact same address. Anyone knows what issue could be? I'm getting resource cannot be found error.

  • @sinandemir415
    @sinandemir415 Рік тому

    Firstly thanks for this video. Could you explain how to set token expiration time and refresh token expiration time. Thanks again. Greetings from Turkey 🇹🇷

    • @BoualiAli
      @BoualiAli  Рік тому

      I will create a new video about refresh token asap.
      Greetings

  • @yassine7619
    @yassine7619 Рік тому

    thank you for the video. Do you have a video about CSRF ?

    • @BoualiAli
      @BoualiAli  Рік тому +1

      I will take note of that and make one soon enough

  • @alexakos1992
    @alexakos1992 Місяць тому

    Thank you very much for the content! Can you write for us the non depricated solution for setSigningKey() and parseClaimsJws()?

    • @BoualiAli
      @BoualiAli  Місяць тому

      Yes, check the playlist and the videos and order by publish date

  • @daniellaerachannel
    @daniellaerachannel Рік тому

    MapStruct tutorial on of these day showing us how to use Entity & Dao for more consistency data modeling? thanks a lot

    • @BoualiAli
      @BoualiAli  Рік тому

      Can you explain better please? I didn’t fully get it