Ben kendimi sisteme register edip admin rolu ekledim.Aşagıdaki 1.resimde Roller tablosu ve 2.resimde Roller ile User tablosu many-to-many ilişkisi oldugu için bir daha tablo oluşturdum onada UserOperationClaims dedim oradanda admin rolune sahip oldugum gözküyor.
1.Resim :
2.Resim :
Sisteme Giriş Yapıp Token Üretimi Gerçekleştirecem:
Admin Role token içerisinde yer almaktadır.
Sonra swagger yer alan Authorize butonu tıklayıp Bearer yazıp sonra bir boşluk bırakıp token basıp sisteme giriş yapıyoruz.
Ondan sonra sistemde listeleme,silme,ekleme,güncelleme yapabiliriz. :)
1.Authorization Klasörunde :AuthorizationBehavior class'ında sisteme rollerimiz ve authentication olup olmadıgımızı kontrol ettigimiz sınıf'tır.
2.DataAccess veri tabanıma erişim klasörüdür burada migrationslarımız,entitylerimiz configuration işlemleri yer alıyor ayrıca repository lerimizde burada yer alıyor.
3.Entities klasörunde ise veritabanımızdaki tablolara karşılık gelen varlıklardır.
4.Extensions claims(rollerimizi) ClaimExtensions class'da jwt token içerisine emial,adını,id,rolleri içersine basmamızı sağlayan class.Ayrıca ClaimsPrincipalExtensions ise rolleri token çekme işlemi ayrıca kullanıcının id token içerisnde alıyoruz.
5.Helpers klasörunde ise kullanıcıların şifrelerini hashleme(HMACSHA512) işlemleri yer alıyor.
6.Security klasörunde ise jwt ve refreshtoken üretimi yapılan klasör.
7.Services klasörunde add,delete,register,login,getall,update işlemleri için yazılan ayrıca kontorllerin(null Check,password verification vs.) yapıldıgı klasördür.