Bu projede amaç; ASP.NET MVC'de 'Role Based Authorization' ile ilgili örnek bir demo sunmaktır. Bunun dışında aşağıda belirtilen kütüphanelerle ilgili kullanım örnekleri de mevcuttur.
- Entity Framework 6.4.0
- Postsharp 6.4.7
- FluentValidation 8.6.1
- Ninject 3.3.4
- Bogus 29.0.1
- Datatables 1.20.20
Projede web sayfası görüntüleme ve veritabanı işlemleri için yetki kontrolü yapılmaktadır.
Aynı zamanda veritabanı işlemlerinde entity nesnesinin tamamı yerine sadece belirli alanlar/sütunlar(property) için yetki kontrolü
yapılabilmektedir.
Örneğin projede bulunan entity sınıflarından
Contact
sınıfının bir veritabanı nesnesi için güncelleme yapılmak istendiğinde;
Date sütununu(property) sadece Admin rolünde, Phone sütununu ise Admin veya Manager rolündeki kişiler değiştirebilir.
İşlem | Yetkili Roller |
---|---|
Arama güncelleme | Tüm roller |
İletişim bilgisi veya arama ekleme | Tüm roller |
İletişim bilgisi veya arama silme | Admin, Manager |
İletişim bilgisi tarih güncelleme | Admin |
İletişim bilgisi telefon güncelleme | Admin, Manager |
İletişim bilgisi tarih, telefon harici güncellemeler | Tüm roller |
Arama kaydını ekleyen kullanıcının profilini görüntüleme | Admin |
Projeyi buradan test edebilirsiniz. Kullanıcı adı ve şifreler aşağıda belirtilmiştir.
Rol | Kullanıcı Adı | Şifre |
---|---|---|
Admin | admin | 1234 |
Manager | manager | 1234 |
Staff | staff | 1234 |
Not: Projenin Visual Studio'da çalıştırılabilmesi için Visual Studio Postsharp 6.4.7 eklentisinin kurulması gerekmektedir.