Spring Security & JWT & Spring Data Uygulaması - Ders #5

Поделиться
HTML-код
  • Опубликовано: 10 янв 2023
  • Spring Security JWT Kullanım Örneği. Spring Security JWT Nedir?
    github.com/BrkSe/spring-secur... adresinde çalışır ve güncel halini bulabilirsiniz.
    Blogum: blog.burakkutbay.com
    Github: github.com/BrkSe
    Twitter: / hbrkktby
    00:10 Abone olmayı unutmayın!
    00:46 JWT Nedir?
    06:09 Spring Security 6 & Spring Boot 3.0 Projesi Oluşturma
    07:50 io.jsonwebtoken Maven Bağımlılığı
    08:33 UserDetails Entity Oluşturma
    15:50 Spring Data User JpaRepository
    17:33 JwtAuthenticationFilter Oluşturma
    18:35 OncePerrequestfilter Oluşturma
    24:02 JwtService Oluşturma
    26:32 Jwts parser Oluşturma
    27:08 Jwt Secret Key Oluşturma
    32:37 UserDetailsService Kullanımı
    37:05 Jwt token Kontrol
    37:39 UsernamePasswordAuthenticationToken
    39:46 SecurityContextHolder
    41:42 Application Config Oluşturma
    41:56 UserDetailService username bulmak
    42:32 Authentication Provider Bean
    45:45 Authentication Manager Bean
    47:13 SecurityConfig SecurityFilterChain Oluşturma
    53:55 RestController Oluşturma
    56:28 Service Oluşturma
    59:26 Jwt token Generate Etmek
    1:04:17 Auth Controller Oluşturma
    1:05:46 Auth Service AuthenticationManager
    1:09:35 Dashboard Controller Oluşturma
    1:11:15 Spring Security Jwt Projesi Test
    1:12:43 Abone olmayı unutmayın!

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

  • @brkktby
    @brkktby  Год назад +2

    Merhabalar, değerli yorumlarınız için teşekkürler. Farklı günlerde çektiğim videoyu editlerken düzeltme yaptığım yerleri maalesef kaybetmişim. github.com/BrkSe/spring-security-jwt-example adresinde çalışır ve güncel halini bulabilirsiniz. Küçük bir "if" hatası ve encoder hatası bulunmakta. Açıklamadan da projeye erişebilirsiniz. Teşekkürler!

  • @rasitesdemir908
    @rasitesdemir908 Год назад +3

    Teşekkür ederiz hocam. Spring ile daha fazla video gelirse çok mutlu oluruz :)

    • @brkktby
      @brkktby  Год назад +1

      Elimden geleni yapacağım. Yorumun için teşekkür ederim :)

  • @erayogeter1780
    @erayogeter1780 Год назад +1

    Teşekkürler Burak hocam. Devamını bekliyoruuz :)

    • @brkktby
      @brkktby  Год назад

      Teşekkürler. Elimden geleni yapacağım. :)

  • @ahmetarslan1275
    @ahmetarslan1275 Год назад +2

    Teşekkürler

  • @recepseker4005
    @recepseker4005 Год назад +1

    Faydalı bir video olmuş. Teşekkürler 🙏

    • @brkktby
      @brkktby  Год назад

      Teşekkürler :)

  • @muhammedildeniz8510
    @muhammedildeniz8510 Год назад +1

    beklediğim bir eğitimdi, teşekkür ederim.

    • @brkktby
      @brkktby  Год назад

      Yorumunuz için teşekkürler. Faydalı olması dileğiyle.

  • @ugurkarimov
    @ugurkarimov Год назад +1

    Çok teşekkür ederim hocam❤

    • @brkktby
      @brkktby  Год назад +1

      Yorumunuz için ben teşekkür ederim. :) Umarım faydalı olur.

  • @yusufyldrm4746
    @yusufyldrm4746 Год назад +1

    Emekleriniz için teşekkür ederim.

    • @brkktby
      @brkktby  Год назад

      Değer verip yorum yaptığınız için ben teşekkür ederim. Faydalı olabilmişimdir umarım.

  • @RamazanDemir-uw7xw
    @RamazanDemir-uw7xw 7 месяцев назад

    oauth2 ile giriş içinde video gelirse çok iyi olur

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

    hocam selamlar ; tokenControl da , tekrar username kontrolune gerek var mı ? veritabanından çektiğimiz username zaten tokendan aldığımız username değil mi ?

  • @emresdocumentary
    @emresdocumentary Год назад

    Hocam merhabalar. Tecrübesiz olduğumdan saçma bir soru olabilir belki ama UserDetails ve UserDetailsService 'leri farklı classlar oluşturup metodlarını override etmekte doğru bir çözüm müdür?

  • @metineken2070
    @metineken2070 Год назад +1

    hocam cok tesekkur ediyorum. guzel bir video olmus. Bir sorum ol;acak size , Suan yapmaya calistigim projede hem user hemde member entityleri var. user için Jwt ile register, login ve jwt uretmeyi yaptim. ama memberlar için ayrica yapamadim. member tablosunu da userdetails e implement ettiğim zaman, stackoverflow hatasi aliyorum. kisaca; 2 ayri user tablom var ve jwt ile authentication yapmak istiyorum. nasil yapabilirim. cevabiniz icin simdiden tesekkurler.

    • @brkktby
      @brkktby  Год назад +1

      Merhaba kısa bir cevap vermem gerekirse yazılımızda bir User nesnesi olmalı ve User'ın ROL'üne göre bu ayrımı yapmanız daha iyi olur diye düşünüyorum ancak bunu yapmak zorundaysanız "Multiple Sources for User Details" keywordünü aratarak farklı çözümlere ulaşabilirsiniz.

  • @gokhandegerli1617
    @gokhandegerli1617 Год назад

    Bu guzel video icin tesekkur ederim, kaynak kodu github'a yuklediniz mi? Bu projenin kodlarini maalesef ben goremedim.

    • @brkktby
      @brkktby  Год назад

      github.com/BrkSe/spring-security-jwt-example adresinde çalışır ve güncel halini bulabilirsiniz.

  • @shamilkhalid4886
    @shamilkhalid4886 Год назад +1

    tesekkur ederiz devami olucak mi acaba?

  • @emrhnksck
    @emrhnksck Год назад +1

    Kodları githubda paylaşbilir misiniz?

    • @brkktby
      @brkktby  Год назад

      github.com/BrkSe/spring-security-jwt-example adresinde çalışır ve güncel halini bulabilirsiniz.

  • @kaari_
    @kaari_ 10 месяцев назад +1

    3.1 ile csrf deprecate edilmiş bununla ilgili video yapmayı düşünür müsünüz?

    • @brkktby
      @brkktby  9 месяцев назад

      5. videoyu izler misiniz?

    • @kaari_
      @kaari_ 9 месяцев назад +1

      ​@@brkktby 3.1 ile ilgili gelismeler burada yer almiyor.

    • @brkktby
      @brkktby  9 месяцев назад +1

      @@kaari_ Cok tesekkur ederim. Uzun zaman oldugu icin yanlis hatirlamisin kusura bakmayin. Listeme aldim. En yakin zamanda bir video cekecegim.

    • @kaari_
      @kaari_ 9 месяцев назад +1

      @@brkktby ilginiz için tesekkur ederim

  • @huseynhsnov3617
    @huseynhsnov3617 Год назад +1

    Hangi temayı kullanıyorsun?

    • @brkktby
      @brkktby  Год назад

      Bir tema kullanmıyorum.

  • @islacar1121
    @islacar1121 Год назад +2

    merhaba, öncelikle içerik için çok teşekkürler, gerçekten çok faydalı ve çok açıklayıcı olmuş. Ama 20:25. saniyede - header.startsWith("Bearer ") - demişsiniz. Bu başlamıyorsa olmayacak mı acaba, yani - !header.startsWith("Bearer ") - şeklinde?
    Birde 57:45. saniyede save işlemi yaparken passwordu .password(passwordEncoder.encode(userDto.getPassword())) şeklinde yapmamız gerekmiyor muydu? Diğer türlü
    Encoded password does not look like BCrypt hatası veriyor.

    • @brkktby
      @brkktby  Год назад

      Merhabalar, değerli yorumlarınız için teşekkürler. Farklı günlerde çektiğim videoyu editlerken düzeltme yaptığım yerleri maalesef kaybetmişim. github.com/BrkSe/spring-security-jwt-example adresinde çalışır ve güncel halini bulabilirsiniz. Küçük bir "if" hatası ve encoder hatası bulunmakta. Açıklamadan da projeye erişebilirsiniz. Teşekkürler!

  • @bahadryldz4690
    @bahadryldz4690 Год назад

    "Handler dispatch failed: java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter" Bu hatayı alan var mı?

    • @brkktby
      @brkktby  Год назад

      github.com/BrkSe/spring-security-jwt-example adresinde çalışır ve güncel halini bulabilirsiniz.

  • @acetintas
    @acetintas Год назад +1

    Hocam öncelikle teşekkürler.
    Ancak bazı eleştirilerim olacak dikkate alırsanız sevinirim.
    - Normalde eğitim videolarını 1.25, 1.50 gibi hızlarla izliyorum. İlk defa bir eğitim biraz hızlı geldi bana. Biraz daha yavaş ve "açıklayıcı" olabilir mi?
    Belli ki tecrübelisiniz size kolay geliyor olmalı. Mesela bu konuyu ben ilk defa gördüm ve henüz oturtamadım.
    Bir yandan uygulamalı olarak kodu yazıp bir yandan takip etmek istedim ama mümkün olmadı. Öncelikle hızlı hızlı kodu tamamladım. Şimdi videoyu tekrar izleyip mantığını oturtmaya çalışacağım.
    - Bazı yerlerde videoyu keserek editlemişsiniz. Buralarda mesela dökümanlara vs bakıyorsanız onları da ekleseniz daha açıklayıcı olmaz mı? Bazı kısımları hiç anlamadım gerçekten.
    - Buradaki kodları postgre kullanarak kendi sistemimde yapılandırmaya çalıştım. Ancak hata alıyorum. Mümkünse buradaki soruna bakabilir misiniz lütfen?
    github.com/acetas/java2022/tree/master/springSecurityJWT
    - İzlediğim diğer videolarınızda da h2 db kullanmıştınız. Bunun yerine postgre vb gibi gerçek bir db kullanmayı tercih etmeyi düşünür müsünüz?
    Yanıtlarsanız sevinirim.
    Paylaşım için tekrar teşekkürler.

    • @brkktby
      @brkktby  Год назад

      Merhaba. Geri bildirimin için çok teşekkürler. Açıklayıcı olduğumu düşünmüştüm bunun için özür dilerim. En son videomu 7 ay önce çektiğim için bu videoyu çekmek benim için zorlayıcı oldu bunun etkisi olabilir. Bu videoyu 4 günde çekebildim. Bazı yerlerinin kesik olması açmam gereken telefonlar ve mail olmasının nedeni idi. Sanırım bunun etkisini yansıttım ve videonun “bitmesi” için kendimi zorladığım için hızlı geçtim sanırım. Kendimi bu konuda geliştirmek istiyorum. Eleştirilerin için teşekkürler. Şu an mobil durumdayım. PC başına geçince yardımcı olmaya çalışacağım. Teşekkür ederim. 😊

    • @acetintas
      @acetintas Год назад

      @@brkktby teşekkürler dikkate aldığın ve cevapladığın için. Bu konuyu ilk defa görmüş biri olarak yorumumu doğru iletebildiğime sevindim.

    • @eminaksoy2841
      @eminaksoy2841 Год назад

      @@acetintas 5432 portunda jwt adında database oluşturdun mu? ddl auto yu update yerine create-drop ile uygulamayı kaldırmayı deneyebilirsin.

    • @acetintas
      @acetintas Год назад

      @@eminaksoy2841 evet oluşturdum. Bu kalıbı hep kullanıyorum projelerde