Java Spring MVC 13. Day (Onüçüncü Gün)

Java Spring MVC 13. Day (Onüçüncü Gün)

@Column (nullable=false) → database null veri kabul etmez, garantidir

@NotNull → hibernate garanti fakat normalde uygulama levelinde kontrol ediyor

@NotEmpty → not null && not empty

  • uygulamada şifre kısmına herhangi bi kod yazmayalım, bi configuration dosyamız olsun ve ordan çeksin şifreleri vs. Böylece githuba kod attığımız zaman bu kısımları göstermemiş oluruz.

  • Controller seviyesinde çalışanlar : @NotNull, @NotEmpty

  • Database seviyesinde çalışanlar: @Column

  • @Column(optional=false) → zorunluluk, mutlaka olmalı.

BCRYPT

123 + randomSaltValue() → C8FTRE90 : hash

  • parolamız için random bi saltvalue üretiyor ve bununla şifreliyor. Aynı parola aynı saltvalue ile hep aynı hash veriyor.

  • hash ve salt değerini bilsek bile parola geri döndürelemez. Bu yüzden güçlüdür.

  • login → üretilen salt değerini hash value içinde tutuyor. Kullanıcının hash bilgisi çekiliyor, saltvalue burdan alınıyor, girilen parola ve saltvalue ile yeniden hash oluşturuluyor, eğer aynıysa giriş yapılıyor.

@Bean → dependency pool içine atar bu annotation

SecurityConfig

→ burda bi passwordencoder oluşturup dependency poola atıyoruz

→ kullanıcıları enrden alacağımızı belirliyoruz: database etc.

→ configure function : antmatchers ile path controlü yapıyoruz.

WebAppInitializer → roota tanımlıyor springi ve ordan yönetiyor.